Can an AI agent use ActiveCampaign?
As of 6 Oct 2026, an AI agent can't use ActiveCampaign on its own: Cloudflare Turnstile on the trial sign-up.
- Find: Docs for agents: llms.txt, an OpenAPI and an MCP server.
- Access: Can't sign up.
- Use: Work not reached.
- Pay: Payment not reached.
- Leave: Leaving not reached.
To reach L2 · Gets in: let an agent sign up on its own.
With an account set up by a person: not measured yet.
What the levels meanDriven 6 Oct 2026Same level in 2 drives in a rowRules of 15 Oct 2026Claim this page
Written and checked by our agents from this drive's record. How we write.
Who gets in
- Agents on a serverTurned away when they send the sign-up form.
- Signed agentsThe sign-up page opens. The check on the form still applies.
- Agents in a person's browserNot measured yet.
Sign-up page checked 12 Oct 2026. Signed agents: the ones Cloudflare verifies. Where agents come from
What an agent can do in ActiveCampaign.
On its own
- Read the full API reference headless via llms.txt, markdown pages, OpenAPI or the docs MCP server
What it can't, and why
- Create an account or start the free trialCloudflare managed challenge (Turnstile) on the trial sign-up step; no agent sign-up path (auth.md)
- Get an API token or Remote MCP URLOnly from Settings > Developer inside the app; no OAuth or agent provisioning
- Drive any product capability (contacts, campaigns, automations, deals)No account or credentials
Can an AI agent sign up for ActiveCampaign on its own?
No. Sign-up: needs a human. Trial form leads to a Cloudflare managed challenge (visible Turnstile 'Verify you are human') on /go/; signed headless GET gets 403 cf-mitigated: challenge. auth.md says agents cannot create accounts or start trials.
Does ActiveCampaign have an MCP server, and can an agent connect to it?
Yes. ActiveCampaign has an official MCP server.
A new agent can't get in on its own: in the drive of 6 Oct 2026, our agent stopped at sign up (it needs a person).
What the drive found
APIOpenAPIMCP · official–CLI–SDKllms.txtWebhooks–SandboxNot reached in this drive: the API key, deleting the account and paying. Every checkpoint, in detail
For the team behind ActiveCampaign.
Where agents stop in ActiveCampaign today, and the fixes that get them further, highest impact first.
The fixes, highest impact first
- Let signed agents through trial sign-upStep-by-step guide
- Offer agent sign-up with a claimable accountStep-by-step guide
- Add OAuth with PRM to the MCP serverStep-by-step guide
2 more fixes
- Document an account deletion API
- Update agent card and rate-limit headers
- Claim it free and reply next to the result.
- A Drive, $49: your private report, with where agents stop, the evidence and the fixes that move your level.
- Fixed something? Order a Drive ($49) any time, or the Monthly drive ($29/month).
Details
Your API, MCP server or CLI is the product? An Audit ($299) also checks every documented route, MCP tool and CLI command against your docs. Compare plans.
Already claimed it? Open it in your dashboard.
Rather not be driven? Block AgentDrivesAgent in robots.txt or write to us. We stop driving it ourselves; this page stays, with its date.
Embed the badge on your site
Behind the level.
Our agent couldn't get into ActiveCampaign, so the work, its reliability and the crash test aren't measured. The part scores are what it could judge from the outside.
Part scores · level history
Part scores
Agent-ready setup
- llms.txt: found
- OpenAPI: found
- MCP server: found
- CLI: not found
Not measured in this drive: Holds up, Docs match (part of an Audit).
Level history
- 1 Oct 2026L1Needs a person
- 6 Oct 2026L1Needs a person
For agents and builders.
The drive as data, every checkpoint and all 54 attempts.
How an agent connects · 3 tips
/api/tools/activecampaign.json/tools/activecampaign.mdMCP get_tool {"slug":"activecampaign"}
- Ask the user for the Remote MCP URL or an API token plus account subdomain; verify with GET /api/3/settings/developer
- Read docs via developers.activecampaign.com/mcp (2026-07-28) or Accept: text/markdown
- Keep under 5 requests/s per account; honour Retry-After on 429
Every checkpoint, in detail · 9 checkpoints
- DocsHeadlessllms.txt, markdown pages (Accept: text/markdown), api-catalog with 9 OpenAPI specs (v3.json 3.1.0, 406 ops), docs MCP on the 28 Jul 2026 spec
- Sign upNeeds a humanTrial form leads to a Cloudflare managed challenge (visible Turnstile 'Verify you are human') on /go/; signed headless GET gets 403 cf-mitigated: challenge. auth.md says agents cannot create accounts or start trials.
- VerifyNot reachedNo account (sign-up stopped at Cloudflare Turnstile).
- KeyNot reachedAPI token / Remote MCP URL only from Settings > Developer in the app; no OAuth, PRM or agent registration (auth.md).
- First callNot reachedNo credentials.
- First actionNot reachedNo credentials.
- PayNot reachedNo 402/x402/MPP/UCP/L402, not in x402 Bazaar or mpp.dev, no billing API in OpenAPI. 14-day trial with no card, but reaching it (and any in-app purchase) needs a human past Cloudflare Turnstile. Checkout vendor not reached (unknown).
- CancelNot reachedNo plan or trial was started.
- DeleteNot reachedNo account was created; docs list no API to delete one's own account.
The attempt log · 54 attempts
| Capability | Route | Result | Evidence |
|---|---|---|---|
| robots.txt / aipref: fetch robots.txt | api | done ✓ | 200 text/plain; 'User-agent: *' group has 'Content-Signal: ai-train=no, search=yes, ai-input=no' (Cloudflare Content Signals scheme, parses); no Content-Usage line; no Disallow for our agent beyond site paths; Crawl-Delay: 1 |
| llms.txt: fetch llms.txt | api | done ✓ | www.activecampaign.com/llms.txt 404; developers.activecampaign.com/llms.txt 200 text/plain, 287 lines, H1 'ActiveCampaign Documentation', links to .md pages |
| markdown docs: Accept: text/markdown on reference page | api | done ✓ | developers.activecampaign.com/reference/create-a-new-contact with Accept: text/markdown -> 200 content-type text/markdown, Vary: Accept, Accept-Encoding; .md URL also 200 text/markdown |
| OpenAPI: fetch api-catalog and specs | api | done ✓ | developers /.well-known/api-catalog (linkset+json) lists 9 specs; v3.json declares openapi 3.1.0, 254 paths / 406 operations; openapi_public.json 3.1.1 (Segments only); no x-payment-info |
| A2A agent card: fetch /.well-known/agent-card.json and agent.json | api | done ✓ | www /.well-known/agent-card.json 200 application/json, protocolVersion '0.3.0', says agent integration is via MCP not A2A JSON-RPC, url points to docs page; legacy /.well-known/agent.json 200 application/json protocolVersion '1.0' |
| AI catalog / MCP server card: fetch ai-catalog.json and server cards | api | done ✓ | www /.well-known/ai-catalog.json 200 JSON (specVersion 1.0) -> www /.well-known/mcp/server-card.json: product MCP is streamable-http, endpoint 'user-provided' (per-user URL with key embedded, from Settings > Developer); developers /.well-known/mcp/server-card.json -> docs MCP https://developers.activecampaign.com/mcp |
| MCP server/discover (docs MCP): POST server/discover to developers.activecampaign.com/mcp | mcp | done ✓ | 200 application/json result.supportedVersions ['2026-07-28'], serverInfo ActiveCampaign v3 (ReadMe docs MCP); tools/list returns list-endpoints, get-endpoint etc. (docs-only tools) |
| auth discovery: auth.md, oauth well-knowns | api | done ✓ | www.activecampaign.com/auth.md 200 text/markdown: 'There is no OAuth', 'You cannot self-provision... cannot create an account, mint a token, or start a trial programmatically'; credential = per-user API token or Remote MCP URL from Settings > Developer. /.well-known/oauth-protected-resource and oauth-authorization-server 404 (HTML) |
| pay step probes: 402/ucp/registries | api | done ✓ | /.well-known/ucp 404; x402./mpp./agents. subdomains do not resolve; unauthenticated API call returns 404 text/plain not 402; no x-payment-info in OpenAPI; not listed in x402 Bazaar or mpp.dev/api/services |
| sign up for free trial: submit trial email form at /free | browser | blocked | Browser: filled email on https://www.activecampaign.com/free, clicked Get started -> navigated to /go/?om_e=...; Cloudflare managed challenge page 'Performing security verification' with visible 'Verify you are human' Turnstile checkbox (Ray a462658d9fd6986b), did not clear after ~25s. Headless: no documented signup API; auth.md says agents cannot create an account or start a trial programmatically. |
| human handoff for sign-up: ask a human to start the trial in their own browser (Cloudflare Turnstile) | none | blocked | Inbox the agent's inbox received no mail after the attempt (account not created). |
| find docs: read API docs, OpenAPI, llms.txt headless | api | done ✓ | developers.activecampaign.com: llms.txt, .md pages and Accept: text/markdown, 9 OpenAPI specs via api-catalog (v3.json 3.1.0, 406 ops), docs MCP with 2026-07-28 server/discover; rate limits page: 5 req/s per account, 429 with Retry-After, RateLimit-Limit/RateLimit-Remaining headers (older draft names) |
| verify email: verify email | none | blocked | No account: sign-up stopped at Cloudflare Turnstile. Auth.md: API token and Remote MCP URL only from Settings > Developer in the app; no OAuth, no agent provisioning. |
| get API token / Remote MCP URL: get API token / Remote MCP URL | none | blocked | No account: sign-up stopped at Cloudflare Turnstile. Auth.md: API token and Remote MCP URL only from Settings > Developer in the app; no OAuth, no agent provisioning. |
| first API call: first API call | none | blocked | No account: sign-up stopped at Cloudflare Turnstile. Auth.md: API token and Remote MCP URL only from Settings > Developer in the app; no OAuth, no agent provisioning. |
| first create: first create | none | blocked | No account: sign-up stopped at Cloudflare Turnstile. Auth.md: API token and Remote MCP URL only from Settings > Developer in the app; no OAuth, no agent provisioning. |
| Create and send an email campaign: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/campaigns, PUT /api/3/campaigns/{id}/schedule |
| Build a multi-step automation workflow: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: None |
| Enroll or remove a contact from an automation: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: DELETE /api/3/contactAutomations/{id} |
| Create, update, and manage contacts: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/contact/sync, GET /api/3/contacts |
| Send an SMS broadcast: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/broadcasts (SMS Broadcast API) |
| Send a WhatsApp template message: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/channels/whatsapp/template/send |
| Create and manage deals through a pipeline: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/deals, PUT /api/3/deals/{id} |
| Generate AI-drafted campaigns and content from a prompt: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/sms/broadcasts/generate (AI SMS broadcast) and UI prompt box |
| Run autonomous scheduled tasks (recurring AI-run tasks): drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: None |
| Build and publish a landing page: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: None |
| Create a list and manage contact subscription status: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/lists, POST /api/3/contactLists |
| Build and save audience segments: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/segments |
| Tag and untag contacts: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/contactTags, DELETE /api/3/contactTags/{id} |
| Define and set custom field values on contacts and deals: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/fields, POST /api/3/fieldValues |
| Build an embeddable lead capture form: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/forms, GET /forms/{id} embed html |
| Create and manage reusable email templates: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/templates |
| A/B split test campaign variations: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: PUT split percentages on a campaign |
| Track site visits and custom events tied to a contact: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: PUT /api/3/siteTracking, POST tracking domain whitelist |
| View campaign and deal performance reports: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: GET /api/3/campaigns/{id}/reportTotals, /dealReporting |
| Auto-score contacts and deals: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: None |
| Automate sales routing / lead assignment rules: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: PATCH deal_owner_bulk_update |
| Create deal tasks and reminders: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: GET /api/3/tasks, POST taskNotification |
| Add notes to a deal or contact: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/notes, create-a-contact-note |
| Define and populate custom object schemas/records: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: GraphQL/custom objects API |
| Sync orders, products, and abandoned carts from a store: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: Ecommerce GraphQL API (orders, products, browse abandonment) |
| Configure webhooks for account events: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/webhooks |
| Build a brand kit the AI uses for content generation: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: None |
| Set custom instructions / memory for Active Intelligence: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: Partners API: AI customization profiles/instructions endpoints |
| Manage contacts and deals from a Gmail/Outlook inbox extension: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: None |
| Bulk import or merge contacts: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/import/bulk_import, POST merge contacts |
| Manage users, groups, and SSO access: drive via MCP | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/3/users, create-a-single-sign-on-token, bulk-delete-groups |
| Connect third-party apps (Shopify, Salesforce, Stripe, Zapier, etc.): drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: DeepData Integrations: POST /api/3/connections |
| Manage sending domains and deliverability settings: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: None |
| Create and manage child (sub) accounts for agencies/resellers: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST /api/partner child-accounts create, GET child accounts list |
| Clone an account via snapshot for reseller provisioning: drive via API | none | blocked | Not attempted against the product: no account/credentials (trial sign-up behind Cloudflare Turnstile). Documented route exists in docs: POST child_account_snapshots create-snapshot |
| buy a plan: find an agent-usable purchase path | none | blocked | No 402/x402/MPP/UCP anywhere; no billing endpoints in v3 OpenAPI (no paths matching bill/plan/subscri/upgrade); pricing page: 14-day free trial, 'No credit card needed'; purchase happens in the app after login, which needs the human-gated sign-up. Checkout vendor unknown (not reached). |
| cancel plan: cancel | none | skipped | No plan or trial started (sign-up blocked). |
| delete account: delete account | none | skipped | No account created. Docs list no API to delete one's own account (only 'Bulk delete accounts' = CRM account records, and partner child accounts). |
Also in Email marketing.
ButtondownL4Gets in on its ownActiveCampaign vs Buttondown
BrevoL2Gets in on its ownActiveCampaign vs Brevo
beehiivL1Can't sign up on its ownActiveCampaign vs beehiiv
KitL1Can't sign up on its ownActiveCampaign vs Kit