# MCP Server

Connect Claude, ChatGPT and Cursor to your Convo calls. Sign in with OAuth, or run the local server with an API key.

Source: https://docs.itsconvo.com/mcp

API Base URL: https://www.itsconvo.com/api/v1

Ask your AI assistant what a contact raised last time, which follow-ups are still open, or what to send after today's demo. Convo's [Model Context Protocol](https://modelcontextprotocol.io) server gives it your calls, key points, feedback and contacts.

```
https://www.itsconvo.com/api/mcp
```

- **Hosted.** Claude, ChatGPT and Cursor sign in through the browser with OAuth. There is nothing to install. Other clients can send an API key as a Bearer header.
- **Local.** The npm package `@itsconvo/mcp-server` runs on your computer with an API key. It adds tools that answer questions, draft emails and share calls.
- **Plans.** Both need Starter or above. The two Convo Memory tools need Professional or Enterprise with [Memory](/tiers#convo-memory) turned on.

## What you can do

- Search and browse your meeting history
- Read full transcripts with speakers and timestamps
- Get summaries with key points, decisions and action items
- Ask any question about a specific meeting
- Draft follow-up emails that reference actual discussion points
- Prepare for upcoming meetings by reviewing all past interactions with a person or company
- Get a weekly digest of all meetings, decisions and action items
- Find all open action items across your meetings, filtered by owner

## Connect

For Claude Web, ChatGPT or Cursor's hosted connection, you don't need an API key or the npm package. Sign in through OAuth in the matching tab. The API key and npm steps are only for the [local server](#local-server).

<Tabs items={["Claude Web", "Claude Desktop", "Claude Code", "Cursor", "ChatGPT", "Other clients"]}>
<Tab value="Claude Web">

Claude on the web (claude.ai) connects through OAuth. No API key or npm install needed.

1. In Claude, open **Customize → Connectors**.
2. Click **+**, then **Add custom connector**.
3. Name it **Convo** and enter `https://www.itsconvo.com/api/mcp`. Leave the advanced OAuth fields empty and click **Add**.
4. Click **Connect** and sign in to Convo with your email and password, or with Google.

To try it, start a new chat and ask "What meetings did I have this week?" Enable Convo from the chat's **+ → Connectors** menu if needed.

The connector is available across your Claude account, including Claude Desktop. Claude Free supports one custom connector; paid plans also support custom connectors. Convo needs Starter or above.

On Claude Team or Enterprise, an Owner or Primary Owner first adds the connector under **Organization settings → Connectors → Add → Custom → Web**. Members then find Convo in **Customize → Connectors** and connect their own account. See Claude's [custom connector guide](https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp).
</Tab>
<Tab value="Claude Desktop">

Use the custom connector from the **Claude Web** tab. It syncs to Claude Desktop automatically.

To use the local server with your own API key instead, follow [Local server](#local-server) and add the configuration to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows). Restart Claude Desktop after saving.
</Tab>
<Tab value="Claude Code">

Connect the hosted server with an API key:

```bash
claude mcp add --transport http convo https://www.itsconvo.com/api/mcp \
  --header "Authorization: Bearer $CONVO_API_KEY"
```

Or run the [local server](#local-server):

```bash
claude mcp add convo -e CONVO_API_KEY=$CONVO_API_KEY -- convo-mcp
```
</Tab>
<Tab value="Cursor">

For a hosted connection, add this to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` inside one project:

```json
{
  "mcpServers": {
    "convo": {
      "url": "https://www.itsconvo.com/api/mcp"
    }
  }
}
```

Open Cursor's **Customize** page, find Convo and complete the browser sign-in. Enable Convo and start a new chat or agent session. No npm install or manually copied key is needed. You need Convo Starter or above.

If you prefer a static key for the hosted server, add `"headers": { "Authorization": "Bearer convo_..." }` beside `url`.

For the additional local tools listed below, complete the [local server](#local-server) steps and use its `convo-mcp` configuration instead. Restart Cursor after saving the local configuration. See [Cursor's MCP guide](https://cursor.com/docs/mcp).
</Tab>
<Tab value="ChatGPT">

Convo is not currently listed in ChatGPT's public plugin directory. Add it manually through Developer mode.

You need **Convo Starter or above** and access to **Developer mode in ChatGPT on the web**. OpenAI currently lists Plus, Pro, Business, Enterprise and Education as eligible. Workspace permissions may require an administrator.

1. In ChatGPT, open **Settings**, select **Security and login**, and enable **Developer mode**.
2. Open [ChatGPT Plugins](https://chatgpt.com/plugins) and select the **plus button** to add your own connection.
3. Name it **Convo** and enter `https://www.itsconvo.com/api/mcp` as the MCP server URL. Choose **OAuth**. If asked for a registration method, use **Dynamic Client Registration (DCR)**; no manually supplied client ID or secret is needed.
4. Complete the connection flow, sign in to Convo when prompted, and review the requested access and discovered tools.
5. Open Convo in your [personal plugins](https://chatgpt.com/plugins?view=personal) and install it. Start a new **Work** chat, type **@**, and select **Convo**.

If your interface uses developer-mode apps, select Convo from the chat's plus menu under **Developer mode** instead. If Developer mode or the add button is missing, check your ChatGPT plan and workspace permissions.

No local server installation or manually copied Convo API key is needed.

To check the connection, ask: "Summarize my most recent Convo meeting and its action items."

See OpenAI's [Developer mode guide](https://developers.openai.com/api/docs/guides/developer-mode) for access requirements and its [plugin quickstart](https://developers.openai.com/plugins/quickstart) for the personal-plugin installation steps.
</Tab>
<Tab value="Other clients">

Point the client at `https://www.itsconvo.com/api/mcp` (streamable HTTP). If it supports MCP authorization, it signs you in through the browser. Otherwise, send `Authorization: Bearer convo_...` with a key from **Settings → Convo API** in the desktop app.
</Tab>
</Tabs>

## Local server

The local server calls the [REST API](/api-reference) with your API key, so its requests count against your [rate limit](/rate-limits).

1. Create a key in the [Convo desktop app](https://www.itsconvo.com) under **Settings → Convo API**. It starts with `convo_` and is shown only once.
2. Install the server. It needs Node.js 18 or later.

   ```bash
   npm install -g @itsconvo/mcp-server
   ```

3. Add it to your client. For Claude Desktop, edit `~/Library/Application Support/Claude/claude_desktop_config.json` on macOS or `%APPDATA%\Claude\claude_desktop_config.json` on Windows, then restart Claude Desktop. Cursor takes the same block in `mcp.json`; restart Cursor after saving.

   ```json
   {
     "mcpServers": {
       "convo": {
         "command": "convo-mcp",
         "env": { "CONVO_API_KEY": "convo_..." }
       }
     }
   }
   ```

If the client can't find `convo-mcp`, which happens when Node is installed with a version manager such as nvm, use `"command": "npx"` with `"args": ["-y", "@itsconvo/mcp-server"]` instead.

## Tools

The hosted server has 9 read-only tools. The local server has all 14.

| Tool | What it does | Parameters | Server |
|------|--------------|------------|--------|
| `meetings_list` | Lists calls, newest first | `limit` (1–100, default 20), `search` (title or transcript), `since` (ISO 8601) | Both |
| `meetings_get_transcript` | Returns a call's transcript | `meeting_id` | Both |
| `meetings_get_summary` | Returns key points: topics, decisions, action items. Local generates missing ones, for free. Hosted returns saved ones only. | `meeting_id` | Both |
| `meetings_get_feedback` | Returns coaching feedback. Local generates missing feedback for one AI credit. Hosted returns saved feedback only. | `meeting_id` | Both |
| `meetings_ask` | Answers a question about one call, for one AI credit | `meeting_id`, `question` (up to 500 characters) | Local |
| `meetings_draft_email` | Drafts a follow-up email, for one AI credit | `meeting_id`, `recipient_name`, `tone` (`professional`, `casual` or `concise`) | Local |
| `meetings_share` | Creates a public link to a call | `meeting_id` | Local |
| `calendar_upcoming` | Lists upcoming Google or Outlook events | `max_results` (1–50, default 10) | Local |
| `account_info` | Shows your plan and AI credit usage | none | Local |
| `intelligence_prepare` | Briefs you from past calls that match a person, company or topic, with open action items and decisions | `search`. Local also takes `max_past_meetings` (1–20, default 10). | Both |
| `intelligence_weekly_digest` | Sums up calls over a period: total meeting time, all decisions and all action items | `days` (1–90, default 7) | Both |
| `intelligence_find_action_items` | Finds action items across recent calls | `days` (1–90, default 14), `owner` | Both |
| `intelligence_prepare_for_contact` | Returns the Convo Memory briefing on one contact | `email`, plus `history_limit` locally (default 25) or `historyLimit` hosted (default 10), 1–50 | Both, Memory |
| `intelligence_unresolved_threads` | Lists open action items across your contacts | `limit` (1–100, default 25) | Both, Memory |

Hosted summaries and feedback must already exist in Convo. Your AI assistant can use the retrieved transcript or summary to answer questions and draft emails itself; this does not call Convo's local generation tools.

### Built-in prompts

These pre-built workflows appear as prompt templates in your AI assistant. Both servers have them.

| Prompt | Description |
|--------|-------------|
| `meeting-prep` | Prepare for an upcoming meeting by reviewing past interactions with a person, company or topic |
| `weekly-review` | Get a consolidated review of your week |
| `follow-up-blitz` | Draft follow-up emails for all recent meetings at once (looks back 3 days by default) |

The local server also offers two resources, `convo://meetings/recent` and `convo://meetings/{id}/summary`.

## Example conversations

**Preparing for a meeting:**
> "I have a call with Sarah from Acme Corp tomorrow. What should I know?"

The AI uses `intelligence_prepare` to search your past meetings, pull their summaries and action items, and give you a briefing with suggested talking points.

**Catching up on action items:**
> "What action items am I behind on from the last two weeks?"

The AI uses `intelligence_find_action_items` to scan recent meetings and return the open items with owners, priorities and the meetings they came from.

**Drafting follow-ups:**
> "Draft follow-up emails for all my calls from the last 3 days"

The AI can list recent meetings and draft emails from their summaries. With the local server, it can also use Convo's `meetings_draft_email` tool.

**Asking about a specific meeting:**
> "What did we decide about pricing in the Q1 review?"

The AI can search for the meeting and read its transcript to answer. With the local server, it can also use Convo's `meetings_ask` tool.

## Troubleshooting

**The Claude connector shows as disconnected after sign-in.** Check your Convo subscription first: the hosted server requires Starter or above. If your subscription is active, reconnect Convo and check the error shown; a disconnected status alone does not identify the cause.

**Claude's sign-in page never appeared.** The browser may have blocked the pop-up. Allow pop-ups for claude.ai and click **Connect** again. Also confirm that Convo was added as a custom connector and that your workspace permits it.

**An older ChatGPT or Codex chat asks to reconnect.** Start a new chat and pick Convo with **@**. In Codex, restart the app first if Convo is missing. The [Plugins page](https://chatgpt.com/plugins) opens the directory, not a direct Convo sign-in page. Open your existing Convo connection there if it needs authentication.

**The local server stops with "CONVO_API_KEY environment variable is required".** Add the key to the `env` block of your configuration.

**A tool returns "API access requires a Starter plan or above".** The local server needs Convo Starter or above. Upgrade at [itsconvo.com/pricing](https://www.itsconvo.com/pricing).

**A tool returns "Invalid API key".** The key is wrong or revoked. Create a new one in **Settings → Convo API**.

**A tool returns "Rate limit exceeded" or "Monthly AI generation limit reached".** The first clears at the next full hour. For the second, see [AI credits](/tiers#ai-credits). `account_info` shows your usage.

**The REST API returns "This credential only permits read-only MCP access".** Keys from an MCP sign-in work only with the hosted server. Create an API key in the app for the REST API.

## Links

- [Convo](https://www.itsconvo.com)
- [npm package](https://www.npmjs.com/package/@itsconvo/mcp-server)
- [GitHub](https://github.com/itsconvo/mcp-server)
- [OpenAPI specification](https://docs.itsconvo.com/api/openapi)
- [Model Context Protocol](https://modelcontextprotocol.io)