# MCP server quickstart

This guide instructs you through your first question to the Azion MCP servers. The example uses Claude Code. It connects the docs server, which only reads, and then shows how to add the four servers that change your account.

- Create a personal token in Azion Console.
- Register the docs server in Claude Code with one command.
- Verify that Claude Code lists the server and its tools.
- Ask Claude Code a question that the server answers from the Azion documentation.

Every other client connects with the same server URL and token. Agent Setup has the steps for Cursor, GitHub Copilot, Windsurf, Codex, Gemini CLI, OpenCode, Claude Desktop, Warp, and Kiro.

[Agent Setup](/en/documentation/agent-setup/)

Three pieces connect, in this order:

1. The **personal token** identifies your Azion account.
2. The **server entry** `azion-docs` in Claude Code points at `https://docs-mcp.azion.com/mcp` and sends the token in the `Authorization` header of every request.
3. The **docs server** checks the token and gives Claude Code its tools and resources.

For more information about the servers, refer to [MCP server](/en/documentation/devtools/mcp/).

---

## Prerequisites

- An Azion account. To create one, refer to [Create an account](/en/documentation/fundamentals/creating-account/).
- Claude Code, installed on your machine. To use another client, refer to [Agent Setup](/en/documentation/agent-setup/).

---

## Create a personal token

The servers accept an Azion personal token as their credential. To create the token in Azion Console:

1. **Open the personal tokens page**

   Access [Azion Console](https://console.azion.com/) > **Account** > **Personal Token**. **Account** is the avatar menu.

2. **Select + Personal Token**

3. **Name the token**

   In the **General** section, enter a **Name**. For example: `mcp-server`. The servers act with the permissions of this token, so scope it to what the agent needs.

4. **Set the expiration**

   In the **Token** section, select a value in **Expires within**. The default is *1 day*.

5. **Select Save**

6. **Copy the token**

   In the **Personal Token has been created** dialog, select **Copy**. The dialog shows the token only once, so store it before you continue.

7. **Select Confirm**

The token appears in the **Personal Tokens** list, and its value is in your clipboard. For more information, refer to [How to manage a personal token](/en/documentation/guides/platform/account-and-billing/personal-tokens/).

Keep the token safe:

- Never commit a token. Add every configuration file that holds one to `.gitignore`.
- Store the token in an environment variable when your client supports it.
- Rotate your tokens regularly.

---

## Connect Claude Code

The `claude mcp add` command registers a server. The `-t http` flag selects the HTTP transport, `-s user` stores the server for every project, and `-H` sets the header that carries your token. Run the command, and replace `[TOKEN VALUE]` with your token:

```bash
claude mcp add "azion-docs" "https://docs-mcp.azion.com/mcp" -t http -s user -H "Authorization: Token [TOKEN VALUE]"
```

Claude Code stores the server in your user configuration, which is not a file in your project. The personal token goes in the `Token` scheme. A personal token sent with the `Bearer` scheme fails with `401`.

Claude Code has the docs server registered as `azion-docs`. To add another server, run the same command with its name and URL:

| Server  | Name            | URL                                 |
| ------- | --------------- | ----------------------------------- |
| build   | `azion-build`   | `https://build-mcp.azion.com/mcp`   |
| secure  | `azion-secure`  | `https://secure-mcp.azion.com/mcp`  |
| observe | `azion-observe` | `https://observe-mcp.azion.com/mcp` |
| storage | `azion-storage` | `https://storage-mcp.azion.com/mcp` |

These four servers create, change, and delete resources in your account. Add only the ones the agent needs. For what each one covers, refer to [Tools and resources](/en/documentation/devtools/mcp/tools/). For more information about Claude Code with Azion, refer to [Claude Code + Azion](/en/documentation/agent-setup/claude-code/).

---

## Verify the connection

The `claude mcp list` command checks every server that Claude Code has registered. Run it:

```bash
claude mcp list
```

The `azion-docs` line shows the server URL, the `HTTP` transport, and `✔ Connected`:

```text
azion-docs: https://docs-mcp.azion.com/mcp (HTTP) - ✔ Connected
```

To see the tools, run `/mcp` inside a Claude Code session and select `azion-docs`. The docs server lists seven tools. For the full list, refer to [Tools and resources](/en/documentation/devtools/mcp/tools/#docs-server-tools).

A request without a token fails with `401`, and a request with an invalid token fails with `403`. To diagnose a failed connection, refer to [Troubleshoot the MCP server](/en/documentation/devtools/mcp/troubleshooting/).

---

## Ask your first question

The `search_azion_docs_and_site` tool searches the Azion documentation and website. In a Claude Code session, ask a question that needs it:

```text
Search the Azion documentation: how to configure cache
```

The tool returns the documentation pages that best match the question, each with its title, content, and source URL. Claude Code builds its answer from these pages.

The other tools of the docs server return code samples, Azion CLI commands, Azion API operations, Terraform resources, and guides to deploy a static site. With the build and observe servers also connected, the agent can create rules and write GraphQL queries for your account. Try one of these prompts next:

- `I have a static website with HTML, CSS, and JavaScript files. Help me deploy it to Azion.`
- `Generate a query to analyze cache hit rates for my images.`
- `Create Rules Engine rules to add security headers including HSTS, X-Frame-Options, and CSP for my application. Preview them with dry_run first.`
- `My deployment is failing with error 503. How can I debug this?`

Claude Code answers questions about Azion from the docs server.

---

## Connect another client

Claude Code is one client among many. [Agent Setup](/en/documentation/agent-setup/) has a page for each supported client, with its configuration, a prompt to verify the connection, and the fixes for its common errors. Each page connects the docs server, and the other servers connect the same way with their URLs:

| Client         | Where the server is configured              | Setup page                                                              |
| -------------- | ------------------------------------------- | ----------------------------------------------------------------------- |
| Cursor         | `.cursor/mcp.json`                          | [Cursor + Azion](/en/documentation/agent-setup/cursor/)                 |
| GitHub Copilot | `.vscode/mcp.json`                          | [GitHub Copilot + Azion](/en/documentation/agent-setup/github-copilot/) |
| Windsurf       | `.codeium/windsurf/mcp_config.json`         | [Windsurf + Azion](/en/documentation/agent-setup/windsurf/)             |
| Codex          | `~/.codex/config.toml`                      | [Codex + Azion](/en/documentation/agent-setup/codex/)                   |
| Gemini CLI     | `~/.gemini/settings.json`                   | [Gemini CLI + Azion](/en/documentation/agent-setup/gemini-cli/)         |
| OpenCode       | `opencode.json`                             | [OpenCode + Azion](/en/documentation/agent-setup/opencode/)             |
| Claude Desktop | `claude_desktop_config.json`                | [Claude Desktop + Azion](/en/documentation/agent-setup/claude-desktop/) |
| Warp           | **Settings** > **Agents** > **MCP servers** | [Warp + Azion](/en/documentation/agent-setup/warp/)                     |
| Kiro           | `.kiro/settings/mcp.json`                   | [Kiro + Azion](/en/documentation/agent-setup/kiro/)                     |

[Agent Setup](/en/documentation/agent-setup/)

---

## Next steps

- [How the MCP server works](/en/documentation/devtools/mcp/how-it-works.md): The transport, the authentication, and how a coding agent reaches the tools.
- [Tools and resources](/en/documentation/devtools/mcp/tools.md): The inputs each tool takes, what it returns, and the static site resources.
- [MCP server guides and tutorials](/en/documentation/devtools/mcp/guides.md): Search the documentation, create rules, deploy a static site, and test cache behavior.
- [Agent Setup](/en/documentation/agent-setup.md): Connect Cursor, GitHub Copilot, Windsurf, Codex, Gemini CLI, OpenCode, Claude Desktop, Warp, or Kiro to Azion.
