Start

Connect an agent

Each project has its own MCP server name and bearer token. Do not reuse another Crafio server already connected in the chat.

Endpoint

Streamable HTTP at http://localhost:8787/mcp. Send Authorization: Bearer <TOKEN>.

Cursor

Merge into .cursor/mcp.json or ~/.cursor/mcp.json:

{
  "mcpServers": {
    "crafio-<slug>": {
      "url": "http://localhost:8787/mcp",
      "headers": { "Authorization": "Bearer <TOKEN>" }
    }
  }
}

Claude Code

claude mcp add --scope user --transport http crafio-<slug> http://localhost:8787/mcp --header "Authorization: Bearer <TOKEN>"

ChatGPT and other MCP clients

Add a streamable HTTP server named crafio-<slug>, URL http://localhost:8787/mcp, header Authorization: Bearer <TOKEN>. Then paste the connect prompt into a new chat. Do not reuse a chat that already has another Crafio project.

Before any write

  1. Add a new server named crafio-<slug>. Leave any other Crafio server in the chat alone.
  2. Call health.check with { "project": "<slug>" }. Confirm project.slug matches.
  3. Call project.context with the same project argument.
  4. If the call is rejected or the slug does not match, stop. You are on the wrong server.

Every Crafio tool requires project set to this project's slug. That stops an agent from writing to another Crafio project that happens to be connected in the same chat.

Schema

New collections are live immediately. Do not wait for Publish on a first build. Changing a collection that is already published stays in draft. Then the agent should call schema.review, summarize the change, ask you to approve it, and share the Schema page. Details are on Schema.

Core tools

  • health.check, project.context, project.update
  • schema.list, schema.define_collection, schema.set_access, schema.add_field, schema.remove_field, schema.versions, schema.restore, schema.review, schema.publish, schema.discard
  • data.list, data.get, data.create, data.update, data.delete, data.query, data.revisions
  • files.upload, files.list, files.delete
  • auth.configure, auth.users, auth.create_user
  • integrations.list, integrations.status
  • Payments, CRM, and email tools after you connect those providers on Integrations.