> ## Documentation Index
> Fetch the complete documentation index at: https://summation-676748f5-docs-api-and-integrations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP Server

> Connect any MCP-capable agent to Summation through the hosted MCP server — curated, non-destructive data tools over your workspace.

Summation hosts a Model Context Protocol (MCP) server that exposes your workspace to MCP-capable agents — Claude, Codex, or anything that speaks streamable HTTP:

```text theme={null}
https://mcp.summation.com/mcp
```

## What it exposes

A curated set of non-destructive tools over the public API, including:

* **Analyst** — ask data questions in natural language (`ask_analyst`), with multi-turn follow-ups
* **Catalog** — search and describe tables, views, connections, and lineage; preview data
* **Query** — bounded, read-only SQL execution
* **Reports** — generate, validate, and export reports
* **Files** — upload, download, and import files to tables
* **Playbooks & schedules** — list, create, pause, resume, and trigger recurring runs

Tools that send email (like schedule creation) describe that in their tool definition so agents confirm recipients first. The server is stateless — no session affinity required.

## Authentication

Every request needs a Summation bearer credential in the `Authorization` header.

<Note>
  **Easiest path:** the [Claude plugin](/integrations/claude-plugin) registers this server automatically when you sign in — no manual configuration at all.
</Note>

To connect manually, you need a credential:

* **Your own session** — sign in through the Addison plugin (`/addison:signin`); it stores a device-login credential locally.
* **A machine credential** — ask your Summation admin for API credentials, then exchange them for an access token via the [Public API](/integrations/public-api).

### Claude Code

```bash theme={null}
claude mcp add -s user --transport http summation https://mcp.summation.com/mcp \
  --header "Authorization: Bearer $SUMMATION_CREDENTIAL"
```

### Codex

In `~/.codex/config.toml`:

```toml theme={null}
[mcp_servers.summation]
url = "https://mcp.summation.com/mcp"
bearer_token_env_var = "SUMMATION_CREDENTIAL"
```

### Other MCP clients

Any client that supports streamable HTTP with a custom `Authorization` header works the same way. The server advertises its metadata at:

```text theme={null}
https://mcp.summation.com/.well-known/oauth-protected-resource
```

<Note>
  **Browser-based OAuth sign-in is coming.** The server already returns the standard `401` challenge with resource metadata; once the authorization server ships, MCP clients that implement the MCP authorization spec will sign in with a browser flow — no header configuration needed.
</Note>

## Scopes

Tokens carry scopes that gate tool access:

| Scope           | Grants                                                     |
| --------------- | ---------------------------------------------------------- |
| `agent:read`    | Read-only tools — catalog, query, previews, report content |
| `agent:write`   | Mutating tools — report generation, playbooks, schedules   |
| `tables:append` | File imports into tables                                   |

A valid token without the required scope gets a `403` with the missing scope named.

## Behavior notes

* **Long-running tools return one buffered result.** Analyst questions, report generation, and validation take roughly 15–60 seconds and arrive as a single response. Set client tool timeouts to at least 120 seconds.
* **Auth errors mean an expired or revoked credential** — mint a fresh one and update the header.
* Include the `request_id` from any error when contacting support; it joins your client-side failure to server-side traces.
