P

mcp-local-server

...
Created 11/27/2024byDMontgomery40

Language:

Python

Stars:

3

Forks:

1

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

  1. Clone the repository:
git clone https://github.com/YourUsername/mcp-server.git
cd mcp-server
  1. Create a virtual environment and activate it:
python -m venv venv
source venv/bin/activate  # On Windows use: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up your data directories:
mkdir -p data/audio data/reports

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:

python server.py

The server will run on http://localhost:8000.

API Endpoints

  • /functions - List available functions (GET)
  • /invoke - Invoke a function (POST)

Available Functions

  1. getBirdDetections

    • Get bird detections filtered by date range and species
    • Parameters: startDate, endDate, species (optional)
  2. getDetectionStats

    • Get detection statistics for a time period
    • Parameters: period ('day', 'week', 'month', 'all'), minConfidence (optional)
  3. getAudioRecording

    • Get audio recording for a detection
    • Parameters: filename, format ('base64' or 'buffer')
  4. getDailyActivity

    • Get bird activity patterns for a specific day
    • Parameters: date, species (optional)
  5. generateDetectionReport

    • Generate a report of detections

                - Parameters: startDate, endDate, format ('html' or 'json')
      

Directory Structure

mcp-server/
├── birdnet/
│   ├── __init__.py
│   ├── config.py
│   ├── functions.py
│   └── utils.py
├── data/
│   ├── audio/
│   └── reports/
├── server.py
├── requirements.txt
└── README.md
Last updated: 12/15/2024

Publisher info

DMontgomery40's avatar

David Montgomery

Cybersecurity researcher and open source advocate and developer. Passionately supporting open source solutions to the cross section of AI and Security.

SecurityLens, LLC
Denver, CO
8
followers
15
following
34
repos

More MCP servers built with Python

composer-trade-mcp

Create, backtest, and execute trades directly in one chat box. The Composer MCP Server gives LLMs the power to backtest investment ideas and execute automated trading strategies. Trade across stocks, ETFs, and crypto directly in Claude.

By https://github.com/ronnyli
slidespeak-mcp

An MCP to generate presentations with AI. Create and edit PowerPoint presentations with AI.

By https://github.com/SlideSpeak
PaddleOCR

The PaddleOCR MCP server brings enterprise-grade OCR and document parsing capabilities to AI applications. Built on PaddleOCR — a proven solution with 50,000+ GitHub stars, deeply integrated by leading projects like MinerU, RAGFlow, and OmniParser— with targeted optimizations based on the MCP concept.

By PaddlePaddle