Skip to content

Contracts MCP

Zlatko Lakisic edited this page Aug 3, 2026 · 1 revision

Contracts — MCP Tools

MCP topology overview


Hosted, server-side (mcp/vision_mcp/)

Wraps CodeProject.AI. Runs on the AI server as a plain HTTP MCP — not through the reverse tunnel (co-located with the daemon).

Tool Args Returns
who_is_present {} {people: [{userid, confidence}], count}
describe_view {} {objects: [{label, confidence}]}
check_camera {} {ok, lastFrameAgeMs}

Note: COMSTAR attention vision runs bridge → CPAI directly, not via an AO vision MCP. The vision MCP is for the planner to call when needed.


Tunnelled, Pi-local (mcp/terminal_mcp/)

Reachable only from the Pi, exposed over tunnel://session-mcp/terminal as client.terminal.

Tool Args Returns
set_display {mode} modeavatar, clock, blank
play_tone {tone} ack, error, attention
mic_status {} {muted, deviceOk, lastWakeAgoMs}
screen_state {} {on, brightness}
sleep_enter {} {ok, state:"sleeping"}
sleep_status {} {sleeping:bool}
volume_get {} {percent, muted}
volume_set {percent} {ok, percent, muted}
volume_adjust {delta} {ok, percent, muted}
volume_mute {muted} {ok, percent, muted}

Bridge loopback HTTP backs sleep/volume: POST /control/sleep, GET|POST /control/volume.

Guest sessions must not register client.terminal.

ADR 0004 · Terminal Control


Tunnelled Google Workspace

No custom Gmail MCP in-repo. Comstar pairs OAuth once, stores a per-userid refresh token (0600), starts pinned mcp-server-google-workspace via LocalMcpHost.startNpxPackage, registers as client.google_workspace.

Piece Location
MCP definition overlays/comstar/mcp_providers/google_workspace.yaml
Agent allowlist voice_responder.yamlclient.google_workspace
Tokens ~/.local/share/comstar/google/<userid>.json
Secrets GOOGLE_CLIENT_ID / GOOGLE_CLIENT_SECRET

Google Workspace


Voice session MCP policy

Exclude slow tools from conversational turns (web search, arxiv, long media). They blow the 15 s latency budget. Batch those in morning-briefing style flows (Phase 2+).

Hosted MCPs observed on the bring-up AO host: home_assistant, media_audio_transcribe, media_understand, media_video_analyze, fetch_url, filesystem_local.


Related pages

Clone this wiki locally