Skip to main content

MCP server for Winegard satellite dish control via serial

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcbirdcage-2026.2.18.tar.gz (89.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcbirdcage-2026.2.18-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file mcbirdcage-2026.2.18.tar.gz.

File metadata

  • Download URL: mcbirdcage-2026.2.18.tar.gz
  • Upload date:
  • Size: 89.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mcbirdcage-2026.2.18.tar.gz
Algorithm Hash digest
SHA256 4ba9e6b25c4dd76bf7bf06656c93edf06981a3db4f04f461938702e78a1bd5cd
MD5 abd13cc8d7f9ae81ccc63eec1b0b50b3
BLAKE2b-256 7e080d6474554e0518b10559d05f364140e338c792a0df69e3b09ec54706bdb3

See more details on using hashes here.

File details

Details for the file mcbirdcage-2026.2.18-py3-none-any.whl.

File metadata

  • Download URL: mcbirdcage-2026.2.18-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mcbirdcage-2026.2.18-py3-none-any.whl
Algorithm Hash digest
SHA256 fcfac2a9f18142917bc7b39dff1583e7dcca597378b3315489912f0f661409c7
MD5 740b1818e58d40d9a90bd51366568e19
BLAKE2b-256 bbe76d534bde73943749158992bc545033c1b34e380af72f852c9a9d52e80d07

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page