# Connect with MCP

Connect Claude Code, Claude Desktop or Cursor to your inbox through Rookery's MCP server and an API key.

Rookery for developers · Updated October 11, 2026 · https://userookery.com/developers/mcp/

Rookery has an MCP server, so AI assistants can work in your inbox with the tools below. It offers the same operations as the REST API and uses the same keys and the same [rate limit](https://userookery.com/developers/rate-limits/).

- **Address:** `https://app.userookery.com/mcp`
- **Transport:** Streamable HTTP. Each request gets a JSON answer; there are no sessions.
- **Sign-in:** an API key in the `Authorization: Bearer` header.

Start with a key that has **Read** and **Draft replies**, so a person approves every reply. See [Draft, don't send](https://userookery.com/developers/draft-dont-send/).

## Claude Code

Run this in your terminal, with your key in `ROOKERY_KEY`:

```bash
claude mcp add --transport http rookery https://app.userookery.com/mcp \
  --header "Authorization: Bearer $ROOKERY_KEY"
```

Then ask something like "What's waiting in my Rookery inbox?" **Settings → Integrations → API keys** shows this command with your new key filled in.

## Claude Desktop

Claude Desktop's own connectors sign in with OAuth, which Rookery doesn't offer yet. Until it does, connect through the `mcp-remote` bridge, which sends the header for you. Add this to `claude_desktop_config.json` (**Settings → Developer → Edit Config**), then restart Claude:

```json
{
  "mcpServers": {
    "rookery": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote", "https://app.userookery.com/mcp",
        "--header", "Authorization: Bearer ${ROOKERY_KEY}"
      ],
      "env": { "ROOKERY_KEY": "rk_xxx" }
    }
  }
}
```

Paste your key in place of `rk_xxx`. You need Node.js installed for `npx`.

## Cursor

Add Rookery to `~/.cursor/mcp.json`, or to `.cursor/mcp.json` in a project:

```json
{
  "mcpServers": {
    "rookery": {
      "url": "https://app.userookery.com/mcp",
      "headers": { "Authorization": "Bearer ${env:ROOKERY_KEY}" }
    }
  }
}
```

Set `ROOKERY_KEY` in the environment Cursor starts from, then turn the server on in **Cursor Settings → MCP**.

## Other clients

Point any MCP client that speaks Streamable HTTP at `https://app.userookery.com/mcp`, and send `Authorization: Bearer rk_…` with every request.

## The tools

An assistant only sees the tools its key's scopes allow.

| Tool | Needs | What it does |
|---|---|---|
| `list_conversations` | `read` | List conversations |
| `get_conversation` | `read` | Read a conversation |
| `add_note` | `write` | Add an internal note |
| `set_status` | `write` | Change status |
| `tag_conversation` | `write` | Tag or untag |
| `assign_conversation` | `write` | Assign |
| `reply` | `draft` or `send` | Reply to the customer |
| `request_documents` | `draft` or `send` | Ask the customer for documents |
| `list_mailboxes` | `read` | List mailboxes |
| `list_tags` | `read` | List tags |
| `search_documents` | `read` | Search documents |

Each tool's inputs are the same as its REST endpoint's, in the [API reference](https://userookery.com/developers/reference/).

## Coming soon

Signing in with OAuth instead of a key header, for clients that can't send one, like custom connectors in Claude on the web.
