Use the MCP server
Denpa ships a Model Context Protocol server so an agent can stream an operator’s live SIGNAL, bind streams to market pages and create broadcasts — as that operator.
- Endpoint:
https://denpa.ai/api/mcp— streamable HTTP, stateless, plain JSON responses. - Auth:
Authorization: Bearer dk_…. Every authenticated tool acts as the key’s owner; handles are resolved server-side, never from tool arguments.
Connect from Claude Code
Section titled “Connect from Claude Code”claude mcp add --transport http denpa https://denpa.ai/api/mcp \ --header "Authorization: Bearer dk_YOUR_KEY"Then: “push a signal for the top featured market to my live page”, “bind my HLS stream to market 516830”, “get my OBS ingest and stream key”.
| Tool | Auth | What it does |
|---|---|---|
denpa_whoami | key | handle, approval status, live page / overlay / field record links |
denpa_featured_markets | — | the heatmap tiles (optional mode) |
denpa_market | — | one market by id |
denpa_push_signal | key | feature a market as the live SIGNAL on the operator’s page + overlay |
denpa_clear_signal | key | clear it |
denpa_get_signal | — | read any operator’s current SIGNAL |
denpa_bind_stream | key | bind an HLS URL to a market page (one active market per operator) |
denpa_unbind_stream | key | unbind |
denpa_go_live | key | provision Mux ingest: RTMP server, stream key, HLS playback (approved operators) |
denpa_my_broadcasts | key | recent broadcast receipts |
Unauthenticated calls to key-gated tools return an in-band error with onboarding steps, so initialize and tools/list work without credentials and agents can self-serve the fix.
Verify
Section titled “Verify”curl -s -X POST https://denpa.ai/api/mcp -H 'Content-Type: application/json' \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Protocol: initialize, ping, tools/list, tools/call; notifications get 202; versions 2025-06-18 / 2025-03-26 / 2024-11-05. No server-initiated streams — GET returns 405.