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

# Quickstart: Connect Your AI Assistant to CloudTalk

> Connect Claude, Cursor, or any MCP-compatible client to the CloudTalk MCP server in five minutes using your API Access Key.

This guide connects an AI assistant to your CloudTalk account. By the end, the assistant can search your calls, read transcripts, and act on your account. See the [Overview](/guides/mcp/overview) for everything it can do.

## Prerequisites

* A CloudTalk account on the **Essential plan or higher**; MCP isn't available on Starter. Check your plan under **Account → Billing**, or [compare plans](https://www.cloudtalk.io/pricing/).
* An **API Access Key ID** and **API Access Key Secret**. If you haven't generated these yet, follow the [Authentication guide](/guides/authentication) first.

<Warning>
  Treat the key pair like a password: anyone holding it can read your call and contact data and act on your account through an assistant. Revoke it from the Dashboard at any time.
</Warning>

<Steps>
  <Step title="Encode Your API Key">
    The MCP server uses HTTP Basic authentication. Combine your key pair into one header value:

    ```bash theme={"system"}
    printf '%s:%s' 'YOUR_KEY_ID' 'YOUR_KEY_SECRET' | base64 | tr -d '\n'
    ```

    <Note>
      `tr -d '\n'` matters: on Linux, `base64` wraps long output across lines, and a line break inside the header value produces a `401`.
    </Note>
  </Step>

  <Step title="Connect Your Client">
    The server URL is the same for every client:

    ```
    https://mcp.cloudtalk.io
    ```

    <Tabs>
      <Tab title="Claude Code">
        ```bash theme={"system"}
        claude mcp add --scope user --transport http -H "Authorization: Basic <BASE64>" -- cloudtalk https://mcp.cloudtalk.io
        ```

        See [Claude Code MCP documentation](https://docs.anthropic.com/en/docs/claude-code/mcp).
      </Tab>

      <Tab title="Claude.ai and Desktop">
        These share one connector mechanism — Claude reaches the server from Anthropic's cloud, not from your machine, so the setup is identical in the browser and in the desktop app. You add the connector here, not on a phone; once it exists it is available in the Claude mobile apps too. Which Claude plans can add one, and any limits on how many, are Anthropic's to state — see [About custom connectors](https://support.claude.com/en/articles/11175166-about-custom-connectors-remote-mcp).

        1. On a personal plan: **Customize → Connectors**, then **+ → Add custom connector**. On Team and Enterprise an **organization owner** does it in **Organization settings → Connectors → Add**, hovers **Custom** and picks **Web**; members then click **Connect**. If you are not an owner, you will not see the option at all.
        2. Give it a **Name** and set **Remote MCP server URL** to `https://mcp.cloudtalk.io`, then **Continue**.
        3. **Change Authentication to `None`.** This is the step that decides whether the connector works. Claude probes the server first and pre-selects **Always required**, marked *Detected* — accept that and the connection fails with *"Couldn't reach CloudTalk MCP. You can check the server URL and verify the server is running."* Nothing is wrong with the URL or the server: Claude is looking for an OAuth authorization server, CloudTalk MCP publishes none yet, and it reports the absence as an unreachable server. `None` is the right option and Claude's own description of it says so — *"for servers with open access, or for servers that use an API key instead of OAuth"*. Picking it is also what makes the header below the connector's credential rather than a supplement to an OAuth token, and it hides the **OAuth client** section, which does not apply.
        4. Under **Request headers**, click **+ Add header**, pick `authorization` as the header name, and paste `Basic <BASE64>` from Step 1 as the value. Include the scheme — Claude's own hint says the value is sent exactly as entered, so `Basic ` with the trailing space must be part of what you paste. Leave **Required** checked.
        5. Click **Add**, then toggle the connector on and start a new chat.

        <Note>
          Header values are stored write-only — Claude never shows them again. To rotate the key, edit the header and paste the new value; you cannot read back what is there to check it.
        </Note>

        <Warning>
          The header is stored on the connector, not per person, so everyone who can use that connector acts as the CloudTalk company whose key it holds — including its write tools. On Team and Enterprise, that is everyone in the organization. Use a key from the account you mean to share, and prefer per-user OAuth once it is available.

          **One CloudTalk account per Claude account, for now.** Claude allows one connector per server URL, so a second CloudTalk account cannot be a second connector on the same URL. If you work across several accounts, use **Claude Code** and register one server per account — it has no such limit — until OAuth sign-in ships.
        </Warning>
      </Tab>

      <Tab title="Cursor">
        Add to `~/.cursor/mcp.json`:

        ```json theme={"system"}
        {
          "mcpServers": {
            "cloudtalk": {
              "url": "https://mcp.cloudtalk.io",
              "headers": { "Authorization": "Basic <BASE64>" }
            }
          }
        }
        ```

        See [Cursor's MCP documentation](https://cursor.com/docs/mcp).
      </Tab>

      <Tab title="ChatGPT">
        <Info>
          **Coming soon with OAuth.** ChatGPT custom connectors accept OAuth sign-in only; they can't send an API-key header. Once CloudTalk ships OAuth support, you'll add CloudTalk in ChatGPT via **Settings → Connectors** (developer mode) and sign in with your CloudTalk login.
        </Info>
      </Tab>

      <Tab title="Other clients">
        MCP is an open protocol supported by many clients. Follow your client's MCP setup instructions with `https://mcp.cloudtalk.io` as the server URL and the `Authorization: Basic <BASE64>` header. The Cursor configuration shape works for most.
      </Tab>
    </Tabs>

    <Tip>
      To give the assistant a focused tool set for one job, append a profile name to the URL, e.g. `https://mcp.cloudtalk.io/analytics`. See [Profiles](/guides/mcp/overview#profiles).
    </Tip>
  </Step>

  <Step title="Verify the Connection">
    Ask the assistant:

    > Run the `cloudtalk_health_check` tool.

    A successful run confirms three things at once: your key was accepted, your company is enabled for MCP, and which company and user the key resolved to. **Check the company ID matches the account you meant to connect.**

    <Note>
      An API Access Key belongs to the company, not to a person, so `user_id` comes back as `0`. That is the expected value and means "no specific user" — not user number 0. Tools that act as a particular agent take that agent's id as a parameter instead.
    </Note>
  </Step>

  <Step title="Ask Your First Question">
    Try:

    > Show me yesterday's missed calls that have no tags.

    You don't call tools by name; ask in natural language and the assistant picks the right ones. More ideas in [Common use cases](/guides/mcp/overview#common-use-cases).
  </Step>
</Steps>

## Troubleshooting

| Symptom                                                | Fix                                                                                                                                                                                                                                      |
| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `401`                                                  | Re-encode the key; no line breaks in the base64 value; check the key wasn't revoked                                                                                                                                                      |
| `403`                                                  | MCP isn't enabled for your account. Confirm you're on Essential or higher, then contact your CloudTalk representative                                                                                                                    |
| `429`                                                  | Rate limit. Wait a minute                                                                                                                                                                                                                |
| Tools don't appear                                     | Restart the client after adding the connector                                                                                                                                                                                            |
| "Couldn't reach CloudTalk MCP" when adding a connector | The connector is set to an OAuth option; CloudTalk MCP has no OAuth metadata, so Claude cannot find an authorization server and reports it as unreachable. Re-add it with **Authentication: None** and an `authorization` request header |
| A tool returns "no data"                               | Run `cloudtalk_health_check` and confirm the company ID is the account you meant                                                                                                                                                         |

Most errors carry a `requestId`; quote it when contacting support. A `401` is rejected at the gateway before one is generated, so for a `401` quote your API Key ID instead. It also carries no `WWW-Authenticate` challenge, so a client that waits for one before asking you for credentials will just see the request fail.


## Related topics

- [Quickstart: Make Your First CloudTalk REST API Call](/guides/quickstart.md)
- [Changelog](/changelog.md)
- [CloudTalk MCP](/guides/mcp/overview.md)
