ops(brain): register brain MCP as a custom integration in claude.ai #21
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
OAuth client_credentials flow (hyperguild#5) shipped and is active in the live pod.
OAUTH_CLIENT_ID=brain-mcp-claudeaiand a randomOAUTH_CLIENT_SECRETlive in SOPS. Once claude.ai is configured, web sessions can call brain tools without the static-Bearer header that the UI doesn't expose.Action
https://brain-mcp.d-ma.be/mcp/.well-known/oauth-authorization-server, exchanges credentials, uses the issued bearer on/mcp.Verification
In a fresh claude.ai conversation,
tools/listshould show the eight brain tools (brain_query,brain_write,brain_index,brain_tunnel,brain_ingest_raw,brain_ingest,brain_answer,brain_classify,session_log). Abrain_queryshould return non-empty results.Acceptance criteria
/mcplists all brain toolsbrain_queryround-tripsRegistered. OAuth flow verified end-to-end from koala before handoff:
The Authorization Server is brain-mcp itself (issuer =
https://brain-mcp.d-ma.be), not Dex —brain-mcp's own/oauth/tokenendpoint implementsclient_credentialsperingestion/internal/oauth/token.go. Client secret validated against the SOPS-storedOAUTH_CLIENT_SECRET; on success the same staticBRAIN_MCP_TOKENis returned as the bearer (so the static-Bearer code path and the OAuth code path converge on the same token, just with two arrival routes).Closes.