CoworkkitDocs
Sign inCreate account
© 2026 CoworkkitTerms of ServiceRefund & Cancellation PolicyPrivacy PolicyCookie PolicyData & Security

Start here

  • Getting started
  • The setup prompt
  • How it works

Declaring your app

  • Actions, surfaces & elements
  • Hand mode
  • Control & confirmation
  • Patterns & best practices

Integrate

  • Backends
  • Usage, quotas & webhooks
  • Multiple coworkers
  • Connect your coding agent

Polish & operate

  • Appearance
  • Languages
  • The Watch panel
  • Development mode

Reference

  • Advanced
  • Configuration
  • Browser & framework support
  • Network requirements
  • Regions
  • Troubleshooting & FAQ
  • Error codes
All docs

Docs

Connect your coding agent

Install the Coworkkit skill (npx skills add coworkkit-ai/skills) to have your coding agent wire and verify the integration for you, or add the Coworkkit MCP server to Claude Code, Cursor, VS Code, Codex, Gemini CLI, Claude Desktop, or any MCP client — one command, one click, or a generic config block: live docs with no account, then session diagnostics and config after a one-time browser sign-in.

Install the skill

The fastest way in is to let your coding agent do the wiring. Install the Coworkkit skill and your agent detects your stack, installs the SDK, wires the token route and the Provider, declares a first surface and action, then verifies a live mint before you ever start a session — and leaves the load-bearing rules in your repo for every later change.

Any agent — Claude Code, Cursor, Codex, Copilot, Gemini CLI, and 70+ others:

bash
npx skills add coworkkit-ai/skills

Two skills install together: coworkkit-setup (install → verify → first magic) and coworkkit-declare (the procedure for every later change). In Claude Code you can install it as a plugin instead, which also connects the MCP server below with no manual step:

bash
/plugin marketplace add coworkkit-ai/skills
/plugin install coworkkit@coworkkit

Prefer to add it yourself, or using another MCP client? Coworkkit runs an MCP server your coding agent can connect to — Claude Code, Cursor, VS Code, Codex, Gemini CLI, Windsurf, Claude Desktop, and any other MCP-capable client. It gives your agent three things, in order of how much trust each needs: live docs with no account at all, then session diagnostics and small config changes for your own workspace after a one-time browser sign-in.

1 · Add the server

The Coworkkit MCP server is remote: a hosted HTTPS endpoint at https://app.coworkkit.ai/api/mcp. Nothing to install — every client just points at that URL (it’s a modern Streamable HTTP server, not the legacy SSE transport). Pick your client below; most add it in one command or one click, the rest take a small config block. Don’t see yours? The generic block under the picker works in any MCP client. Add it, then restart your agent — the first time it uses a workspace tool, your client opens the browser sign-in itself (step 3). There’s no token to paste into any config file.

One command. The --transport http flag is required: without it the CLI reads the URL as a local program to launch, and the server fails to start.

bash
claude mcp add --transport http coworkkit https://app.coworkkit.ai/api/mcp

One click — this opens Cursor and pre-fills the server:

Add to Cursor →

Or by hand — a remote server is a bare url under mcpServers, global in ~/.cursor/mcp.json or per-project in .cursor/mcp.json:

~/.cursor/mcp.json
{
  "mcpServers": {
    "coworkkit": {
      "url": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

One command:

bash
code --add-mcp '{"name":"coworkkit","type":"http","url":"https://app.coworkkit.ai/api/mcp"}'

Or one click:

Add to VS Code →

Or by hand in .vscode/mcp.json for this workspace, or your user mcp.json. Two things differ from most clients: the top-level key is servers (not mcpServers), and an HTTP server needs type: http:

.vscode/mcp.json
{
  "servers": {
    "coworkkit": {
      "type": "http",
      "url": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

One command (remote MCP servers are supported on current Codex builds):

bash
codex mcp add coworkkit --url https://app.coworkkit.ai/api/mcp

Or add a server table to ~/.codex/config.toml by hand. A url key (in place of command) makes Codex use HTTP:

~/.codex/config.toml
[mcp_servers.coworkkit]
url = "https://app.coworkkit.ai/api/mcp"

One command:

bash
gemini mcp add --transport http coworkkit https://app.coworkkit.ai/api/mcp

Editing ~/.gemini/settings.json by hand? Use the httpUrl key — a plain url is read as the legacy SSE transport:

~/.gemini/settings.json
{
  "mcpServers": {
    "coworkkit": {
      "httpUrl": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

In ~/.codeium/windsurf/mcp_config.json. Windsurf marks a remote server with a serverUrl key:

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "coworkkit": {
      "serverUrl": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

Easiest from Cline’s panel (MCP Servers → Remote → Streamable HTTP), or edit cline_mcp_settings.json by hand. The transport value is streamableHttp (camelCase; the hyphenated spelling silently falls back to SSE):

cline_mcp_settings.json
{
  "mcpServers": {
    "coworkkit": {
      "type": "streamableHttp",
      "url": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

In Zed’s settings.json (zed: open settings file from the command palette), under context_servers:

~/.config/zed/settings.json
{
  "context_servers": {
    "coworkkit": {
      "url": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

Claude Desktop adds a remote server from its interface — its config file is for local (stdio) servers only. Open Settings → Connectors → Add custom connector, name it coworkkit, and paste the URL:

text
https://app.coworkkit.ai/api/mcp

From Settings → AI → MCP servers → Add, or edit ~/.warp/.mcp.json by hand — a bare url under mcpServers:

~/.warp/.mcp.json
{
  "mcpServers": {
    "coworkkit": {
      "url": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

One command. The OAuth flag walks the browser sign-in when the agent needs your workspace:

bash
amp mcp remote add coworkkit https://app.coworkkit.ai/api/mcp --auth oauth --personal

Any other MCP client — the generic way

Most clients take the same shape: an mcpServers object with a url. Paste this into your client’s MCP config and restart:

json
{
  "mcpServers": {
    "coworkkit": {
      "url": "https://app.coworkkit.ai/api/mcp"
    }
  }
}

That block works as-is in Cursor, Windsurf, Warp and others, and the url drops straight into any “add a remote server / custom connector” field (Claude Desktop, JetBrains AI Assistant). A few clients want one small change:

  • Claude Code and VS Code — add type: http (in VS Code the top-level key is servers, not mcpServers).
  • Cline — add type: streamableHttp (camelCase; the hyphenated spelling silently falls back to SSE).
  • Gemini CLI — rename url to httpUrl (a plain url is read as the legacy SSE transport).
  • Zed — the top-level key is context_servers.
  • Codex — it’s TOML, not JSON: [mcp_servers.coworkkit] with a url.

Still stuck, or your client only speaks the local (stdio) protocol? Bridge it with mcp-remote — this also handles the browser sign-in for clients that don’t support MCP authentication natively:

bash
npx -y mcp-remote https://app.coworkkit.ai/api/mcp

2 · Ask for docs, no account needed

Straight away, with no sign-in, your agent can read the live documentation and the integration recipe. Ask it something like “using the Coworkkit MCP, add voice to this app” and it pulls the current getting-started guide (the same one you’re reading) through the get_docs and get_started tools. These stay in sync with the shipped docs automatically. Once voice works, have it read the patterns topic before it wires an action; that page is written for exactly this reader (Patterns & best practices).

3 · Sign in once for your own workspace

The moment you ask your agent to do something workspace-specific, “why was my last session silent?” or “switch to the calmer voice”, it needs to act as you. Your client opens a browser to the Coworkkit portal, you sign in with your normal account, and you approve the connection on a consent screen. That’s the whole setup: there is no API key to paste anywhere. Your agent receives a short-lived, auto-rotating token; your secret key stays only in your backend, where it mints sessions.

After that one approval, your agent can:

  • Diagnose sessions: check_setup, list_sessions, get_session, and diagnose_session read your session health (why a call was rejected, whether a mic ever published, connect rates).
  • Adjust configuration: list_voices and update_config change the allowed settings (voice, language, greeting/persona text, timeouts). Config changes are marked high-impact, so your agent confirms with you before making one.
  • Pick the coworker: if your account owns several coworkers, every tool takes an optional coworker argument (the coworker’s id, shown on its card). Without it the agent acts on your account’s first coworker. It can only ever name a coworker of your own account.

Everything is scoped to your own workspace and your own permissions. The agent can never reach another account’s data, delete your workspace, touch API keys, or spend credits.

4 · Revoke any time

Each connected agent is listed under Settings → Connected agents, with the date you approved it and when it was last used. Revoke one there and its access stops on the next call. To reconnect, your agent walks the browser sign-in again.

PreviousMultiple coworkersNextAppearance

Machine-readable: this page as Markdown · all docs (llms.txt) · everything in one file (llms-full.txt)