MCP server · for developers

Cookie consent, set up by your AI agent.

Connect Croombit's MCP server to your IDE or coding agent — Claude Code, Cursor, VS Code, JetBrains, Codex, Gemini CLI and more — and ask for a cookie banner in plain language. In about five minutes it's running on your localhost in TEST: site, cookie categories, banner, key, and the script tag in your layout. In about ten, the rest of your consents too.

Free on every plan OAuth 2.1, no API key to paste Data stored in the EU

Connect it in one step

The server lives at https://mcp.croombit.com/mcp (Streamable HTTP). The first call opens your browser: sign in, pick the organization and tick the permissions you grant. There is no API key to copy into a config file.

IDEs and editors

CursorOne click

Click the button, or add it to the file below. Cursor asks you to sign in the first time it uses the server.

Install in one click →
~/.cursor/mcp.json
{
  "mcpServers": {
    "croombit": {
      "url": "https://mcp.croombit.com/mcp"
    }
  }
}
Official docs ↗
VS CodeOne click

Click the button, or add it to the file below (GitHub Copilot agent mode). VS Code opens the browser to authorize.

Install in one click →
.vscode/mcp.json
{
  "servers": {
    "croombit": {
      "type": "http",
      "url": "https://mcp.croombit.com/mcp"
    }
  }
}
Official docs ↗
Visual Studio

Visual Studio 17.14 or later. Add the file below, then use the Authentication Required CodeLens above the server to sign in.

%USERPROFILE%\.mcp.json
{
  "servers": {
    "croombit": {
      "url": "https://mcp.croombit.com/mcp"
    }
  }
}
Official docs ↗
JetBrains · Junie

Add the server to Junie (IntelliJ IDEA, WebStorm, PyCharm… or the Junie CLI), then open /mcp, pick croombit and choose Authorize.

~/.junie/mcp/mcp.json
{
  "mcpServers": {
    "croombit": {
      "url": "https://mcp.croombit.com/mcp"
    }
  }
}
Official docs ↗
Zed

Settings → AI → MCP Servers → Add Remote Server, or add this to settings.json. With no headers set, Zed asks you to sign in.

settings.json
"context_servers": {
  "croombit": {
    "url": "https://mcp.croombit.com/mcp"
  }
}
Official docs ↗
Windsurf · Devin Desktop

Add it under mcpServers (note the key is serverUrl). It signs in with OAuth the first time Cascade calls it.

~/.config/devin/mcp_config.json
{
  "mcpServers": {
    "croombit": {
      "serverUrl": "https://mcp.croombit.com/mcp"
    }
  }
}
Official docs ↗
KiroOne click

Click the button, or add it to the file below. Kiro registers itself and opens the browser to authorize.

Install in one click →
~/.kiro/settings/mcp.json
{
  "mcpServers": {
    "croombit": {
      "url": "https://mcp.croombit.com/mcp"
    }
  }
}
Official docs ↗
Cline

MCP Servers → Remote Servers, or add it to the settings file. Set type to streamableHttp (without it Cline uses the older SSE transport), then click Authenticate.

cline_mcp_settings.json
{
  "mcpServers": {
    "croombit": {
      "type": "streamableHttp",
      "url": "https://mcp.croombit.com/mcp"
    }
  }
}
Official docs ↗
Roo Code

Roo Code connects to remote servers, but its docs don't cover OAuth sign-in yet, so use the mcp-remote bridge, which runs the sign-in for it.

.roo/mcp.json
{
  "mcpServers": {
    "croombit": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.croombit.com/mcp"
      ]
    }
  }
}
Official docs ↗
Amazon Q Developer

In the chat panel: tools icon → + → transport http → paste the URL. Amazon Q opens the browser to authorize.

https://mcp.croombit.com/mcp
Official docs ↗
Warp

Settings → Agents → MCP servers → Add → Streamable HTTP or SSE Server (URL), or paste this. Warp opens the browser to sign in.

{
  "croombit": {
    "url": "https://mcp.croombit.com/mcp"
  }
}
Official docs ↗

Coding agents and CLIs

Claude Code

Run it in your project. The first call opens the browser to authorize.

Terminal
claude mcp add --transport http Croombit https://mcp.croombit.com/mcp
Official docs ↗
OpenAI Codex CLI

Add the server, then sign in with codex mcp login. Or add it to config.toml — OAuth is the default.

Terminal
codex mcp add croombit --url https://mcp.croombit.com/mcp
codex mcp login croombit
~/.codex/config.toml
[mcp_servers.croombit]
url = "https://mcp.croombit.com/mcp"
Official docs ↗
Gemini CLI

Add the server, then run /mcp auth croombit inside Gemini CLI to sign in. In settings.json the key is httpUrl.

Terminal
gemini mcp add --transport http croombit https://mcp.croombit.com/mcp
# then, inside Gemini CLI:
/mcp auth croombit
Official docs ↗
GitHub Copilot CLI

Adds it to ~/.copilot/mcp-config.json. Copilot CLI opens the browser to sign in.

Terminal
copilot mcp add --transport http croombit https://mcp.croombit.com/mcp
Official docs ↗
opencode

Add it as a remote server, then sign in with opencode mcp auth croombit.

opencode.json
{
  "mcp": {
    "croombit": {
      "type": "remote",
      "url": "https://mcp.croombit.com/mcp"
    }
  }
}
Terminal
opencode mcp auth croombit
Official docs ↗
GooseOne click

Click the button, or run goose configure → Add Extension → Streamable HTTP. Goose opens the browser to sign in.

Install in one click →
~/.config/goose/config.yaml
extensions:
  croombit:
    name: Croombit
    type: streamable_http
    uri: https://mcp.croombit.com/mcp
    enabled: true
    timeout: 300
Official docs ↗

Chat apps

Claude.ai · Claude Desktop

Settings → Connectors → Add custom connector, and paste the URL. Claude walks you through the sign-in.

https://mcp.croombit.com/mcp
Official docs ↗
ChatGPT

In ChatGPT, add a custom MCP server with this URL and choose OAuth as the authentication method.

https://mcp.croombit.com/mcp
Official docs ↗

Any other client

A client that supports remote servers with OAuth only needs the URL above. One that only runs local (stdio) servers can use the open-source mcp-remote bridge: it runs on your machine, does the browser sign-in and relays the calls.

{
  "mcpServers": {
    "croombit": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.croombit.com/mcp"
      ]
    }
  }
}

No account yet? Create one free, then connect — the Hobby plan includes 1,000 consent events a month and the MCP server.

5 minutes: a working cookie banner on your localhost

Open your project in the agent and paste one prompt. Name Croombit in it, so the agent reaches for the right connector.

Using Croombit: create a site called "Acme" in English and Spanish, and add the domain acme.com. Add two cookie categories, Analytics (category ANALYTICS) and Advertising (category MARKETING), both off by default, with banner text in English and Spanish, and publish them. Publish the cookie banner. Create a TEST publishable key for localhost:3000, add the Croombit script tag to this project's root layout, and make sure our analytics and ad scripts only run after consent.

What the agent does

  1. create_site and add_domain — the site with its languages, and acme.com. Usable in TEST at once; the response already carries the DNS record you will publish to go live.
  2. create_cookie_category ×2, set_purpose_texts, publish_purpose — the two toggles visitors see, with the exact wording that will be cited in every consent record.
  3. publish_banner — freezes the banner version every decision will point to.
  4. create_api_key — a TEST pk_ key whose Origin allowlist is localhost:3000. The key is shown once; the agent writes it straight into your code.
  5. It edits your layout: one <script src="https://croombit.com/cmp.js" data-tc-api-key="pk_test_…">, and marks existing tags with type="text/plain" data-tc-consent="…" so they wait for the visitor's choice. Google tags also get Consent Mode v2 defaults.

Then check what actually gets stored. On a public staging URL, ask for a scan (request_cookie_scan — our crawler accepts the banner and records every cookie). On localhost, an agent that can drive a browser opens the page, accepts the banner and sends what it sees with import_cookies. Both land in the inventory already classified.

10 minutes: every other consent

Cookies are only one kind of consent. The same conversation sets up the ones your product records itself — with proof.

Using Croombit: add consent statements for our newsletter (email marketing opt-in) and for accepting the terms of service, and publish them. Create a TEST secret key, put it in .env as CROOMBIT_SECRET_KEY, and record each user's choices from our signup handler with @croombit/sdk. Then create a webhook to https://staging.acme.com/webhooks/croombit for consent.withdrawn and write the receiver, verifying the signature.
  • Consent statements with versioned text — the record keeps the exact version each person saw.
  • Server-side recording with an sk_test_ key: every decision goes to the append-only vault and comes back with an Ed25519-signed receipt.
  • Webhooks with signature verification, so your email provider stops writing to someone the moment they withdraw.
  • Optionally, a preference center (channels and topics) and expiry policies — the same way, in the same conversation.

Going live: two steps in the console

The agent works in TEST. Moving real visitors over stays with a person, on purpose:

  1. Verify your domain — publish the DNS TXT record (or the /.well-known file) the agent already gave you, and press Verify. LIVE keys only accept verified domains.
  2. Create the LIVE `pk_` key and swap it for the TEST one. LIVE keys can only be created in the console, never through the MCP server.

What the agent can and can't touch

  • Each connection is bound to one organization and to the permissions you tick on the consent screen. Anything else returns 403 on the server, not just in the UI.
  • Publishing the banner needs its own permission (banner:publish) — leave it unticked and the agent can only prepare drafts.
  • API keys: TEST only. No LIVE keys, no existing secrets, no identity secrets.
  • The vault is read-only, and no permission exports a person's full data, or touches team members, billing or SSO.
  • Every change it makes is in the organization's hash-chained audit log, like a teammate's.

Every permission, and what each one reaches, is in the MCP documentation.

Questions

Is the MCP server free?

Yes. It is included in every plan, including the free Hobby plan (1,000 consent events a month). TEST traffic never counts toward the quota.

Which AI clients does it work with?

Any MCP client that supports remote (Streamable HTTP) servers with OAuth. Step-by-step setup is on this page for Cursor, VS Code, Visual Studio, JetBrains (Junie), Zed, Windsurf, Kiro, Cline, Roo Code, Amazon Q, Warp, Claude Code, Codex CLI, Gemini CLI, Copilot CLI, opencode, Goose, Claude.ai and ChatGPT; a client that only runs local servers can use the mcp-remote bridge.

Do I need to paste an API key into the agent?

No. The connection uses OAuth 2.1 with PKCE: you approve it in the browser once, for one organization and the permissions you choose, and you can revoke it at any time.

Does it work on localhost?

Yes. A TEST publishable key accepts localhost:<port> as an allowed origin, so the banner runs on your dev server before you have a domain. Our cloud crawler only reaches public URLs; for localhost, the agent can import the cookies it observes in a browser.

Can the agent put something live by mistake?

It cannot create LIVE keys or verify domains for you, so real visitors only see Croombit once you take the two console steps. Publishing a banner version needs the separate banner:publish permission.

I use WordPress or Shopify — is this for me?

You can still use the agent to configure categories, banner and texts. For the tag itself, the WordPress and Shopify plugins do it without code.

Ask your agent for a cookie banner.

Connect the server, paste the prompt, and review the result in TEST before anything reaches a real visitor.