podium-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@podium-mcpShow me current stream stats and any dead streams"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
podium-mcp
An MCP server for Podium, the provider-aware stream checker and reorderer for Dispatcharr. It lets Claude and other MCP clients inspect Podium's state, run checks, preview and apply stream orderings, and manage rules and settings.
You run it yourself, next to your own Podium instance. Nothing is hosted.
Quick start (Docker)
docker run -d --name podium-mcp \
-p 127.0.0.1:8080:8080 \
-e PODIUM_URL=http://<podium-host>:<port> \
-e MCP_AUTH_TOKEN=change-me \
ghcr.io/OWNER/podium-mcp:latestBind the published port to a specific interface (127.0.0.1 above) unless you
intend to expose the server to your LAN, and set MCP_AUTH_TOKEN if you do.
Or copy .env.example to .env, fill it in, and run
docker run --env-file .env ... instead of repeating -e flags. Alternatively
copy docker-compose.example.yml to docker-compose.yml, edit the values (or
add env_file: .env), and run docker compose up -d.
Check it is up: curl http://localhost:8080/healthz returns {"ok":true}.
Related MCP server: Mavryn
Configuration
Variable | Required | Default | Meaning |
| yes | — | Base URL of your Podium instance |
| no | — | Bearer token sent to Podium (only if a proxy in front of it needs one) |
| no |
| Per-request timeout |
| no |
|
|
| no |
| Listen port for HTTP |
| no | — | Bearer token clients must send to |
| no |
| Register |
| no |
|
|
The image EXPOSEs 8080, so if you change MCP_PORT you must change the
container side of the port mapping to match (for example
-p 127.0.0.1:9000:9000 with MCP_PORT=9000).
Connecting a client
Claude Code (HTTP)
claude mcp add --transport http podium http://localhost:8080/mcp \
--header "Authorization: Bearer change-me"Claude Desktop (HTTP)
Add to claude_desktop_config.json:
{
"mcpServers": {
"podium": {
"type": "http",
"url": "http://localhost:8080/mcp",
"headers": { "Authorization": "Bearer change-me" }
}
}
}Any client (stdio via Docker)
{
"mcpServers": {
"podium": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"-e", "PODIUM_URL=http://<podium-host>:<port>",
"-e", "MCP_TRANSPORT=stdio",
"ghcr.io/OWNER/podium-mcp:latest"
]
}
}
}Tools
Read-only:
Tool | What it does |
| Service and worker health |
| Stream state counts, provider breakdown, freshness |
| Current or last checker run |
| Dead, black and orphan streams |
| Channel/group view; |
| Search streams by name (2+ chars) |
| Groups with counts and exclusion status |
| Ordering mode and weights |
| Quality profile data |
| Uploaded rules status |
| Name-noise detector output |
| Settings (secrets masked and removed from the effective map) |
| Teamarr sync status |
Actions:
Tool | What it does | Guard |
| Queue or cancel a check run | — |
| Dry-run stream matching | none needed |
| Probe one channel's streams | — |
| Apply a stream order in Dispatcharr |
|
| Remove a stream from a channel |
|
| Save or clear channel match rules | — |
| Set group mode by id or name pattern | — |
| Update ordering mode and weights | — |
| Upload a rules JSON file | — |
| Test or save settings; secret keys are refused | — |
| Run (dry-run by default) or test Teamarr sync |
|
Opt-in (PODIUM_MCP_ENABLE_DESTRUCTIVE=true):
Tool | What it does | Guard |
| Export, or restore a backup |
|
| Clear Podium cache and history |
|
Every tool carries MCP annotations (readOnlyHint, destructiveHint) so clients
that honour them can prompt appropriately.
Safety notes
podium_apply_orderingandpodium_unassign_streamchange live Dispatcharr channels through Podium. Theconfirm: trueargument is a guard against accidental calls by a model. It is not a security boundary. Anyone who can reach the/mcpendpoint can call these tools, so setMCP_AUTH_TOKENand keep the port off the public internet.Through the default tool set the server never reads or writes Dispatcharr credentials. Secret settings are masked on read and refused on write.
The opt-in
podium_backuptool (behindPODIUM_MCP_ENABLE_DESTRUCTIVE=true) exports and restores Podium's raw backup document, which can include Podium's stored configuration and secrets. Leave the flag off unless you need it, and treat exported backups as sensitive.If
MCP_AUTH_TOKENis unset, the server logs a startup warning that/mcpis unauthenticated. Idle HTTP sessions are closed after 30 minutes.Podium has no endpoint to list group-name patterns, so
podium_set_groupwithtarget: "pattern"is write-only.
Development
npm install
npm test
npm run build
PODIUM_URL=http://<podium-host>:<port> npm startnpm run smoke calls every read tool once against the Podium at PODIUM_URL.
Releases: push a tag like v0.1.0 and GitHub Actions publishes a multi-arch
image to GHCR and creates a GitHub Release.
Licence
MIT. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only MCP server for AIStatusDashboard status, incidents, metrics, and fallback recommendations.
Streamable HTTP MCP server exposing planner flows, tasks, and squads.
MCP server for Statsig API - interact with Statsig's feature flags, experiments, and analytics
Authenticated MCP server for ClearPolicy policy and compliance workflows.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceSelf-hosted MCP proxy and aggregation platform. Register multiple upstream MCP servers and expose them through a single unified endpoint with namespace routing, multi-transport support (HTTP/SSE, stdio, OpenAPI→MCP), per-tool overrides, and a web admin UI.18MIT
- AlicenseNot gradedqualityCmaintenanceCentralized MCP control plane that proxies multiple upstream MCP servers with tool namespacing, filtering, policy enforcement, audit logging, and health checks.6 npmMIT
- FlicenseNot gradedqualityBmaintenanceMCP server for the ai-delivery-kit orchestration engine, exposing loop management and stall intervention tools for delivery coordination.-
- AlicenseAqualityBmaintenanceEnables MCP-compatible agents to manage Tomo Streaming rooms and runtimes, including creating, inspecting, controlling, and deleting rooms, as well as checking health and listing stream servers.73 npmPolyForm Noncommercial 1.0.0