> For the complete documentation index, see [llms.txt](https://docs.panora.exchange/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.panora.exchange/ai/mcp-servers.md).

# MCP Servers

## MCP Servers

Panora ships **two MCP servers**. Install whichever fits your workflow — or both.

| Server            | Transport                        | What it does                                                                                  |
| ----------------- | -------------------------------- | --------------------------------------------------------------------------------------------- |
| **`panora-docs`** | HTTP (hosted)                    | Search + fetch pages from these docs                                                          |
| **`panora`**      | stdio (bundled in `@panora/cli`) | Quote, swap, DCA, limit, prices, tokens, balances — signs and submits with your stored wallet |

### Docs MCP — hosted, no install

```
https://docs.panora.exchange/~gitbook/mcp
```

Two tools: `searchDocumentation(query)`, `getPage(url)`.

#### Claude Code

```bash
claude mcp add --scope user --transport http \
  panora-docs https://docs.panora.exchange/~gitbook/mcp
```

#### Cursor / Claude Desktop / Windsurf

```json
{
  "mcpServers": {
    "panora-docs": {
      "url": "https://docs.panora.exchange/~gitbook/mcp"
    }
  }
}
```

#### claude.ai

Settings → **Connectors** → **Add custom connector** → paste the URL.

### Executor MCP — bundled in @panora/cli

`panora-mcp` is one of the two binaries shipped by [`@panora/cli`](https://www.npmjs.com/package/@panora/cli). Stdio transport. Exposes \~17 tools across swap, DCA, limit, prices, tokens, balances, and account management.

#### Claude Code

```bash
# Public-tier key (works on first run)
claude mcp add --scope user --transport stdio \
  -- panora npx -y -p @panora/cli panora-mcp

# Your own API key (higher rate tier)
claude mcp add --scope user --transport stdio \
  --env PANORA_API_KEY=panora_... \
  -- panora npx -y -p @panora/cli panora-mcp
```

#### Cursor / Claude Desktop / Windsurf

```json
{
  "mcpServers": {
    "panora": {
      "command": "npx",
      "args": ["-y", "-p", "@panora/cli", "panora-mcp"],
      "env": {
        "PANORA_API_KEY": "panora_..."
      }
    }
  }
}
```

### Read-only mode

By default, `panora-mcp` exposes all \~17 tools — including the 5 destructive ones (`execute_swap`, `create_dca`, `cancel_dca`, `create_limit`, `cancel_limit`) that sign and submit on-chain.

To run with **signing disabled**, pass `--read-only` or set `PANORA_MCP_READ_ONLY=1`. Destructive tools are filtered out of `tools/list` entirely (agents don't see them) and any direct call is rejected.

#### CLI flag

```bash
npx -y -p @panora/cli panora-mcp --read-only
```

#### Environment variable (Claude Desktop / Cursor)

```json
{
  "mcpServers": {
    "panora": {
      "command": "npx",
      "args": ["-y", "-p", "@panora/cli", "panora-mcp"],
      "env": {
        "PANORA_MCP_READ_ONLY": "1"
      }
    }
  }
}
```

#### When to use

* **Hosted MCP deploys** (ChatGPT custom GPTs, Claude.ai connectors) where no wallet should ever be present.
* **Demo / shared workstations** — read prices, tokens, balances without signing risk.
* **CI / testing** — verify quote and build paths without touching real funds.

#### What stays available

`quote_swap`, `build_swap_tx`, `get_prices`, `list_tokens`, `search_tokens`, `get_chart`, `get_markets`, `get_balances`, `get_account_info`, `list_crosschain_tokens`, `list_dca_orders`, `list_limit_orders`, `decode_unsigned_tx`. `build_swap_tx` returns unsigned txData the user can sign elsewhere (browser wallet, `panora sign`).

The default mode is **unchanged** — destructive tools remain enabled. Read-only is opt-in.

### Verify

```bash
claude mcp list
```

Both servers should show `connected`.

### Security

The executor MCP can sign transactions with your stored wallet. Per-account `allowMcpAutoSign` gate (default ON when you import an account); pass `--no-allow-mcp-auto-sign` on `panora account import` to require manual signing. Every sign/submit appends to `~/.local/state/panora/audit.log`. Use a wallet with limited funds for AI-driven trading.

### Related

* Agent Skills — playbooks that teach your agent which MCP tool to call.
* CLI — the command-line companion to the executor MCP.
* [`@panora/cli`](https://www.npmjs.com/package/@panora/cli) on npm.
