MCP Server
Groupthink's MCP (Model Context Protocol) server lets you ask any MCP-compatible AI assistant (Claude Desktop, Claude Code, Cursor, and others) to use Groupthink on your behalf. Your assistant can send the Groupthink bot into live meetings (joining, transcribing, speaking, chatting, leaving), read and write your relationship intelligence, and pull notes from meetings you have already had, surfaced in whichever tool you already work in.
New to this? Start at groupthink.com/agents for a two-minute overview and quickstart. This page is the complete reference: setup for every client, token management, and the full tool catalog.
- "Send the Groupthink bot to this Zoom and tell me what got covered when it's done: https://zoom.us/j/..."
- "What is happening in the meeting right now?"
- "Who am I meeting with this afternoon, and what should I prepare?"
- "Show me the notes from my call with sarah@example.com yesterday."
- "Show me my relationships I'm falling behind on"
- "What do I know about sarah@example.com?"
- "Save this as a note on sarah@example.com: we agreed to revisit pricing in Q3."
- "Find people I've talked to about pricing"
Prerequisites
Before setting up, you'll need:
- A Groupthink account, signed in at app.groupthink.com
- An MCP-compatible AI client. Tested with Claude Desktop, Claude Code, and Cursor; also works with other clients that support remote MCP servers over HTTP.
Two Ways to Connect
There are two ways to give your assistant access to Groupthink. Pick one.
| Sign in with Groupthink | API token | |
|---|---|---|
| How it works | You paste one URL. Your browser opens, you approve, done. | You mint a token in Settings and paste it into your client's config. |
| Works with | Clients that support MCP connectors: Claude Code, claude.ai, Claude Desktop, Cursor. | Any MCP client, including older versions and clients without connector support. |
| You can choose read-only | Yes | No. A token always has full access. |
| Best for | Most people. | Scripts, automation, and clients that cannot do the sign-in flow. |
Sign in with Groupthink is the recommended path. Nothing secret is copied or stored in a config file, and you can grant read-only access if you only want your assistant to look things up.
The server URL is the same either way:
https://api.groupthink.com/v1/mcp-server
Option A: Sign In With Groupthink
Claude Code
From your terminal, run:
claude mcp add --transport http --scope user groupthink https://api.groupthink.com/v1/mcp-server
No token, no header. The --scope user flag makes Groupthink available in every Claude Code project, not just the directory you ran the command from.
Then run /mcp inside Claude Code, choose groupthink, and pick the authenticate option. Your browser opens on the Groupthink approval screen. Approve it, return to your terminal, and claude mcp list will show Groupthink as connected.
claude.ai and Claude Desktop
Claude Desktop and claude.ai share the same connector settings, so adding it in one adds it in both.
- Open Settings, then Connectors.
- Choose Add custom connector.
- Paste
https://api.groupthink.com/v1/mcp-serveras the URL and save. Leave the optional OAuth fields blank; Groupthink publishes what Claude needs to find on its own. - Click Connect. Your browser opens on the Groupthink approval screen.
- Approve. The connector shows as connected and the Groupthink tools become available in your conversations.
You no longer need the mcp-remote bridge or a Node.js install for Claude Desktop. If you set Groupthink up that way previously, see Moving from a token to sign-in below.
Cursor
Open Cursor settings, go to the MCP Servers section, and add Groupthink as a remote HTTP server pointed at https://api.groupthink.com/v1/mcp-server with no authorization header. Cursor opens your browser for the same approval screen.
Other clients
Any MCP client that supports remote HTTP servers and OAuth can connect the same way: point it at https://api.groupthink.com/v1/mcp-server with no credential. The client discovers everything else it needs from the server. If your client asks you to supply an authorization URL or a client ID by hand, it does not support automatic discovery yet, and the API token path below is the one to use.
What You Are Approving
The approval screen names the app that is asking and shows what it will be able to do.
Groupthink cannot verify the name an app shows you. Any developer can register a connector and pick any name, including one that looks like ours. Only approve a connection you just started yourself, from the client you started it in.
You get a choice of what to grant:
- Read and write your Groupthink relationship data. The default, and what most assistants ask for. Everything in the tool catalog below, including saving notes and sending the meeting bot.
- Read your Groupthink relationship data. Read-only. The write tools are not restricted after the fact, they are invisible: an assistant holding a read-only grant cannot see them in its tool list at all, so it cannot call them by accident.
Read-only is a real downgrade you can pick at approval time. If you are not sure, start read-only. You can reconnect later with full access.
Option B: API Token
Use this for clients that cannot do the sign-in flow.
Mint a token
- Open Settings → API Tokens on app.groupthink.com (sign in if prompted).
- Click New token, give it a recognizable name (such as "Claude Desktop" or "Cursor on personal Mac"), and click Create token.
- Copy the token value when it appears. You will only see this once. Save it somewhere safe (a password manager works well). Once you dismiss the create panel, the token cannot be retrieved.
A token always carries full read and write access. There is no read-only token; if you want read-only, use the sign-in path above.
Claude Code with a token
claude mcp add --transport http --scope user groupthink https://api.groupthink.com/v1/mcp-server \
--header "Authorization: Bearer YOUR_TOKEN_HERE"
Claude Desktop and Cursor with a token
These reach Groupthink through a small bridge called mcp-remote, which runs automatically via npx on first use. You need Node.js installed (most modern Macs already have it; check by running node --version in Terminal).
Edit your config file:
- Claude Desktop, macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Claude Desktop, Windows:
%APPDATA%\Claude\claude_desktop_config.json - Cursor: the MCP Servers section of Cursor settings
Add the groupthink entry inside the existing mcpServers block. If you already have other MCP servers configured (for example, Playwright or a Cooking MCP), keep them. Add the groupthink key alongside them, don't replace the whole file:
{
"mcpServers": {
"groupthink": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.groupthink.com/v1/mcp-server",
"--header",
"Authorization:Bearer YOUR_TOKEN_HERE"
]
}
}
}
Replace YOUR_TOKEN_HERE with your token. Save the file and fully quit and relaunch the app.
Moving from a token to sign-in
If you already connected with a token and want to switch:
- Remove the existing
groupthinkentry from your client (for Claude Code,claude mcp remove groupthink; for Claude Desktop or Cursor, delete thegroupthinkblock from the config file). - Follow Option A for your client.
- Revoke the old token in Settings → API Tokens so it stops working.
Both methods can coexist while you switch, so nothing breaks in between.
Try It Out
Open a new conversation in your AI assistant and try a natural-language prompt. Sending the bot into a live meeting (have a Zoom, Google Meet, or Microsoft Teams URL ready):
- "Send the Groupthink bot to this Zoom: [your meeting URL]"
- "What is being said in the meeting right now?"
- "Have the bot say 'Sorry I'm running late, I'll be there in five minutes' in the meeting"
- "Tell the bot to leave the meeting"
- "Save these notes from the meeting: ..."
Working with your relationship intelligence:
- "What relationships do I have in Groupthink?"
- "Tell me about my relationship with [their email]"
- "Who am I falling behind on?"
- "What meetings do I have this week, and what should I know about the attendees?"
- "Show me the notes from my call with [their email] yesterday."
- "Save this as a note on [their email]: [paragraph of context, background, political read, etc.]"
Your assistant should call the appropriate Groupthink tools and respond with your real data. Tools that change state (sending the bot, posting chat, speaking, saving notes) write a usage row to your account so you can see what was done on your behalf.
Reference: Tools Your Assistant Can Call
The MCP server exposes around thirty tools across three areas: reading your relationship record, writing back to it, and participating live in meetings (the live-meeting tools are available when meeting tools are enabled for your account). You usually don't need to know these by name — your assistant picks the right one from a natural-language prompt — but here's the full catalog.
Live meeting participation
These tools send the Groupthink bot into a live meeting and let your assistant interact with it. Each tool except join_meeting operates on a bot_id returned by join_meeting.
| Tool | What it does |
|---|---|
| join_meeting | Send the Groupthink bot to a Zoom, Google Meet, or Microsoft Teams URL. Returns the bot_id that subsequent tools operate on. |
| get_transcript | Fetch new transcript lines from the bot since the last call. Maintains a per-user cursor so repeated calls return only what is new. |
| speak | Have the bot speak text aloud in the meeting using TTS. Subject to a small per-user daily spend cap to prevent runaway audio cost. |
| send_chat | Send a chat message into the meeting via the bot. Max 2000 characters. |
| bot_status | Get the bot's current state (joining, in_call_recording, done, errored, etc), name, meeting URL, and creation time. |
| leave_meeting | Tell the bot to leave the meeting. Recall may take a few seconds to remove the bot. Also clears the per-user transcript cursor. |
| save_notes | Persist agent-generated meeting notes (summary, action items, key decisions, contributions) against the bot's meeting. Idempotent. |
| get_notes | Retrieve previously saved agent meeting notes for the bot's meeting. |
Your relationship and meeting intelligence
Read tools query the graph; upsert_relationship_note writes a free-form note back to it. get_upcoming_meetings and get_past_meetings cover the calendar in both directions so your assistant can answer "who am I meeting with at 2pm" and "what got covered in my call with sarah yesterday" without you remembering any IDs. Personal details surfaced by get_relationship carry source-meeting attribution + extraction timestamps so your assistant can verify currency before relaying a fact.
| Tool | What it does |
|---|---|
| list_relationships | Lists your relationships with frequency status. Optional filter by status (on track, falling behind, overdue). |
| get_relationship | Returns detailed information about one relationship, looked up by email or relationship ID. Includes personal details (with source meeting + extracted-at timestamp), tags, user notes, and meeting context. Supports filter / pagination on personal_details. |
| search_relationships | Searches across names, emails, tags, and personal details to find specific contacts. |
| get_relationship_insights | Returns a high-level summary of your relationship health and who needs outreach. |
| get_upcoming_meetings | Lists upcoming meetings with the relationship context for each attendee, including each attendee's relationship ID so your assistant can chain directly to get_relationship. |
| get_past_meetings | Lists meetings you attended in the last N days (default 7, max 30, optional email filter). Each meeting includes the Groupthink bot_id inline when a recording exists, so your assistant can chain into get_notes or get_transcript without you remembering an id. |
| upsert_relationship_note | Writes a free-form, user-authored note onto a relationship. Stored verbatim, distinct from auto-extracted personal_details. Supports upsert by source so re-pushing the same content doesn't duplicate. |
Writing back to your record
Beyond the free-form upsert_relationship_note, your assistant can maintain the structured parts of a relationship: the dossier (durable facts and context), open threads (the loops and commitments still in play), and artifacts (outputs you produce for or about someone). Every write authenticates as you and passes the same permission checks as the app, so an agent can only touch your own record.
| Tool | What it does |
|---|---|
| stage_dossier_entry | Adds a new dossier entry (a fact or piece of context) to a relationship. |
| refine_dossier_entry | Edits the text of an existing dossier entry. |
| merge_dossier_entry | Merges duplicate dossier entries into one. |
| archive_dossier_entry | Archives a dossier entry so it no longer surfaces. |
| dismiss_dossier_entry | Dismisses a suggested or auto-extracted dossier entry you do not want kept. |
| stage_open_thread | Opens a thread on a relationship (an open loop, commitment, or follow-up). |
| transition_open_thread | Moves a thread's status forward (for example, from open to resolved). |
| update_open_thread | Edits the content of an existing open thread. |
| create_artifact | Creates an artifact (a document or output) attached to a relationship. |
| update_artifact | Edits an existing artifact. |
| archive_artifact | Archives an artifact. |
| supersede_artifact | Replaces an artifact with a newer version, keeping the history. |
| ingest_meeting_content | Ingests pasted notes or transcript content as a capture, the same path the app uses for notes. |
Disconnecting
A connection you made by signing in: remove the connector in the client that holds it. In Claude Code, claude mcp remove groupthink. In claude.ai or Claude Desktop, open Settings, Connectors, and delete the Groupthink connector. In Cursor, delete the entry from the MCP Servers list.
If you cannot reach the client (a shared machine you no longer have, or a connection you do not recognize), email support@groupthink.com and we can cut it off from our side. Access ends immediately when it is cut, not at the end of the grant.
A connection you made with a token: open Settings, switch to the API Tokens tab, find the token, and click Revoke. Confirm the destructive action when prompted. Any client using the revoked token will immediately lose access. Revoke any token you no longer recognize, or that you saved somewhere insecure.
How Long a Connection Lasts
A sign-in connection refreshes itself in the background and lasts up to six months of continued use before your client asks you to sign in again. Tokens are separate: a token you minted keeps working until you revoke it.
Troubleshooting
"401 Unauthorized" or "Authentication required" If you connected with a token, it is missing, expired, or revoked. Mint a new one and update your client config. If you connected by signing in, the connection was disconnected or has lapsed; remove it from your client and add it again.
Your client asks you to paste an authorization URL, token URL, or client ID It does not support automatic discovery. Leave those fields blank if it lets you, or use the API token path instead.
Your client says the connection was refused when you approved it Some clients ask you to sign in from a browser profile that is not signed in to Groupthink. Sign in at app.groupthink.com in the same browser, then try connecting again.
Your assistant cannot see the tools for saving notes or sending the bot The connection was approved as read-only. Remove it in your client, add it again, and pick read and write on the approval screen.
"No relationships found" or empty responses You may not have relationships tracked yet. Relationships are built automatically from your meeting activity in Groupthink. Run a meeting or two first.
"No calendars connected"
The get_upcoming_meetings tool needs a connected calendar. Connect Google Calendar or Outlook in Groupthink first.
Claude Desktop says no MCP servers found, or the Groupthink tools don't show up
If you connected by signing in, check Settings, Connectors, and confirm Groupthink shows as connected. If you used a token, make sure your claude_desktop_config.json is valid JSON and that you fully quit and relaunched Claude Desktop after editing it.
What's Next
- Manage your tokens at app.groupthink.com/settings#api-tokens. You can mint and revoke tokens from there at any time.
- More tools will land as Groupthink's relationship intelligence grows. If a tool is missing that would unlock a workflow for you, email support@groupthink.com.
Privacy & Scope
However you connect, your assistant authenticates as your user account and reaches the same data you do in the Groupthink app, scoped to your relationships and your calendars. Neither method grants access to other users' data.
A sign-in connection can be narrowed to read-only at the approval screen. A token cannot; it always carries full read and write access, so treat your tokens like passwords. Anyone with a token can read your relationship data through any MCP client.
Tools that change state (sending the bot, posting chat, speaking, saving notes) write a usage row to your account so you can see what was done on your behalf.