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

# MCP setup

> Connect Claude, ChatGPT, Perplexity, or any MCP-compatible client to your Scanova account.

<Note>
  This walkthrough is written from the dashboard's MCP integration component (`McpBody`) and its config, plus the real, public `trycon/scanova-mcp` server source — not from a live click-through. The test account provisioned for this review hit a passkey MFA challenge with no accessible backup code, which blocked an automated browser login before the panel could be screenshotted. Every URL, client-tab list, and step below is transcribed from the component's actual rendered copy, so it should match the live panel exactly — flag it if it doesn't.
</Note>

There are two ways to connect, depending on whether your AI tool has native OAuth-based connector support.

## Prerequisite

Your account needs the MCP integration unlocked — see [Access requirements](/mcp/overview#access-requirements). If the **Integrations → Model Context Protocol** card shows **Upgrade** instead of **Connect**, the rest of this page won't apply yet.

## Step 1: Open the MCP integration

From the dashboard, go to **Integrations** and click the **Model Context Protocol** card. This opens a setup panel showing your Scanova MCP server URL:

```
https://mcp.scanova.io/mcp
```

with an **OAuth** badge and a copy button. This is the one URL every client below connects to — it's a real, live endpoint (verified against the deployed server's own source and its `/health`/`/` info responses), not a placeholder.

## Option A: OAuth-native clients (Claude, ChatGPT, Perplexity)

The panel has a tab per client, each with its own numbered steps and a **Client ID** / **Client Secret** pair shown inline (copy them from the panel itself — they're not reproduced here). These are public connector identifiers for that specific AI product, not a personal secret; you still complete a real OAuth sign-in and consent to Scanova afterwards.

<Tabs>
  <Tab title="Claude">
    <Steps>
      <Step title="Open Connectors settings">
        In Claude, open **Settings → Connectors**.
      </Step>

      <Step title="Add a custom connector">
        Click **+ Add custom connector**.
      </Step>

      <Step title="Paste the server URL">
        Paste `https://mcp.scanova.io/mcp` from the panel.
      </Step>

      <Step title="Paste the OAuth credentials">
        Paste the **Client ID** and **Client Secret** shown in the panel's Claude tab.
      </Step>

      <Step title="Connect and authorize">
        Click **Add**, then **Connect**, and approve access. Sign in to Scanova when prompted.
      </Step>
    </Steps>
  </Tab>

  <Tab title="ChatGPT">
    <Steps>
      <Step title="Turn on developer mode">
        In ChatGPT, open **Settings → Apps → Advanced settings** and turn on **Developer mode**.
      </Step>

      <Step title="Create an app">
        Create an App and paste `https://mcp.scanova.io/mcp` as the server URL.
      </Step>

      <Step title="Paste the OAuth credentials">
        Click **Advanced OAuth settings** and paste the **Client ID** and **Client Secret** shown in the panel's ChatGPT tab.
      </Step>

      <Step title="Authorize">
        Authorize Scanova when prompted, then enable it from the tools menu in your chat.
      </Step>
    </Steps>
  </Tab>

  <Tab title="Perplexity">
    <Steps>
      <Step title="Add a custom connector">
        In Perplexity, open **Customise → Connectors** and click **+ Add Custom Connector**.
      </Step>

      <Step title="Name it and paste the server URL">
        Add a name and paste `https://mcp.scanova.io/mcp` as the server URL.
      </Step>

      <Step title="Paste the OAuth credentials">
        Click the **Advanced** toggle and paste the **Client ID** and **Client Secret** shown in the panel's Perplexity tab.
      </Step>

      <Step title="Add and authorize">
        Click **Add**, authorize Scanova when prompted, and start using it in your Perplexity conversations.
      </Step>
    </Steps>
  </Tab>
</Tabs>

## Option B: Config-file clients (Cursor, VS Code, Claude Desktop, or anything else)

For MCP clients that don't have a native OAuth connector UI — they take a JSON config file instead — expand **Use a token instead** at the bottom of the panel. This generates a Scanova [Management API](/api-reference/management-api/overview) key with `environment=mcp`, the same token type documented in [Creating an API token](/api-reference/management-api/tokens/create). Click **Generate token**, then copy the value shown (masked in the panel; copy button reveals the full value to your clipboard).

Add it to your client's MCP config as the `Authorization` header value — this is the exact format documented in the server's own README:

<CodeGroup>
  ```json Cursor (~/.cursor/mcp.json) theme={null}
  {
    "mcpServers": {
      "scanova-mcp": {
        "transport": "http",
        "url": "https://mcp.scanova.io/mcp",
        "headers": {
          "Authorization": "YOUR_SCANOVA_MCP_TOKEN"
        }
      }
    }
  }
  ```

  ```json VS Code (~/.vscode/mcp.json) theme={null}
  {
    "mcpServers": {
      "scanova-mcp": {
        "transport": "http",
        "url": "https://mcp.scanova.io/mcp",
        "headers": {
          "Authorization": "YOUR_SCANOVA_MCP_TOKEN"
        }
      }
    }
  }
  ```

  ```json Claude Desktop (claude_desktop_config.json) theme={null}
  {
    "mcpServers": {
      "scanova-mcp": {
        "transport": "http",
        "url": "https://mcp.scanova.io/mcp",
        "headers": {
          "Authorization": "YOUR_SCANOVA_MCP_TOKEN"
        }
      }
    }
  }
  ```
</CodeGroup>

<Warning>
  Put the raw token value in the `Authorization` header — no `Bearer` prefix. The server reads whatever's in that header (it also accepts `X-API-Key` or `Scanova-API-Key`) and forwards it as-is to Scanova's Management API, which rejects anything other than the bare key.
</Warning>

Restart your IDE/client after saving the config.

## Revoking access

**Token clients:** back in the panel's expanded **Use a token instead** section, click the trash icon next to the token and confirm. This immediately disables every MCP client using that token.

**OAuth clients (Claude/ChatGPT/Perplexity):** remove the connector from that AI tool's own connector/settings list — it uses a standard OAuth access token issued to that specific client, independent of the token fallback above.

## Troubleshooting

* **"Invalid token" / tool calls failing with a 401** — the token was revoked or has expired. Generate a new one and update your client's config.
* **Tool not found after adding the server** — restart your IDE or client; most MCP clients only fetch the tool list once, at startup or connection time.
* **Connection errors** — double check the URL is exactly `https://mcp.scanova.io/mcp` (not `/health` or the bare origin) and that your network can reach it.

## Next step

See [Available tools](/mcp/available-tools) for everything your AI assistant can now do.

## Related

* [MCP overview](/mcp/overview) — what the server does, access requirements, and the `INTEGRATION_MCP` quota gate.
* [Available tools](/mcp/available-tools) — the full, verified list of tools available once you're connected.
* [Create an API token](/api-reference/management-api/tokens/create) — the same key type the token-fallback option here generates, with `environment=mcp`.
* [Management API overview](/api-reference/management-api/overview) — the two-host auth architecture the token fallback authenticates against.
