Connector guide8-minute read23 MCP tools7 languages

How to Connect Iterable to ChatGPT via MCP

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

HCBy HelpCode teamUpdated 8 min read Open-source on GitHub

No credit card · 7-day trial · Self-host alternative available

Iterable

Iterable

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

tools

23

Region

INTL

Category

Marketing Automation

Authentication

API Key

Required env vars

ITERABLE_API_URLITERABLE_API_KEY
Install in one click on Cloud

7-day free trial · No credit card

  • 7-day free trial
    No credit card required
  • GDPR & SOC 2 ready
    EU data residency, audit logs
  • Open-source on GitHub
    Open source · AGPL-3.0
  • Works with ChatGPT, Claude, Gemini
    Any MCP-compatible client

Skip the install. Get this working in under 2 minutes.

Start a free trial on cloud.anythingmcp.com, add the Iterable in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.

Start free trial

Summary

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

Try asking

Example prompts for Iterable

Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.

Iterable · live via MCP
Share
Opus 4.7

Claude is AI and can make mistakes. Please double-check responses.

💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Iterable, paste your credentials, mint an MCP API key and you're done. No Docker, no git clone, no local server.

Iterable + ChatGPT

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

Prerequisites

See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:

ITERABLE_API_URL, ITERABLE_API_KEY

Step 1 — Get credentials

Setting up takes about 3 minutes. You need an Iterable user who can create API keys in the project, and you need to know whether the project is hosted in the US or the EU.

  1. In Iterable, open Integrations → API Keys in the project settings and click New API Key. Choose a Server-side key if the AI should read and write, or a Read-only key if it should only read. JavaScript and Mobile keys do not work here.
  2. Copy the key and paste it into ITERABLE_API_KEY. A key belongs to one project, so one connector works with one Iterable project. The key is sent only to Iterable, in the Api-Key header.
  3. Set ITERABLE_API_URL to the project's data center: https://api.iterable.com for US projects, https://api.eu.iterable.com for EU projects (the ones you sign in to at app.eu.iterable.com), without /api or any other path.
  4. Install the connector and start with iterable_list_channels: it checks the key and shows the project's marketing and transactional channels.

One key for the whole project: the key acts for the project, not for one person. Whoever uses this connector sees every user and campaign the key can read, so share the MCP server only with people allowed to see that.

What it covers: user profiles by email or userId with all their fields, their latest events (custom events, purchases, sends, opens, clicks, bounces, unsubscribes) and the messages sent to them; lists with their size and members; campaigns with their details and metrics; templates, channels, message types, catalogs and catalog items. Campaign metrics come back as a table, one row per campaign, with sends, deliveries, unique opens and clicks, bounces, complaints, unsubscribes, purchases and revenue.

Changes wait for your yes: the AI shows what it will write and waits for your confirmation before every change.

  • iterable_update_user merges fields into a profile. Changed fields can move the user into dynamic lists and start journeys.
  • iterable_track_event records a custom event, such as a signup or a booking, which can also start a journey.
  • iterable_subscribe_to_list and iterable_unsubscribe_from_list change list membership. Unsubscribing with the channel option works like a global unsubscribe from that channel.
  • iterable_send_email sends a real email from a triggered campaign to one person, now or at a set time. Sending to many people stays a campaign in Iterable.

Switched off at install: iterable_delete_user_by_email and iterable_delete_user_by_user_id remove profiles and their data for good. An administrator turns them on only on purpose. With a Read-only key, every write answers 403; switch off the write tools for a read-only setup.

Email or userId: depending on whether the project is email-based, userID-based or hybrid, the AI identifies a user by email or by userId, never both in the same call. Times in answers are epoch milliseconds.

Limits per project: most reads 100 calls a second, campaign metrics 10 a minute, list size and list members 5 a minute, sent messages 3 a second. Members of large lists are cut at about 100 KB; the AI checks the list size first.

Common errors: 401 "Invalid API key" means the key is wrong or deleted, a JavaScript or Mobile key, or from the other data center; check ITERABLE_API_URL. 400 with a code such as BadParams or RequestFieldsTypesMismatched: a parameter or a field type is wrong, and the message says which. 404 or NotFound: the user, list or campaign does not exist in this project. 429: a rate limit is reached; wait and try again.

The connector does not run export jobs or bulk endpoints, edit templates or snippets, manage experiments or journeys, send in-app, push, SMS or web push messages, change subscriptions per message type or change catalogs.

Step 2 — Install the adapter

curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d

Step 3 — Add the connector in ChatGPT

Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide shows YOUR_SERVER_ID.

ChatGPT adds MCP servers as plugins on its Plugins page, on the web and on paid plans. Developer mode is no longer needed. In a Business workspace only admins and owners can add one; in Enterprise and Edu an admin can grant the Create plugins with MCPs permission.

  1. Go to chatgpt.com/plugins, click +, then Add custom MCP server.
  2. Enter a name, e.g. Name: Iterable.
  3. Under Connection, enter the Server URL https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID and keep Authentication on OAuth.
  4. Select I understand and want to continue, then Create as a plugin. When ChatGPT asks, sign in to AnythingMCP and allow access.
  5. Install the new plugin from your personal plugins, then type @ in a chat and pick it.

Available tools

ToolWhat it does
iterable_list_listsList the user lists of the Iterable project: id, name, type (Standard, Dynamic, Suppression, Internal), description and creation time…
iterable_get_list_sizeCount the users in one Iterable list
iterable_list_list_usersGet the users of one Iterable list as plain text, one email (or userId) per line
iterable_get_user_by_emailGet an Iterable user profile by email: email, userId and all dataFields (profile fields, subscription and channel settings, signup date and…
iterable_get_user_by_idGet an Iterable user profile by userId: email, userId and all dataFields
iterable_get_user_events_by_emailGet the latest events of an Iterable user by email, newest first: custom events, purchases, email sends, opens, clicks, bounces…
iterable_get_user_events_by_user_idGet the latest events of an Iterable user by userId, newest first: custom events, purchases, message sends, opens, clicks, bounces and…
iterable_get_sent_messagesList the messages Iterable sent to a user (by email or userId): message id, campaign id, template id and time, optionally filtered by…
iterable_list_campaignsList the campaigns of the Iterable project, a page at a time: id, name, type (Blast or Triggered), state, message medium, template, lists…
iterable_get_campaignGet one Iterable campaign by id: name, type, state, message medium, template id, send size, lists and suppression lists, labels, workflow…
iterable_get_campaign_metricsGet campaign metrics from Iterable as CSV text: one row per campaign with columns such as total sends, deliveries, unique opens and clicks…
iterable_list_templatesList the message templates of the Iterable project, a page at a time: template id, name, message type, campaign, creator, created and…
iterable_list_channelsList the message channels of the Iterable project: id, name, channel type (Marketing or Transactional) and medium (Email, Push, SMS)
iterable_list_message_typesList the message types of the Iterable project: id, name, channel id, subscription policy (opt-in or opt-out), frequency cap and rate limit
iterable_list_catalogsList the catalog names of the Iterable project (catalogs hold products, articles or other items used for personalization)
iterable_list_catalog_itemsList the items of one Iterable catalog, a page at a time: item id, last modified time and the item's fields
iterable_update_userCreate or update an Iterable user profile by email or userId: the dataFields given are merged into the profile, missing fields are kept
iterable_track_eventRecord a custom event for an Iterable user (by email or userId), such as a signup, a booking or a page view, with its data
iterable_subscribe_to_listAdd users to a static Iterable list (by email or userId), creating profiles that do not exist unless update_existing_users_only is true
iterable_unsubscribe_from_listRemove users from a static Iterable list (by email or userId)
iterable_send_emailSend the email of a triggered Iterable campaign to one user (by email or userId), now or at send_at, with dataFields for the template
iterable_delete_user_by_emailDelete an Iterable user by email, asynchronously (email-based and hybrid projects)
iterable_delete_user_by_user_idDelete Iterable users by userId, asynchronously; every profile with that userId is removed for good

Example prompts

  • "Look up [email protected] in Iterable: her profile fields, her last 20 events and the campaigns that emailed her this month."
  • "Compare sends, unique opens, unique clicks and unsubscribes of our last five blast campaigns in a table."
  • "How many users are in the VIP Newsletter list, and which templates does the Welcome campaign use?"
  • "Add [email protected] to the Beta testers list and record a beta_signup event for him, but show me what you will write first."

FAQ

Does the free ChatGPT plan work with custom MCP servers? OpenAI documents custom MCP servers for paid plans only; the Free plan is not on its list.

Next steps

Was this guide helpful?

Your Iterable agent is one click away.

Install the connector, paste the key, prompt ChatGPT. Free for 7 days, no credit card.

Related guides

Connectors

How to Connect Iterable to Claude via MCP

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

Connectors

How to Connect Iterable to Cursor via MCP

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

Connectors

How to Connect Iterable to Gemini via MCP

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

Connectors

How to Connect Iterable to Meta Muse via MCP

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

Connectors

Iterable to MCP: Users, Lists and Campaign Metrics in any AI Agent

Let your AI work with Iterable: look up users, their events and messages, review lists, campaigns and campaign metrics, templates and catalogs, update profiles, track events, manage list membership and send a triggered email after you confirm.

Connectors

How to Connect Avito to ChatGPT via MCP

Let your AI work with your Avito business account: list your ads and change their prices, read views, contacts and calls statistics, check autoload uploads and their errors, the feed format and your wallet, and read Avito Messenger chats. Sending messages and changing autoload settings are optional and off by default.