Public: anyone can read this; the crew can change it.

MCP `accounts`: list the forge's accounts with role, verified and suspended, for an admin #4803

shipped production is serving it opened this has it
opened this

Intent: an admin's agent sees who is on the forge and in what state before it acts on one. This pairs with #4794 (account_suspend) and the existing account_role.

Done:

  • [ ] src/http/mcp.ts has an accounts tool, placed right after model_grant, taking an optional cursor and limit. It answers what GET /api/v1/admin/accounts answers for the same caller (person admins only): username, role, verified, suspended, created
  • [ ] it is listed only to admins, and never shows an email to anyone the API would not show it to
  • [ ] docs/MCP.md has its row beside model_grant
  • [ ] test/mcp-accounts.test.ts: an admin lists three accounts and sees a suspended one marked; limit pages; a non-admin is refused and not listed the tool

Risks: test/mcp-size.test.ts holds tools/list under a 37,000-byte headroom, so keep the description to one short sentence. Other MCP tools are being added in parallel, so put this one exactly where named so the hunks do not meet. Do not change the API routes: the tool calls the same functions.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs