charlieai.co  ›  docs  ›  mcp

Charlie MCP

Charlie's Model Context Protocol server lets any LLM client — Claude, ChatGPT, Gemini, or a custom agent — operate your Charlie workspace through a typed, versioned API. Read your templates, send campaigns, manage contacts, activate flows. No SDK. One endpoint.

Endpoint: https://charlieai.co/mcp
Transport: Streamable HTTP (March 2025 MCP spec)
Auth: OAuth 2.1 (with PKCE) or X-Charlie-API-Key header

Connect in 30 seconds

Claude (custom connector)

  1. Open Claude → SettingsConnectorsAdd custom connector.
  2. Paste https://charlieai.co/mcp.
  3. Claude walks you through OAuth: you'll be asked which .myshopify.com workspace to authorize. Allow.
  4. Charlie's 13 tools appear in the connector list. Done.

ChatGPT / Gemini / any MCP client

Same endpoint, same OAuth flow. The discovery endpoints follow standards:

API key (testing / custom integrations)

Request a long-lived API key from hello@charlieai.co. Pass it as a header on every request — no OAuth dance:

curl https://charlieai.co/mcp \
  -X POST \
  -H 'X-Charlie-API-Key: <your-key>' \
  -H 'content-type: application/json' \
  -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Tools

ToolTypeWhat it does
list-templatesreadSearch & filter 448 production email templates.
get-templatereadFull HTML body + metadata for one template.
list-flowsreadSummaries of the four e-commerce flow blueprints.
get-flow-blueprintreadFull specification of one flow.
get-workspace-statusreadSubscribers, deliverability score, IP pool, warmup, active flows.
get-deliverabilityreadBounce / complaint rates, score history, pool migrations.
list-contactsreadPaginated, filterable contact list with consent provenance.
get-campaign-historyreadSent campaigns with recipient counts and delivery outcomes.
send-campaignwriteQueue a campaign for sending. Subject to warmup & pool tier.
create-contactwriteUpsert one contact. Idempotent.
import-contactswriteBulk upsert (≤1000 per call). Idempotent.
activate-flowwriteEnable welcome / abandoned-cart / post-purchase / winback.
pause-flowwriteDisable a flow. In-flight instances continue.

What Charlie does not do

Scopes

ScopeGrants
mcp:readAny tool with readOnlyHint: true.
mcp:writeThe five write tools above.

Auditability

Every write call lands in audit_log with the actor token, the action, and the target. Charlie's ops console at ops.charlieai.co surfaces these as searchable rows — required for EU AI Act Section 11 compliance, useful for everyone.


Privacy: /privacy  ·  Terms: /terms  ·  Status: /mcp/health