MCP, API and webhooks

Connect Koast to your AI assistant

Connect Claude, ChatGPT or any MCP client to Koast, sign in, and pick what it's allowed to do.

Koast runs an MCP server. Connect it to Claude, ChatGPT or any assistant that speaks MCP, and that assistant can read your campaign numbers, build a launch with you and publish it, using the same operations the Koast app uses.

Model Context Protocol is an open standard for connecting an assistant to a real system. You connect Koast once, sign in as yourself, and choose what the assistant is allowed to do. There's no key to paste for most clients and nothing to self host.

The server address is:

https://mcp.koast.ai/mcp

That's the only value you need for a client that supports remote MCP servers and OAuth. Everything else is discovered.

MCP works on every paid Koast plan with an active subscription.

One click install

Terminal agents take one command. Each one asks you to sign in to Koast the first time it connects. In Claude Code, run /mcp to start the sign in.

# Claude Code
claude mcp add --transport http koast https://mcp.koast.ai/mcp

# Codex
codex mcp add koast --url https://mcp.koast.ai/mcp
codex mcp login koast

# Gemini CLI
gemini mcp add --transport http koast https://mcp.koast.ai/mcp

Add it to your assistant

  1. Open your assistant's connector settings

    In Claude, find Koast in the connector directory and add it from the listing. In ChatGPT, install it from the plugin directory. Neither needs the address pasted. Other clients call it an MCP server or a remote server, and take the address below.

  2. Paste the server address

    Use https://mcp.koast.ai/mcp. Don't add a key. The client registers itself with Koast automatically.

  3. Sign in to Koast

    Your browser opens a Koast sign in screen. Sign in with the account you already use.

  4. Check what it can do

    The approval screen lists what the client asks for under It will be able to, such as Read your account and Work on drafts. Publish and spend has its own switch and is off by default. Turn it on only if the assistant should put campaigns live and change live budgets.

  5. Set a publish limit, if you turned on Publish and spend

    Publish limit is the most this client may ever put live, in total. Publishing is refused without one.

  6. Approve

    Select Approve, which reads Approve with spend when Publish and spend is on. Deny grants nothing.

  7. Pick a brand

    Back in the assistant, ask it to list your brands and choose one. Nothing brand specific runs until a brand is active.

A good first question: "Which ad sets are over target CPA this week?"

If your client can't do OAuth

Some clients only accept a static token. For those, an organization owner or admin creates an API key with MCP turned on, and you paste it as a bearer token. See Create and manage API keys.

Check or remove a connection

Every app you've connected by signing in appears in Koast under API & Webhooks, in the Authorized apps list, with its Access, when it was Authorized and when it was Last used. Revoking one takes effect on its next request.

The command line and the REST API

The koast command line and the Koast REST API are for your own code and scripts, not for assistants. They need an Agency plan, and they use an API key with API turned on, or a browser sign in for the command line.

npm install -g @koast.ai/cli
koast login
koast commands

Every command, every endpoint and every error code is on the Koast developer docs.

What it can do

Your assistant gets the same tools the Koast app runs on: reporting, building and editing launches, settings, ad copy, ad images, structure templates, snapshots, the pipeline board, automations, workflows, live campaign changes and publishing.

  • What you can ask for groups them by job, with example requests.
  • The MCP tool reference lists every tool with its inputs and the access it needs. It is generated from the server, so it is always current.

It works on your Meta brands. Each brand offers only what its ad provider supports.

What it can't do

The list of tools your assistant sees is filtered every time, by four things: the access you granted, your role on the team, your plan, and what the active brand's ad provider supports. See Access, publish limits and what gets filtered.

A missing tool is an answer, not an obstacle

If a tool isn't on the list, the server refuses the call and says which access would have carried it. It doesn't find a different tool with the same side effect.

One brand per conversation

A conversation works on one brand at a time. Your assistant lists the brands you can reach, you pick one, and everything after that is scoped to it. Switching brands mid conversation changes which tools are available, because providers differ.

On this page