Birding Planner
MCP server for birding trip planning with migration forecasts, hotspot analysis, and daily email briefings, integrating eBird, BirdCast, NWS, and iNaturalist data.
README
Birding Planner
MCP server + daily email briefing for Cincinnati-area migration monitoring.
MCP Server Tools
All 10 tools for interactive birding planning in Claude Desktop:
| Tool | What it does |
|---|---|
plan_birding_trip |
Ranks nearby hotspots by recent species count + migration activity |
migration_forecast |
BirdCast radar data + NWS weather interpretation |
hotspot_details |
Recent species and notable sightings at a single hotspot |
compare_hotspots |
Side-by-side species comparison with iNaturalist verification |
species_finder |
Where a species has been seen recently near a location |
best_day_to_bird |
Recommends the best day in a date range using migration + weather |
birding_weather |
NWS overnight/morning forecast interpreted for migration prediction |
verify_sighting |
Cross-references eBird reports against iNaturalist photo-verified obs |
birding_window |
Sunrise, civil twilight, and recommended arrival time |
species_frequency |
Historical peak week and current phenology status via BirdCast |
plan_vacation_birding |
Discovery report for a travel destination: target species you won't find in Cincinnati, hotspots ranked by active birder community, and birding window. Uses historical bar chart data — works weeks or months ahead. |
Setup
1. API Keys
- eBird API key (required): https://ebird.org/api/keygen — free
- BirdCast API key (required): contact BirdCast at https://birdcast.info for API access
- Resend API key (for email): https://resend.com — free tier, 3,000 emails/month
2. Environment
Copy .env.example to .env and fill in your keys:
cp .env.example .env
3. Install dependencies
npm install
4. Claude Desktop Integration
Add to your Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"ebird-birding-planner": {
"command": "node",
"args": ["/absolute/path/to/ebird-birding-planner/src/index.js"],
"env": {
"EBIRD_API_KEY": "your_key_here",
"BIRDCAST_API_KEY": "your_key_here",
"EBIRD_LIFE_LIST_CSV": "/path/to/MyEBirdData.csv"
}
}
}
}
Daily Briefing (Anthropic Routine)
The briefing runs as a cloud-hosted Anthropic Routine — no machine needs to be on.
How it works
- Agent runs at 4:00 AM ET daily during migration season
scripts/triage.jsfetches BirdCast + NWS data and outputs a JSON recommendation- Agent decides: full briefing / quiet-period note / silent skip
scripts/briefing.jsbuilds HTML email and sends via Resend
Test locally
# Run triage check (outputs JSON recommendation)
node scripts/triage.js
# Generate briefing HTML (saves to ./briefing-output/ if no Resend key)
node scripts/briefing.js
# Generate quiet-period email
node scripts/briefing.js --quiet
Set up the Routine
See routine-prompt.md for the exact prompt to paste into claude.ai when creating the Routine. Required secrets to configure:
EBIRD_API_KEYBIRDCAST_API_KEYRESEND_API_KEYBRIEFING_EMAIL_TOBRIEFING_REGION(default: US-OH-061)BRIEFING_LAT/BRIEFING_LNG(default: 39.1 / -84.5)
Architecture
src/
index.js — MCP server (10 tools)
ebird-client.js — eBird API v2 wrapper
birdcast-client.js — BirdCast radar data
nws-client.js — NWS Weather API
inaturalist-client.js — iNaturalist photo verification
utils.js — Cache, location resolution, date parsing
scripts/
triage.js — Fast migration check, outputs JSON
briefing.js — HTML email builder + Resend sender
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.