Guides

MCP

Connect Claude, ChatGPT, Cursor or any MCP client to Koast's MCP server. It runs the same operations as the REST API, on every paid plan.

Koast runs an MCP server at:

https://mcp.koast.ai/mcp

Its tools and the REST API come from the same registry, so a tool and its endpoint take the same inputs and return the same data. Most tools have a REST equivalent. A few exist only on MCP because their output is meant for a model, like preview-ads and suggest-structure-templates.

Connect a client

Assistants like Claude and ChatGPT connect by signing in with your Koast account: no key needed. Clients that only accept a static token use an organization API key with the MCP switch on.

Step by step, per client, in the Koast docs:

Plans

MCP works on every paid plan with an active subscription. The REST API and the CLI need an Agency plan. See Access and plans.

MCP or REST?

UseWhen
MCPAn AI assistant works with your campaigns in conversation
REST API or CLIYour own code, scripts, schedules or CI

A key can have both switches on. Scopes, brand limits and the publish ceiling are the same rules on both. See Authentication. Rate limits differ: MCP allows 120 reads and 30 writes a minute per key or OAuth login, while the REST API's limits are shared by the whole organization. See Rate limits.

Tool reference

Every tool, its required scope, whether it publishes, its input and output schema, and its REST endpoint: MCP tools.

The same list is public as JSON, for building your own tooling:

curl https://api.koast.ai/v1/mcp/tools.json
{
  "version": 1,
  "surface": "mcp",
  "tools": [
    {
      "id": "list-my-ad-accounts",
      "title": "List my ad accounts",
      "description": "Real list of ad accounts the current user can access (one per brand). …",
      "whenToUse": "Call before any per-account work when account scope is unknown. …",
      "scopes": ["read"],
      "publishes": false,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      },
      "inputSchema": { "type": "object", "properties": { "cursor": { "…": "…" }, "limit": { "…": "…" } } },
      "outputSchema": { "type": "object", "properties": { "accounts": { "…": "…" }, "nextCursor": { "…": "…" } } },
      "rest": { "operationId": "list-my-ad-accounts", "method": "GET", "path": "/v1/brands" }
    }
  ]
}

Trimmed: the real file lists every tool with its full schemas. rest is null for tools that exist only on MCP. The file needs no key, allows any origin, and can be cached for 5 minutes.

On this page