# Deploy with AI

(Coming soon)

Tell an AI coding agent — Claude Code, Codex, or Cursor — "deploy this to Koo" and watch it handle the rest: use a scoped [API token](/docs/developers/api-tokens), create the service, deploy it, follow the deployment until it is ready, and report your live URL. It works through the [Koo MCP server](/docs/developers/mcp-server) and the matching [skill](/docs/developers/ai-skills).

> **Note:**
>
> Koo does not run an AI model for you. The agent is your own coding tool, running on your machine, driving Koo through the same API the console uses.

> **Note:**
>
> The MCP server and skills are code-complete but not published yet — the `koo mcp install` command ships with the next [CLI](/docs/developers/cli) release. Deploying a container image works today (see [Deploy a container](/docs/apps/deploy-a-container)).

## How it works

1. Mint a least-privilege [API token](/docs/developers/api-tokens) — an `editor` role to deploy, or `reader` for a read-only agent — scoped to a single account. The token (`kc_…`) is shown once. `koo mcp install` can mint one for you if you are logged in with the [CLI](/docs/developers/cli).
2. Install the Koo MCP server and skill into your agent:

```text
koo mcp install claude-code   # or: codex, cursor
```

1.

To deploy from local source rather than a prebuilt image, the agent has you run `koo up` in your project directory (the CLI packs and builds it), then watches the result with the same tools.

From there the service is a normal Koo service: the deployment appears in the console, and [logs](/docs/observability/logs), [metrics](/docs/observability/metrics), and [rollback](/docs/apps/deployments-and-rollback) work as usual.

## Same API, same guardrails

The agent drives the exact endpoints the console calls — there is no separate deploy path. Your account's roles, plan limits, and audit trail apply to every action the agent takes. Actions are attributed to the token's service account in the audit trail, so you can always see what the agent did, and you can revoke its token at any time.

## Until then

Deploying from a container image works today and is the fastest path to a live URL — see [Deploy a container](/docs/apps/deploy-a-container).
