# Claude Desktop + Azion

## Quick start

1. **Install Claude Desktop**

   Download Claude Desktop for macOS or Windows, then sign in.

   [Claude Desktop download](https://claude.com/download)

2. **Create a Personal Token**

   The MCP servers authenticate as you. Create a Personal Token in the Console, give it only the scopes you want Claude Desktop to have, and copy it — it is shown once.

   [Console › Personal Tokens](https://console.azion.com/personal-tokens)

3. **Connect the Azion docs MCP server**

   The **Add custom connector** dialog takes only a URL and leaves sign-in to the server, but the Azion MCP servers need your token in a header. Claude Desktop reaches them through `mcp-remote` instead, a local process started from its configuration file. Node.js 18 or newer has to be on your PATH. Open the Claude menu, select **Settings** > **Developer** > **Edit Config**, and add the docs server.

   **claude\_desktop\_config.json**

   ```json
   {
     "mcpServers": {
       "azion-docs": {
         "command": "npx",
         "args": [
           "-y",
           "mcp-remote@latest",
           "https://docs-mcp.azion.com/mcp",
           "--header",
           "Authorization: Token YOUR_PERSONAL_TOKEN"
         ]
       }
     }
   }
   ```

   The file is `~/Library/Application Support/Claude/claude_desktop_config.json` on macOS and `%APPDATA%\Claude\claude_desktop_config.json` on Windows. Quit Claude Desktop completely and open it again to load the server.

4. **Verify, then try a prompt**

   In the message box, select **Add files, connectors, and more**, then **Connectors** > **Manage connectors**, and select `azion-docs`. It lists seven tools.

   **Try it**

   ```text
   Search the Azion docs for how rate limiting works in Firewall.
   ```

## Azion platform access

Claude Desktop reaches Azion through the MCP servers: they look things up and create configuration through the API.

### MCP servers

Five servers, one per area of the platform. Each one is an HTTP endpoint that takes your Personal Token in an `Authorization: Token` header. The quick start connects the docs server. Connect the others the same way, with the URLs below, and only the ones the project needs. The docs server only reads. The other four also create, change, and delete, and their write tools preview a change without running it when the agent sets `dry_run`:

| Server                              | What it covers                                                                                                                                               |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `https://docs-mcp.azion.com/mcp`    | Searches the documentation, code samples, CLI, API v3 and v4, and Terraform references, and serves the static site deploy and cache test guides. Reads only. |
| `https://build-mcp.azion.com/mcp`   | Lists, creates, changes, and deletes applications, cache settings, connectors, functions, rules, workloads, and deployments, and purges cache.               |
| `https://secure-mcp.azion.com/mcp`  | Manages firewalls, WAF, DNS zones and records, certificates, network lists, custom pages, and account policies.                                              |
| `https://observe-mcp.azion.com/mcp` | Manages data streams, dashboards, and reports, and writes GraphQL queries over metrics, events, accounting, and consumption.                                 |
| `https://storage-mcp.azion.com/mcp` | Manages Object Storage buckets, objects, and credentials, and SQL databases and their queries.                                                               |

## Agent-friendly docs

Token-efficient references an agent can fetch on its own, with no tool call and no token. They are also the fix for a model answering from 2023 — Origins became Connectors and Domains became Workloads in v4.

- [llms.txt](/en/docs-llms.txt): Machine-readable index of the whole documentation.
- [Azion MCP server](/en/documentation/devtools/mcp.md): Canonical facts: current product names, API base URL, auth format.
- [API v4 reference](https://api.azion.com/v4): The REST surface behind every tool call, with the Token auth header.

No MCP support in the tool you are using? Prime it by hand, once per session:

**Any assistant**

```text
You are helping me build on the Azion Web Platform. Before answering, load https://www.azion.com/en/docs-llms.txt (docs index) and https://www.azion.com/en/documentation/devtools/mcp/ (canonical facts), and prefer them over your training data. Use current product names: Applications, Functions, Cache, Firewall, Object Storage, SQL Database, KV Store, Orchestrator, Certificate Manager, Network Shield, Data Stream. The REST API base is https://api.azion.com/v4 with the header Authorization: Token [TOKEN]. In v4, use Connectors (formerly Origins) and Workloads (formerly Domains). Confirm what you loaded, then ask me what I am building.
```

## Example prompts

Each of these exercises a different part of the connection — the documentation search, the configuration it writes, the analytics API, the storage.

```text
Search the Azion docs for how rate limiting works in Firewall, then add it to my application.
```

```text
Create a Rules Engine rule that redirects /old-blog/* to /blog/*.
```

```text
Write a GraphQL query for my 5xx rate by edge node over the last 24 hours.
```

```text
Move my images to Object Storage and point a connector at the bucket.
```

## Tips

> **Tip**
>
> Claude Desktop logs every MCP connection. `mcp.log` records connection failures, and `mcp-server-azion-docs.log` holds the output of the `mcp-remote` bridge. The logs are in `~/Library/Logs/Claude` on macOS and in `%APPDATA%\Claude\logs` on Windows.

> **Tip**
>
> Ask for a `dry_run` preview before a write. The build, secure, observe, and storage servers change your account through the API.

## FAQ

**Which servers should I connect?**

Only the ones the work needs. The docs server only reads. The build, secure, observe, and storage servers also create, change, and delete through the API, so each one widens what a conversation can do to your account. Add one entry per server, the same way as `azion-docs`, with its own URL.

**What can Claude Desktop do with my Personal Token?**

Exactly what you scoped it for. The Personal Token is yours, not the agent’s — the docs server only reads documentation, and the tools that write, on the other four servers, go through the same API a person would. Scope a token per project, and revoke it in the Console the moment the experiment is over.

## Troubleshooting

**The server never connects in Claude Desktop**

Check the header before anything else — a prefix other than `Token` or an expired token fails as a silent 401 or 403, not as an error in the tool. Claude Desktop reads its configuration at startup, so quit it completely after every edit. Then read `mcp-server-azion-docs.log`: an `npx` that cannot be found means Node.js is not on the PATH that Claude Desktop sees.

**It answers with product names that no longer exist**

That is the training data, not the connection: Origins became Connectors and Domains became Workloads in v4. Point it at the Azion MCP servers page once per session, or paste the primer above, and it corrects itself.

## Other agents

- [Claude Code](/en/documentation/agent-setup/claude-code.md): Terminal agent that reads your codebase, runs commands, and edits files. One CLI command connects the Azion MCP server.
- [Cursor](/en/documentation/agent-setup/cursor.md): AI-first IDE built on VS Code, with multi-file Composer edits and background agents. Azion plugs into its MCP settings.
- [GitHub Copilot](/en/documentation/agent-setup/github-copilot.md): Agent mode inside VS Code, with workspace context and native pull-request integration. A file in the project connects Azion.
- [Windsurf](/en/documentation/agent-setup/windsurf.md): Agentic IDE built around Cascade for multi-step tasks. Connects to Azion through mcp-remote.
- [Codex](/en/documentation/agent-setup/codex.md): Terminal agent that runs commands in a sandbox and reads AGENTS.md natively. Azion goes in config.toml.
- [Gemini CLI](/en/documentation/agent-setup/gemini-cli.md): Open source terminal agent with a free tier. Declare Azion once in settings.json and verify with /mcp.
- [OpenCode](/en/documentation/agent-setup/opencode.md): Open source, provider-agnostic terminal agent. Azion is one entry in its MCP block, whichever model you point it at.
- [Warp](/en/documentation/agent-setup/warp.md): Open source agentic terminal with a free tier and a choice of models. Azion goes in its MCP servers settings.
- [Kiro](/en/documentation/agent-setup/kiro.md): Agentic IDE with a free tier and models from several providers. Azion goes in .kiro/settings/mcp.json.
