> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pomerado.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up an MCP client

> Add a Pomerado MCP to Claude Code, Codex, Cursor, VS Code, Claude Desktop or another client.

This page shows how to add a Pomerado MCP to an MCP client. For the setup that fits your account, open **Connect agent** in the Dashboard's sidebar. Each integration's page has the same panel for its own MCP.

## Get your setup

<Steps>
  <Step title="Choose your client">
    Pick it from the Your agent menu.
  </Step>

  <Step title="Choose how to sign in">
    Without a key, the client signs you in with OAuth. With an API key, the setup reads the key from the `POMERADO_API_KEY` environment variable, so the config never holds the secret.
  </Step>

  <Step title="Copy the setup">
    Copying a setup that needs a key creates the key and shows it once; nothing is created before that. **Change access** sets the key's permissions first. Then run or paste the setup, sign in when the client asks, then refresh its tool list.
  </Step>
</Steps>

Programs can read the same setup from `GET /v1/connect`.

<Accordion title="Details">
  * A key from the Connect agent page carries every permission except managing keys and billing. A key from an integration's panel reaches only that integration. Both last 90 days.
  * Home's Connect panel has the same setup. Once you've connected an agent or hold an unexpired key, it folds to one row; **Connect another agent** opens it again.
</Accordion>

## Common clients

With OAuth, for the Pomerado MCP:

| Client | Setup |
| - | - |
| Claude Code | `claude mcp add --transport http pomerado 'https://mcp.pomerado.ai/mcp'`, then run `/mcp` and sign in |
| Codex | `codex mcp add pomerado --url 'https://mcp.pomerado.ai/mcp'`, which starts the sign-in |
| Cursor | `{"mcpServers": {"pomerado": {"url": "https://mcp.pomerado.ai/mcp"}}}` in Cursor's MCP settings |
| VS Code | `{"servers": {"pomerado": {"type": "http", "url": "https://mcp.pomerado.ai/mcp"}}}` in `.vscode/mcp.json` |
| Claude Desktop | Settings, Connectors, Add custom connector, with the name and URL. OAuth only. |

With an API key, the setup sends an Authorization header that reads the variable. For Claude Code:

```bash theme={null}
claude mcp add --transport http pomerado 'https://mcp.pomerado.ai/mcp' \
  --header 'Authorization: Bearer ${POMERADO_API_KEY}'
```

Set the variable where the client runs, then restart the client. On macOS, an app opened from the Dock or Finder doesn't read your shell profile, so open the client from a terminal.

## Troubleshoot

| Problem | Fix |
| - | - |
| `401 unauthorized` | Sign in again, or replace a revoked or expired key. To use OAuth instead, remove the key from the client's configuration. |
| `405` when you open the URL in a browser | Expected: an MCP takes POST requests from a client. |
| `400 keyless_url_credentials` | You sent a key to a URL ending in `/keyless`. Remove `/keyless` from the URL. |
| `404 not_found` on an integration | Copy the integration's URL again from its page. |

Some clients cut long tool calls short; see [wait for a result](/guides/jobs/wait-for-a-result). [Errors](/errors) lists every code.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.