Skip to content

Connect

Build with AI (MCP)

Connect Claude, ChatGPT, Cursor or any MCP client to your Officely account, and let your AI build and test chatbots for you. Early access.

What it is#

The Officely MCP server connects an AI assistant to your Officely account. MCP (Model Context Protocol) is the open standard AI apps use to call tools, so it works with Claude Desktop, Claude Code, Cursor, ChatGPT connectors and any other MCP client.

Once connected, you describe the bot you want in plain words. The AI reads your bots, adds and connects steps in Chat Builder, arranges the canvas neatly, checks the flow for errors and runs a test in preview. You open the same bot in the dashboard and see every change.

  1. Your AI assistant

    Claude, ChatGPT, Cursor...

  2. Officely MCP server

    Your API key

  3. Your bot's draft

    Chat Builder canvas

Your AI assistant talks to the Officely MCP server, which edits your bot's draft through the Officely API.

Status: early access#

Details on this page, such as tool names and setup steps, may change before general availability.

What your AI can do#

ToolWhat it does
list_botsLists your chatbots, and whether each one is live.
get_botReads a bot's flow: every step, its text, buttons and connections.
create_botCreates a new, unpublished bot with a start step.
add_nodeAdds a step, and can connect it behind an existing step or button in the same call.
update_node, delete_nodeEdits or removes a step.
connect_nodes, disconnect_nodesWires steps together. A button connects by its text.
auto_layoutArranges the canvas into a tidy left-to-right flow, using the real card sizes.
validate_botChecks the flow the same way the dashboard does before publishing.
list_ai_agents, list_node_typesLists your AI agents and the step types the AI can create.
test_botRuns the draft in preview, from the start or from a Catch Hook, with sample customer messages.
publish_botPublishes the bot. Off by default (see below).

Steps the AI can create: questions (text, number, email, date, location), send message, options, buttons, AI agent, Catch Hook, HTTP webhook, notification, jump and end.

In step texts, the AI uses the same variables you do: {{@askName}} for the answer to a step named askName, and {{#key}} for Catch Hook data and bot variables.

Safety model#

  • Draft first. Every change goes to the bot's draft. Customers keep talking to your live bot until you publish. For new work, the AI is told to create a new bot, so your live one is never touched.
  • Scoped keys. Each API key gets only the access you grant: builders:read (read bots), builders:write (edit drafts), builders:test (run tests in preview) and builders:publish (publish). A key can never widen its own access.
  • Publishing is off by default. The publish tool doesn't even appear unless you turn it on in the server settings and the key has builders:publish. Even then, the AI must confirm and name the exact version you reviewed.
  • No silent overwrites. Every change carries the version it was based on. If the bot changed in the meantime, the change is refused and the AI reads the bot again.
  • Safe to retry. Every write has an idempotency key, so a retried request is never applied twice.
  • Every change logged. Each write is recorded in an audit log: what changed, which key made it, and when.
  • Your data stays yours. A key only sees its own account's bots. Secrets inside steps, such as tokens, are hidden from reads.

Set it up#

  1. 1

    Create an API key

    In the app, open Developers, then API, and on the Keys tab click Create key. Name it after the AI app that will use it, for example Claude Desktop. Copy the key now: you won't see it again.

  2. 2

    Grant builder scopes

    Give the key builders:read and builders:write. Add builders:test if the AI should run tests in preview, and builders:publish only if you want it to publish. During early access, we set the scopes on your key with you.

  3. 3

    Add the Officely server to your AI app

    Use the config for your app below. Keep the key in your app's config on your own computer, never in shared files or repos.

Claude Code. Add the server once for your user:

Claude Code
claude mcp add --transport stdio --scope user \
  --env OFFICELY_API_KEY=YOUR_API_KEY --env OFFICELY_API_BASE_URL=https://api.officely.ai \
  officely -- node /absolute/path/to/officely-mcp/dist/src/stdio.js

Claude Desktop. Edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS (%APPDATA%\Claude\claude_desktop_config.json on Windows), then restart Claude. Cursor uses the same command, args and env in .cursor/mcp.json.

claude_desktop_config.json
{
  "mcpServers": {
    "officely": {
      "command": "node",
      "args": ["/absolute/path/to/officely-mcp/dist/src/stdio.js"],
      "env": {
        "OFFICELY_API_KEY": "YOUR_API_KEY",
        "OFFICELY_API_BASE_URL": "https://api.officely.ai"
      }
    }
  }
}

Replace YOUR_API_KEY with your key and the path with the location of the Officely MCP server we share with you. The server needs Node.js 22 or later.

SettingRequiredWhat it does
OFFICELY_API_KEYYesYour API key.
OFFICELY_API_BASE_URLYesThe Officely API address. HTTPS only.
OFFICELY_ENABLE_PUBLISHNoSet to true to show the publish tool. Off by default.

Example prompts#

  • "List my Officely bots and tell me which one is live."
  • "Build a lead bot: ask for the name, offer two buttons, Talk to sales and Just browsing, and hand Talk to sales off to my Sales AI agent."
  • "In my Support bot, add a question that asks for the order number after the Track my order button."
  • "Add a Catch Hook called order_shipped that tells the customer {{#order.id}} has shipped."
  • "Tidy up the canvas of my Lead bot, check it for errors and run a test as a customer named Noa."

Good habits: ask the AI to read the bot before changing it, and to finish with auto-arrange, validate and a test. Review the draft in the dashboard, then publish there yourself.

Limitations#

  • Early access only. Not available on every account yet, and details may change.
  • Some steps can't be created yet. Media, WhatsApp lists, filters and message templates can be read, moved, renamed, connected and deleted, but not created. Add them in the dashboard.
  • WhatsApp limits apply. Buttons steps take 1 to 3 buttons of up to 20 characters. Options steps take up to 30 options.
  • One preview at a time. Tests use your account's preview, the same as the Preview button, so a test replaces whatever you last previewed.
  • Keep one editor at a time. If the same bot is open in the dashboard while your AI edits it, the dashboard's autosave can overwrite the AI's changes (and the other way round). Close the bot in the dashboard, or reload it after the AI is done.
  • Runs on your computer. The server runs locally next to your AI app, with your API key.
  • Rate limits. Each key can make up to 120 changes a minute and 30 tests every 10 minutes. The server waits and retries automatically when it hits a limit.