BirdNet-Pi MCP Server
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Used as the web framework for implementing the MCP server's API endpoints for bird detection data.
Used for version control and distribution of the MCP server codebase.
Hosts the repository for the MCP server code, enabling collaboration and distribution.
BirdNet-Pi MCP Server
A Python-based Model Context Protocol (MCP) server for BirdNet-Pi integration.
Features
- Bird detection data retrieval with date and species filtering
- Detection statistics and analysis
- Audio recording access
- Daily activity patterns
- Report generation
Requirements
- Python 3.8+
- FastAPI
- Uvicorn
- Other dependencies listed in
requirements.txt
Installation
- Clone the repository:
- Create a virtual environment and activate it:
- Install dependencies:
- Set up your data directories:
Configuration
The server can be configured using environment variables:
BIRDNET_DETECTIONS_FILE
: Path to detections JSON file (default: 'data/detections.json')BIRDNET_AUDIO_DIR
: Path to audio files directory (default: 'data/audio')BIRDNET_REPORT_DIR
: Path to reports directory (default: 'data/reports')
Running the Server
Start the server:
The server will run on http://localhost:8000
.
API Endpoints
/functions
- List available functions (GET)/invoke
- Invoke a function (POST)
Available Functions
getBirdDetections
- Get bird detections filtered by date range and species
- Parameters: startDate, endDate, species (optional)
getDetectionStats
- Get detection statistics for a time period
- Parameters: period ('day', 'week', 'month', 'all'), minConfidence (optional)
getAudioRecording
- Get audio recording for a detection
- Parameters: filename, format ('base64' or 'buffer')
getDailyActivity
- Get bird activity patterns for a specific day
- Parameters: date, species (optional)
generateDetectionReport
- Generate a report of detections
- Parameters: startDate, endDate, format ('html' or 'json')
Directory Structure
This server cannot be installed
A Python-based server that enables accessing and analyzing bird detection data through the Model Context Protocol, offering features like filtering detections, accessing audio recordings, and generating reports.