Skip to main content

allstar-mcp

MCP server for AllStar Link node control. Wraps ASL3-API REST endpoints as MCP tools, giving AI agents (Claude, GPT-4, any MCP-compatible client) structured, intent-aware access to AllStar Link node monitoring and control.

The first MCP server for AllStar Link in existence.

Architecture

Claude / AI Agent
      |
  allstar-mcp  (FastMCP, Python)
      |
  ASL3-API  (REST + SSE, port 8073)
      |
  AMI / Asterisk / app_rpt

The MCP server is a translation layer only. It never touches AMI directly — all operations go through ASL3-API REST endpoints.

Requirements

  • ASL3-API v1.4+ running on your AllStar node (see ASL3-API)
  • Python 3.11+ or uv

Quick Start

ALLSTAR_API_KEY=yourkey ALLSTAR_API_URL=http://your-node:8073 uvx allstar-mcp

Claude Desktop Configuration

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "allstar": {
      "command": "uvx",
      "args": ["allstar-mcp"],
      "env": {
        "ALLSTAR_API_KEY": "your-api-key-here",
        "ALLSTAR_API_URL": "http://your-node-ip:8073"
      }
    }
  }
}

Environment Variables

Variable Required Default Description
ALLSTAR_API_KEY Yes — ASL3-API authentication key
ALLSTAR_API_URL No http://localhost:8073 Base URL of your ASL3-API instance

Tool Surface

Read-only (no risk)

Tool Description
health_check API reachable, auth works, AMI connected, node/version
get_node_status Uptime, keyup count, TX time, DTMF stats
get_connected_nodes Who is linked and where (with callsign/location)
get_live_variables Live RX/TX keyed state, link counts, autopatch status
get_capabilities What this node supports — for agent auto-config
lookup_node Callsign, location from 40k-node AllStar database
get_audit_log Recent command history for agent context

Low-risk control

Tool Description
cop_identify Play node ID over the air
cop_time Say current time over the air
cop_status Say system status over the air
cop_version Say app_rpt version over the air

Medium-risk (require situational awareness)

Tool Description
connect_node Connect to a remote node (confirmed=True required)
disconnect_node Disconnect from a specific node (confirmed=True required)
send_dtmf Send DTMF sequence (confirmed=True required)
execute_macro Run a macro from rpt.conf (confirmed=True required)

High-risk (destructive)

Tool Description
disconnect_all Drop ALL active connections (confirmed=True required)

Resources

Resource Description
allstar://events/stream SSE event stream URL and connection details

Safety Design

  • Active-QSO guard: connect_node and disconnect_node automatically block during active RX/TX unless override_active_qso=True
  • Confirmed flag: connect_node, disconnect_node, send_dtmf, execute_macro, and disconnect_all all require confirmed=True and will no-op with an explanation if not set
  • Dry-run mode: All confirmed-action tools accept dry_run=True to preview the action and payload without executing
  • Audit context: get_audit_log lets the agent check recent command history before issuing duplicate commands
  • No AMI access: The server has no Asterisk/AMI credentials and cannot bypass ASL3-API

License

MIT

Metadata

Release files for allstar-mcp 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for allstar-mcp 0.1.2
File Size Uploaded
allstar_mcp-0.1.2.tar.gz 82.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for allstar-mcp 0.1.2
File Interpreter ABI Platform
allstar_mcp-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 92.4 kB

Release files / allstar_mcp-0.1.2.tar.gz

Download URL allstar_mcp-0.1.2.tar.gz
Size 82.9 kB
Tags Source
SHA-256 checksum
How to use checksums
6f4a8700012b9566ae98ab07ad8835c34f14c45769e7ef3e3559bbc1ae9f594b
BLAKE2b-256 checksum
How to use checksums
5024beef84ae1cff10e5557597976ee8a56608397bf1d0badeb80c3e3a53fdf8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / allstar_mcp-0.1.2-py3-none-any.whl

Download URL allstar_mcp-0.1.2-py3-none-any.whl
Size 9.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1c4d8a72a5ca69be27a6d734ee967c9dc225b70426eb1f774595726558e356ec
BLAKE2b-256 checksum
How to use checksums
d15c9cfe3a0fb1893928a5538798aa1ded51b9408ea389f4649a40c2f2059e3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page