# Set up RecordMeeting for your agent

These are the official RecordMeeting setup instructions. Work through them in order, run the commands yourself, and tell the user what you are doing as you go.

RecordMeeting records Google Meet, Zoom, Teams, WebEx, Telegram, Discord and WhatsApp calls, then transcribes and summarizes them. Connecting it over MCP lets you list the user's meetings, read their transcripts, search across them, and pull the notes for a call.

## Step 1: Connect with OAuth (preferred)

The MCP server is `https://api.recordmeeting.com/mcp`. It speaks streamable HTTP and supports OAuth 2.1 with dynamic client registration, so most tools can connect without any key: add the server with no headers, and the tool opens a RecordMeeting page in the browser where the user signs in and approves the connection. There is no local process to run, so ignore any instinct to install a package or wrap the server in a stdio bridge.

Pick the section that matches the user's tool.

### Claude Code

```bash
claude mcp add --transport http recordmeeting https://api.recordmeeting.com/mcp
```

Then tell the user to run `/mcp` inside Claude Code, pick `recordmeeting`, and choose Authenticate. A browser tab opens on recordmeeting.com; once they approve, the connection is live.

### Cursor

Write `.cursor/mcp.json` in the project, or `~/.cursor/mcp.json` to make it available everywhere:

```json
{
  "mcpServers": {
    "recordmeeting": {
      "url": "https://api.recordmeeting.com/mcp"
    }
  }
}
```

If the file already exists, merge the `recordmeeting` entry into the existing `mcpServers` object instead of overwriting the file. Cursor shows a "Needs login" state next to the server in Settings, then MCP; the user clicks it to open the consent page.

### Claude Desktop and Claude.ai

Ask the user to open Settings, then Connectors, then Add custom connector, and paste `https://api.recordmeeting.com/mcp`. Claude handles the sign-in.

### ChatGPT

Ask the user to open Settings, then Connectors (or Apps), choose Create, and paste `https://api.recordmeeting.com/mcp` with OAuth authentication. ChatGPT redirects them to the consent page.

### Any other agent that supports OAuth for remote MCP servers

Point it at `https://api.recordmeeting.com/mcp` with no headers. The server answers 401 with a `WWW-Authenticate` header that leads to the discovery documents, and the tool takes it from there.

## Step 2: Fall back to an API key if the tool has no OAuth support

Some tools only support static headers. For those, authenticate with a RecordMeeting API key instead.

Ask the user for their key. If they do not have one, tell them to open https://recordmeeting.com/app/settings, create a key in the API keys section, and paste it back to you. Wait for the key before continuing. A key is shown once at creation, so if the user has lost theirs they need to create a new one.

Once the key is in place, never print it back to the user, never echo it in a command you show them, and never write it into a file that is tracked by version control. Replace `YOUR_API_KEY` with their key everywhere it appears.

### Claude Code with a key

```bash
claude mcp add --transport http recordmeeting https://api.recordmeeting.com/mcp --header "Authorization: Bearer YOUR_API_KEY"
```

### Cursor or any JSON-configured tool with a key

```json
{
  "mcpServers": {
    "recordmeeting": {
      "url": "https://api.recordmeeting.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}
```

### Codex

Add to `~/.codex/config.toml`, or to `.codex/config.toml` for a single project:

```toml
[mcp_servers.recordmeeting]
url = "https://api.recordmeeting.com/mcp"
http_headers = { Authorization = "Bearer YOUR_API_KEY" }
```

### Any other agent with a key

Point it at `https://api.recordmeeting.com/mcp` and set the header `Authorization: Bearer YOUR_API_KEY`. That is all the server needs.

## Step 3: Check that it works

Confirm the connection before telling the user you are done.

1. Call `list_recordings` with `status` set to `COMPLETED` and `limit` set to `1`.
2. Take the `id` from the result and call `get_transcript` with it as `recording_id`.

If both calls return data, the setup is working. Report the title of the recording you found so the user can see it reached their real account.

If a call fails with a 401 on an OAuth connection, ask the user to authenticate again from their tool. On an API key connection, the key is wrong, expired, or was revoked; send the user back to https://recordmeeting.com/app/settings for a fresh one. If the user has no completed recordings yet, `list_recordings` returns an empty list, which still confirms the connection is good.

## What you can do once connected

| Tool | Purpose |
| --- | --- |
| `list_recordings` | List recordings, filtered by status, date, folder or organization |
| `get_recording` | Details for one recording, including the meeting notes |
| `get_transcript` | Transcript segments for a recording |
| `search_recordings` | Search by keyword across titles and transcripts |
| `get_recording_by_date` | Find recordings from a date or date range |
| `update_recording` | Change a recording title or its meeting notes |
| `delete_recording` | Delete a recording permanently |
| `get_share_link` | Create or replace a sharing link |
| `list_organizations` | Organizations the user belongs to |
| `list_folders` | Folders in an organization |
| `list_members` | Members of an organization |

`delete_recording` is irreversible and `get_share_link` makes a recording reachable by anyone holding the link. Confirm with the user before calling either one.

## Resources

- MCP guide: https://support.recordmeeting.com/user-guide/mcp-server
- API authentication: https://support.recordmeeting.com/api-reference/authentication
- API keys and connected agents: https://recordmeeting.com/app/settings
- Auth reference for agents: https://api.recordmeeting.com/auth.md
- This file: https://recordmeeting.com/agent-setup/prompt.md
