> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.cloudraker.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.cloudraker.com/_mcp/server.

# MCP server

The CloudRaker MCP server fronts the gateway and exposes the **entire** API to MCP clients through Code Mode, plus a set of guided skills. Point Claude (or any MCP client) at it, authenticate with the same API key you use everywhere else, and it can search the API surface and run generated calls on your behalf.

## Host

The MCP server lives at **`https://mcp.cloudraker.com`**. The MCP endpoint is at the host root (`/`); OAuth discovery is under `/.well-known/*`.

## Authentication

The server accepts two Bearer credentials:

* **Organization API key** — send your [organization API key](/developers/authentication) as the Bearer token. The MCP server forwards it to the gateway, which validates it. This is the simplest static-credential path and uses the same key as the SDKs.
* **OAuth 2.0** — MCP clients that support OAuth discover the login flow via `/.well-known/*` and run an interactive sign-in. No manual token needed. Used by clients like claude.ai's custom connectors.

The server holds zero secrets, and your credential never enters the code-execution sandbox.

## Tools

The server exposes exactly **two** tools, built from the gateway's OpenAPI spec:

* **`search`** — search the API surface for operations relevant to a task.
* **`execute`** — run generated TypeScript against the gateway. The code runs in an isolated worker with no outbound network of its own; the real gateway call happens on the host with your bearer token injected.

Because both tools are derived from the live spec, the MCP server always covers the full API — there's no per-endpoint tool to maintain.

## Skills

Five guided skills ship as `skill://` resources:

1. `rakerone-getting-started`
2. `rakerone-concepts`
3. `rakerone-querying`
4. `rakerone-files` — the presigned-upload guide (register → PUT → poll → read). Uploads never stream through MCP; you always PUT to a presigned URL from your own environment.
5. `rakerone-actions-and-playbooks`

## Client setup

### Claude Code (API-key auth)

```bash
claude mcp add --transport http rakerone https://mcp.cloudraker.com \
  --header "Authorization: Bearer $RAKERONE_API_KEY"
```

Or in `.mcp.json`:

```json
{
  "mcpServers": {
    "rakerone": {
      "type": "http",
      "url": "https://mcp.cloudraker.com",
      "headers": { "Authorization": "Bearer <organization API key>" }
    }
  }
}
```

### claude.ai / Claude Desktop (OAuth)

Add a custom connector with the URL `https://mcp.cloudraker.com`. The client discovers OAuth via `/.well-known/*` and runs the interactive login — no manual token needed. To use a static key instead, use the header form above.

## Where to go next

#### [Authentication](/developers/authentication)

Where your API key comes from and how it's scoped.

#### [SDKs](/developers/sdks)

Prefer a typed client in your own code? Use the TypeScript or Python SDK.