Claude Connector
Connect your team brain to the official Claude.ai app as a Custom Connector. Once connected, Claude can search and write your team's memory, tasks, and contacts directly inside any chat — no copy-pasting context, no separate tool. The connection is secured with OAuth 2.1 and bound to a single team.
This is a standard remote MCP connector, so the same endpoint works with any MCP client that supports OAuth — Claude.ai (web & desktop), Claude Code, and others. This guide uses the Claude.ai app as the example.
What you get
The connector exposes your team brain's full toolset to Claude. Ask naturally and Claude calls the right tool:
- "What did we decide about the Q2 budget?" → memory_search
- "Remember that the launch date is Oct 21" → memory_add
- "What's on my team's task list?" → tasks_list
- "Add a task to send the deck to Alice" → task_create
- "Who is our contact at Acme?" → contacts_search
Before you start
- A Claude.ai paid plan (Pro, Team, or Enterprise) — custom connectors are a paid Claude feature on Anthropic's side.
- You must be a member of at least one GrooveOS team. If you can sign in at grooveos.app/account/teams, you're set. See Authentication.
- The connector URL:
https://mcp.grooveos.app/mcp
Each connection is bound to a single team
You pick your team once, during sign-in. The access token Claude receives is locked to that one team's brain — it can never read or write another team's data. If you belong to several teams and want to use more than one in Claude, add a separate connector connection for each.
Connect in 4 steps
Open the connector settings
In Claude.ai, go to Settings → Connectors (on newer builds this lives under Customize → Connectors), then click Add connector → Add custom connector.
Enter the brain URL
Give it a name (e.g. GrooveOS Brain) and paste the server URL:
https://mcp.grooveos.app/mcp
Leave the optional OAuth fields blank — registration is automatic. Click Add.
Authorize with GitHub & pick your team
Click Connect. Claude opens a secure GrooveOS sign-in page. Sign in with GitHub (the same identity you use for GrooveOS), then choose the one team this connection should use, and approve.
Done
Claude shows "Connected" and the brain tools appear. By default each
tool is set to Needs approval — Claude asks before running it.
You can switch read tools like memory_search and
team_context to Always allow for a smoother flow.
The tools
| Tool | What it does | Access |
|---|---|---|
memory_search | Semantic search across your team's memory | Read |
memory_add | Save a new fact to the team brain | Write |
team_context | Pull the team's high-confidence context | Read |
tasks_list | List the team's tasks | Read |
task_create | Create a task | Write |
task_update | Update an existing task | Write |
contacts_search | Search the team CRM | Read |
contact_add | Add a contact | Write |
agent_invoke | Run a team agent | Write |
Write safeguards
Everything Claude writes through the connector is tagged and constrained:
- Provenance: writes are stamped
source=claude.ai-connectorso you always know a fact came from a Claude connector session. - Truth level capped at
WORKING: a connector can never write a fact straight toVALIDATED,CANONICAL, orPUBLIC. Promotion still goes through the normal human review in Brain Monitor. - Team isolation: every read and write is scoped to the single team bound at sign-in.
How sign-in works
The connector uses the standard MCP authorization flow (OAuth 2.1): Claude discovers the server, registers itself automatically, and runs an authorization-code flow with PKCE. You authenticate with GitHub and pick a team; Claude receives a short-lived access token scoped to that team. There is no static token to paste and no password ever reaches Claude.
The token Claude holds is bound to your chosen team and to this specific connector endpoint (audience-bound). You can revoke it any time by clicking Disconnect on the connector in Claude.ai.
Troubleshooting
"Authorization page could not be loaded"
On a self-hosted GrooveOS, this means your GitHub App isn't reachable for your
account yet. The App must be public for members who aren't the App
owner, and its callback list must include
https://api.grooveos.app/oauth/github-callback. See the self-hosting
note below.
Claude reconnects in a loop after authorizing
A small number of Claude builds have hit a known upstream issue with streamable HTTP after OAuth. If you see it, disconnect and reconnect; if it persists, contact team@grooveos.app.
Wrong team connected
The team is chosen at sign-in and locked to the token. To switch, click Disconnect and reconnect, choosing the other team — or add a second connection for it.
Running your own GrooveOS / xbrain?
The connector is served by two open-source services:
memory-api is the OAuth 2.1 Authorization Server
(/.well-known/oauth-authorization-server + /oauth/* on
your API host), and mcp-brain is the Protected Resource
(/.well-known/oauth-protected-resource + the /mcp
endpoint). For end-user sign-in to work, register
https://<your-api-host>/oauth/github-callback as a callback URL
on your GitHub App and make the App public. Full details in the
open-source repo.
What's next
- MCP Tools — the built-in tools available inside GrooveOS chat.
- Memory & Knowledge — how truth levels and promotion work.
- Brain Monitor — review and promote what your connectors write.