birdcage/mcp/README.md
Ryan Malloy bf72e784d3 Add PyPI README files and MCP resource/prompt tests
- README.md for all three packages (core, TUI, MCP)
- pyproject.toml readme field for PyPI rendering
- 8 new tests for MCP resources (5) and prompts (3)
- Total MCP test coverage: 57 tests, 37 tools + 5 resources + 3 prompts
2026-02-17 19:15:23 -07:00

59 lines
1.9 KiB
Markdown

# mcbirdcage
[MCP](https://modelcontextprotocol.io/) server for controlling Winegard satellite dishes through conversational tools. Built on [FastMCP](https://gofastmcp.com/), exposes 36 tools for dish positioning, signal analysis, firmware inspection, and satellite pass planning.
## Install
```bash
# 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:
```bash
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](https://birdcage.warehack.ing)**
## Credits
- **Gabe Emerson (KL1FI / [saveitforparts](https://github.com/saveitforparts))** -- original Winegard rotor scripts
- **Chris Davidson ([cdavidson0522](https://github.com/cdavidson0522))** -- Carryout G2 sky scan and rotator control
## License
MIT