references/features/connections.md
references/features/connections.mdBrowse 27 files
622 tokens
2,558 bytes
Token encoding: o200k_base
Snapshot 8beb6cd
← Back to SKILL.md
Connections
Inbound MCP hosts (connected agents). The connected list is a grouped panel with
per-clientId revoke. Add connection is its own page: the full client wall
from onboarding Step 1 — every named agent, on every device, none folded under
Not listed — then one host's install steps. The MCP URL card covers any other
host that speaks MCP. Also links the Advanced MCP OAuth clients page.
How to get there
/account/connections— connected list, Add connection button, MCP URL. Does not nest the add grid./account/connections/new— the agent grid, with a “← back to connections” link. Does not wrap the connected list./account/connections/new/:agent— install steps for oneMcpClientKind(cursor,claude-code,chatgpt, …;otheris not a page here). Unknown agents 404.
Account rail → Connections; Overview keeps a "Manage connections" link.
Drive it
node tools/control-kody.ts login
node tools/control-kody.ts request GET /account/connected-agents.json
node tools/control-kody.ts request GET /account/connections/new
node tools/control-kody.ts request GET /account/connections/new/cursor
APIs
GET|POST /account/connected-agents.json({ intent: 'revoke', clientId })mcpServerUrlin that payload is empty until the account email is verified (same gate as/onboarding.json); the page then shows a verify note instead of the grid and copy card.- All three HTML views share that one payload (no refetch between them).
Gotchas
- Seed users start with no connected agents; connect one from Add connection or an MCP host to see the list. Revoke is a double-check button per connection: confirm and the in-flight POST stay on that row, so other Revoke controls stay clickable. Confirm removes the row immediately; a failed request restores that row only.
- Hosts are grouped by display name (logos for known kinds, last-used then
connected newest-first, best-effort labels). Last used is the revoke signal
(successful
/mcpbearer validation). A missing stamp renders as "unknown". Connected is grantcreatedAt. That list is notusers.mcp_client_nameand not minted MCP OAuth clients (/account/mcp-oauth-clients). - The grid reuses onboarding's
AgentPickerGridwithviewport: 'both'on every entry, so the phone/desktop split and greyed same-ecosystem cards that onboarding applies do not appear here. /account/connections.jsonis the sign-in provider (GitHub, Google, …) list on Overview, not this page's data.