loading…
Search for a command to run...
loading…
MCP server for birding trip planning with migration forecasts, hotspot analysis, and daily email briefings, integrating eBird, BirdCast, NWS, and iNaturalist da
MCP server for birding trip planning with migration forecasts, hotspot analysis, and daily email briefings, integrating eBird, BirdCast, NWS, and iNaturalist data.
MCP server + daily email briefing for Cincinnati-area migration monitoring.
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. |
Copy .env.example to .env and fill in your keys:
cp .env.example .env
npm install
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"
}
}
}
}
The briefing runs as a cloud-hosted Anthropic Routine — no machine needs to be on.
scripts/triage.js fetches BirdCast + NWS data and outputs a JSON recommendationscripts/briefing.js builds HTML email and sends via Resend# 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
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)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
Run in your terminal:
claude mcp add birding-planner -- npx