# zax0rz/birdnet-go-mcp [Health: Active]

**Category:** 🌳 Environment & Nature  
**Repository:** https://github.com/zax0rz/birdnet-go-mcp  
**GitHub Stars:** 4  
**npm Downloads (last month):** 63  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/zax0rz-birdnet-go-mcp

## Description
Read-only access to BirdNET-Go bioacoustic observatories: query recent detections, stream mic telemetry, resolve LAN audio recordings and inspect sightings.

## Tools
Capabilities this server exposes over MCP:

- **get_recent_detections** — Fetches the most recent bird acoustic detections with confidence scores, timestamps, and audio clip URLs.
- **search_detections** — Historical search through detection records stored in SQLite.
- **get_detection_detail** — Inspects a single detection: weather conditions at detection time, confidence breakdown, and audio clip info.
- **get_today_summary** — Aggregate summary of today's observatory run: total count, species diversity, and top visitors.
- **get_new_arrivals** — Identifies species heard for the first time ever or new this season/year (vital for tracking migration).
- **get_station_health** — Real-time diagnostic telemetry: RTSP mic stream state, ingest bit rate, dropped packets, and host uptime.
- **get_audio_clip** — Resolves the accessible LAN URL on Caddy/Nginx (:8091) for Discord/web embedding.
- **get_audio_clip_base64** — Downloads and base64-encodes the raw `.wav` audio clip for multimodal models with direct audio input capabilities.<br>⚠️ *Token budget warning: A 15-second WAV clip is ~1.4–1.9MB base64 (~350,000–500,000 tokens into Gemini/Claude multimodal models). Use selectively for verification; never put this…

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "birdnet-go-mcp": {
    "command": "npx",
    "args": ["-y","birdnet-go-mcp"],
    "env": {
      "BIRDNET_BASE_URL": "",
      "CLIPS_BASE_URL": ""
    }
  }
}
```

**Requires environment variables:** `BIRDNET_BASE_URL`, `CLIPS_BASE_URL` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What zax0rz/birdnet-go-mcp MCP server does

The zax0rz/birdnet-go-mcp MCP server gives MCP-compatible agents read-only access to a BirdNET-Go v2 bioacoustic observatory. It communicates with BirdNET-Go's REST API over a LAN or localhost connection rather than locking the underlying database or relying on Python packages. The server can inspect detection records, station telemetry, summaries, migration-related arrivals, and recordings exposed by a LAN web server.

Its scope is observational: the available MCP tools do not modify or delete BirdNET-Go data. Tool metadata marks operations as read-only and idempotent, which supports concurrent inspection calls.

## How it works

The process can run as a local stdio MCP server or as an SSE HTTP server. Local applications start the `serve` command and exchange MCP messages over stdin and stdout. For a remote or headless agent, `birdnet-mcp serve --sse --port 8092` exposes an SSE endpoint at `/sse`.

BirdNET-Go supplies detection and station information through its v2 REST API. Audio clip tools use the clip name and detection date to resolve recordings through a Caddy or Nginx endpoint. The base64 variant downloads a WAV file and encodes it for models that accept audio directly. A 15-second WAV may produce approximately 1.4–1.9 MB of base64 data, so large audio responses can consume substantial context.

## Setup and configuration

The zax0rz/birdnet-go-mcp MCP server can be launched without installing Go by using `npx -y birdnet-go-mcp`. The project also provides a Go installation path and precompiled static binaries for macOS, Linux, Raspberry Pi ARM variants, and Windows. The configured BirdNET-Go host is supplied with `BIRDNET_BASE_URL`, such as `http://192.0.2.10:8080`; `CLIPS_BASE_URL` identifies the LAN endpoint used for recordings, such as port 8091.

Claude Desktop and Cursor can start the server with an MCP configuration that invokes `npx` or a downloaded binary. Claude Code can add it with `claude mcp add`. The README also documents configurations for Google Antigravity and OpenClaw. For a quick terminal check, run `birdnet-mcp status`; `recent` displays recent sightings and supports limit and confidence filters.

## Tools and capabilities

The zax0rz/birdnet-go-mcp MCP server provides these tools:

- `get_recent_detections`: returns recent detections with confidence, timestamps, species information, and clip URLs; supports limits, minimum confidence, and species codes.
- `search_detections`: searches historical SQLite-backed records by date, species, confidence, and limit.
- `get_detection_detail`: retrieves weather, confidence details, and clip information for one detection ID.
- `get_today_summary`: reports today's total detections, species diversity, and top visitors.
- `get_new_arrivals`: finds species detected for the first time or newly recorded in the current season or year.
- `get_station_health`: reports RTSP stream state, ingest throughput, dropped packets, and host uptime.
- `get_audio_clip`: resolves a LAN-accessible recording URL.
- `get_audio_clip_base64`: downloads and encodes a WAV recording for multimodal input.

The implementation also caps tool output with an 8 KB envelope to limit oversized detection responses.

_Full upstream README: https://allmcps.com/mcp/zax0rz-birdnet-go-mcp/readme_

