article
README
🚀 鸟网Pi MCP服务器
鸟网Pi MCP服务器是一个基于Python的模型上下文协议(MCP)服务器,专为鸟网Pi集成而设计。它能助力用户过滤检索鸟类检测数据、开展检测统计分析、访问音频录音等,为鸟类研究和监测提供有力支持。
🚀 快速开始
本服务器是基于Python的模型上下文协议(MCP)服务器,用于鸟网Pi的集成。以下是使用前的准备步骤。
✨ 主要特性
- 数据过滤检索:可根据日期和物种过滤检索鸟类检测数据。
- 检测统计分析:提供检测统计和分析功能。
- 音频录音访问:支持对检测的音频录音进行访问。
- 日活动模式分析:能获取特定日期的鸟类活动模式。
- 报告生成:可生成检测报告。
📦 安装指南
克隆仓库
git clone https://github.com/YourUsername/mcp-server.git
cd mcp-server
创建并激活虚拟环境
python -m venv venv
source venv/bin/activate # 在Windows上使用:venv\Scripts\activate
安装依赖项
pip install -r requirements.txt
设置数据目录
mkdir -p data/audio data/reports
📚 详细文档
配置
服务器可以通过环境变量进行配置:
BIRDNET_DETECTIONS_FILE:检测JSON文件的路径(默认值:'data/detections.json')BIRDNET_AUDIO_DIR:音频文件目录的路径(默认值:'data/audio')BIRDNET_REPORT_DIR:报告目录的路径(默认值:'data/reports')
运行服务器
启动服务器:
python server.py
服务器将在http://localhost:8000上运行。
API端点
/functions- 列出可用函数(GET)/invoke- 调用一个函数(POST)
可用功能
getBirdDetections- 功能:获取根据日期范围和物种过滤的鸟类检测数据。
- 参数:
startDate,endDate,species(可选)
getDetectionStats- 功能:获取时间范围内检测统计信息。
- 参数:
period('day','week','month','all'),minConfidence(可选)
getAudioRecording- 功能:获取检测的音频录音。
- 参数:
filename,format('base64'或'buffer')
getDailyActivity- 功能:获取特定日期的鸟类活动模式。
- 参数:
date,species(可选)
generateDetectionReport- 功能:生成检测报告。
- 参数:
startDate,endDate,format('html'或'json')
🔧 技术细节
目录结构
mcp-server/
├── birdnet/
│ ├── __init__.py
│ ├── config.py
│ ├── functions.py
│ └── utils.py
├── data/
│ ├── audio/
│ └── reports/
├── server.py
├── requirements.txt
└── README.md
Scan to join WeChat group