mcbirdcage
MCP server for controlling Winegard satellite dishes through conversational tools. Built on FastMCP, exposes 36 tools for dish positioning, signal analysis, firmware inspection, and satellite pass planning.
Install
# Add to Claude Code
claude mcp add mcbirdcage -- uvx mcbirdcage
# Or run standalone
uvx mcbirdcage
Demo Mode
No dish required. Set BIRDCAGE_DEMO=1 to get simulated responses for all tools:
BIRDCAGE_DEMO=1 uvx mcbirdcage
Tools
36 tools across six groups:
| Group | Count | Examples |
|---|---|---|
| Connection | 3 | connect, disconnect, status |
| Movement | 9 | get_position, move_to, home_motor, stow |
| Signal | 8 | get_rssi, enable_lna, az_sweep, get_lock_status |
| System | 11 | nvs_dump, get_firmware_id, set_pid_gains, get_a3981_diag |
| Satellite | 4 | search_satellites, get_passes, get_visible_targets |
| Console | 1 | send_raw_command (direct firmware access) |
Plus 5 resources (hardware specs, NVS reference, firmware docs) and 3 prompts.
Environment Variables
| Variable | Default | Description |
|---|---|---|
BIRDCAGE_DEMO |
0 |
Enable demo mode (no hardware) |
BIRDCAGE_PORT |
/dev/ttyUSB0 |
Serial port path |
BIRDCAGE_FIRMWARE |
hal205 |
Firmware variant (hal000, hal205, g2) |
BIRDCAGE_CRAFT_URL |
-- | Craft API URL for live satellite TLEs |
Documentation
Full tool reference and hardware setup: birdcage.warehack.ing
Credits
- Gabe Emerson (KL1FI / saveitforparts) -- original Winegard rotor scripts
- Chris Davidson (cdavidson0522) -- Carryout G2 sky scan and rotator control
License
MIT