Rubl
FreeNot checkedeBird API MCP server — Model Context Protocol server for eBird hotspots, regions, and rare bird data
About
eBird API MCP server — Model Context Protocol server for eBird hotspots, regions, and rare bird data
README
An MCP (Model Context Protocol) server providing access to the eBird API for querying birding hotspots, region hierarchies, and rare bird sightings.
Features
Rubl provides four powerful tools for accessing eBird data:
get_region_info- Look up eBird region metadata (name, type, bounds, parent region)get_subregions- List subregions (states, counties, etc.) under an eBird regionfetch_rare- Fetch recently reported notable/rare bird sightings for a regionget_nearby_hotspots- Find eBird birding hotspots by coordinates with optional radius and date filters
Installation
MCPB Bundle (Recommended)
- Download the latest
.mcpbbundle from the releases page - Open with Claude for macOS/Windows for single-click installation
- Configure your eBird API key when prompted
Get an eBird API Key
Get a free eBird API key at: https://ebird.org/api/keygen
Manual Installation
Alternatively, add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"rubl": {
"command": "/path/to/rubl/server/rubl",
"env": {
"EBIRD_API_KEY": "your-api-key-here"
}
}
}
}
Building from Source
Prerequisites
- Rust 1.70+ (edition 2024)
- Cargo
Build
cargo build --release
The binary will be available at target/release/rubl.
Build MCPB Bundle
./build-mcpb.sh
This creates rubl.mcpb ready for distribution.
Usage
Once installed in Claude Desktop, you can use prompts like:
- "What rare birds have been seen in North Carolina recently?"
- "Find birding hotspots near coordinates 35.7796, -78.6382"
- "Show me the counties in California"
- "What are the geographic bounds of the US-NC region?"
Tool Details
get_region_info
Get metadata for an eBird region code (e.g., US-NC).
Parameters:
region_code(string) - eBird region code
Returns: Region name, type, bounds, parent region, and coordinates
get_subregions
List all subregions within a parent region.
Parameters:
region_code(string) - eBird region code
Returns: Array of subregions with codes and names
fetch_rare
Get recent notable/rare bird sightings for a region.
Parameters:
region_code(string) - eBird region code
Returns: Array of rare bird observations with species, location, date, and count
get_nearby_hotspots
Find birding hotspots near a location.
Parameters:
latitude(number) - Latitude coordinatelongitude(number) - Longitude coordinateradius(number, optional) - Search radius in kilometers (0-500)back(number, optional) - Only hotspots visited in last N days (1-30)
Returns: Array of hotspots with names, coordinates, and recent activity statistics
eBird Region Codes
eBird uses hierarchical region codes:
- Country:
US,CA,MX - State/Province:
US-NC,CA-ON - County:
US-NC-067(Wake County, NC)
Use get_region_info to validate codes and get_subregions to explore the hierarchy.
Development
Project Structure
rubl/
├── src/
│ ├── main.rs # Entry point
│ ├── server.rs # MCP server implementation
│ ├── ebird_api.rs # eBird API client
│ └── tools/ # Tool implementations
│ ├── hotspot.rs
│ ├── rare_birds.rs
│ └── region.rs
├── manifest.json # MCPB manifest
├── server/ # Bundle directory
│ └── rubl # Compiled binary
└── Cargo.toml
Testing
# Run with test API key
EBIRD_API_KEY=your-key cargo run
The server communicates via stdio using the MCP protocol.
License
MIT License - see LICENSE file for details.
Privacy & Security
What Rubl Accesses:
- Makes HTTP requests to the public eBird API (api.ebird.org) using your API key
- Your eBird API key is stored locally in Claude Desktop's configuration
What Rubl Does NOT Access:
- Your filesystem or local files
- Any system commands or processes
- Any data outside of eBird's public API
Read-Only Tools: All four tools (get_region_info, get_subregions, fetch_rare, get_nearby_hotspots) are read-only and only query publicly available eBird data.
Installation Warning: When installing the MCPB bundle, Claude Desktop may show a generic security warning. This is standard for all MCP bundles. Rubl is open source - you can review the code at https://github.com/drewbxyz/rubl to verify what it does.
Links
- eBird API Documentation: https://documenter.getpostman.com/view/664302/S1ENwy59
- MCP Protocol: https://modelcontextprotocol.io
- MCPB Specification: https://github.com/anthropics/mcpb
Support
Report issues at: https://github.com/drewbxyz/rubl/issues
Installing Rubl
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/drewbxyz/rublFAQ
Is Rubl MCP free?
Yes, Rubl MCP is free — one-click install via Unyly at no cost.
Does Rubl need an API key?
No, Rubl runs without API keys or environment variables.
Is Rubl hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Rubl in Claude Desktop, Claude Code or Cursor?
Open Rubl on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Rubl with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
