# Claude



Claude is the only client with a documented OAuth path. Use it, and no
long-lived API key has to sit in a desktop app.

## Which Connection [#which-connection]

| You are using       | Connect with                                                |
| ------------------- | ----------------------------------------------------------- |
| **claude.ai** (web) | OAuth: [Claude OAuth setup](/mcp-server/claude-oauth-setup) |
| **Claude Desktop**  | OAuth, or an API key in `claude_desktop_config.json`        |
| **Claude Code**     | `claude mcp add --transport http` with a header             |

Configs for all three are in [API setup](/mcp-server/setup).

```bash
claude mcp add --transport http surface-forms https://app.withsurface.com/mcp \
  --header "Authorization: Bearer <your-api-key>"
```

## What It Is Good At [#what-it-is-good-at]

**Analysis over your funnel.** The `insights` bundle is the quickest way to
answer an ad hoc question: "which landing pages send high-scoring leads but
never produce meetings" is one turn.

```
https://app.withsurface.com/mcp?tools=insights&readonly=1
```

**Building forms end to end.** The `forms` bundle covers create, steps and
components, conditional routing, styling, the marketing pane, publish. Edits
save a draft; nothing a visitor sees changes until `publish_form` runs.

**Writing against the Vault.** The default connection includes the Vault tools,
so Claude reads your positioning and voice before drafting. See
[Vault over MCP](/mcp-server/vault).

## Choosing a Bundle [#choosing-a-bundle]

Loading all 128 tools in a long conversation fills the context with tool
definitions.

| Session                              | `?tools=`                  |
| ------------------------------------ | -------------------------- |
| "Answer questions about our numbers" | `insights` + `readonly=1`  |
| "Build and publish this form"        | *(default: forms + vault)* |
| "Draft and schedule content"         | `content`                  |
| "Everything, I'm exploring"          | `all`                      |

## Claude Code Specifically [#claude-code-specifically]

**Point it at the docs as well as the server.** `/llms-full.txt` is this whole
site in one file, so it can look a tool up instead of guessing.

**Give it a read-only server for exploration and a writable one for the task.**
That is a second `claude mcp add` under a second name:

```bash
claude mcp add --transport http surface-read \
  "https://app.withsurface.com/mcp?tools=all&readonly=1" \
  --header "Authorization: Bearer <your-api-key>"
```

<Warning>
  API keys are full-access by design. If a client should only read, add
  `?readonly=1`. The key alone does not restrict anything.
</Warning>

## Claude as an Answer Engine [#claude-as-an-answer-engine]

Claude is one of the four models scored in
[AI Visibility](/platform/ai-visibility/reading-the-score), alongside ChatGPT,
Gemini and Perplexity. A human who clicks through from Claude arrives as an AI
referral in [traffic analytics](/platform/traffic/analytics), tagged by engine.
