Skip to content

Integration · Marketing

customer.io

Connect Claude & ChatGPT to Customer.io

Ask your AI what messages a customer has received, which segments they are in or how many people are in a segment, and it reads the answer from Customer.io. It can also send transactional emails and SMS from your templates and trigger API-triggered broadcasts, with your approval if you want it.

Connect Customer.io free

Free plan, no credit card. Takes about a minute.

Try asking

  • “What emails has [email protected] received this month?”

    The AI finds the person by email and lists the messages sent to them in that period, with delivery metrics.

  • “Is Anna opted in to product updates?”

    It reads her subscription preferences and shows which topics she is opted into.

  • “How many people are in the Trial ending segment?”

    It finds the segment and counts its members.

What your AI can do

People and segments

Find people by email or attributes, read their attributes, activity, segments and subscription preferences, and list or count segment members.

Messages and campaigns

List sent messages with delivery metrics, per person or across the workspace, and read campaigns, newsletters and broadcasts.

Transactional sends

Send transactional emails and SMS from your templates or your own content, and trigger API-triggered broadcasts.

  • “Send the password reset email to [email protected] again.”

    It picks the transactional template and sends it to that person. The email is delivered immediately.

  • “What did customer 4821 do in the app yesterday?”

    It lists the person's recent activity, such as events and attribute changes.

  • “Trigger the Maintenance notice broadcast.”

    It finds the API-triggered broadcast and triggers it. Messages go out to the real people in its audience.

200 tools for Customer.io

These tools are switched on when you connect. You can switch any of them off, or require your approval before it runs.

  • attach_messageVisible to othersLink a message (email id). Has effects visible outside this system. API summary: Link an email to a workflow.
  • cancel_triggerDeletesCancel a trigger (trigger id). Destructive action; may require approval. API summary: Cancel a scheduled broadcast.
  • count_segment_membersGet the number of people in a segment by `segment_id`.
  • create_a_folderChanges dataCreate a new folder. Required: name. API summary: Create a folder.
  • create_attributeChanges dataCreate a new attribute. Required: attributes. API summary: Add or update attributes.
  • create_batchVisible to othersCreate a new batch. Has effects visible outside this system. API summary: Send multiple requests.
  • create_categoryChanges dataCreate a new category. API summary: Create a collection.
  • create_componentChanges dataCreate a new component. Required: name, tag or content. API summary: Create a component.
  • create_customer_suppressChanges dataCreate a new suppress for a customer. API summary: Suppress a customer profile.
  • create_customer_unsuppressChanges dataCreate a new unsuppress for a customer. API summary: Unsuppress a customer profile.
  • create_endChanges dataCreate a new end. Required: instance id. API summary: End a live notification.
  • create_entityChanges dataCreate a new entity. API summary: Make a single request.
  • create_eventChanges dataCreate a new event. Required: events. API summary: Add or update events.
  • create_folderChanges dataCreate a new folder. Required: name. API summary: Create a folder.
  • create_messageVisible to othersCreate a new message. Required: name. Has effects visible outside this system. API summary: Create an email.
  • create_message_languageVisible to othersCreate a new language for a message. Required: language. Has effects visible outside this system. API summary: Create an email translation.
  • create_message_test_sendVisible to othersCreate a new test send for a message. Required: to. Has effects visible outside this system. API summary: Send a test email.
  • create_message_versionChanges dataCreate a new version for a message. Required: name. API summary: Save an email version.
  • create_newsletterChanges dataCreate a new newsletter. Required: body. API summary: Create and send a one-time send.
  • create_newsletter_languageChanges dataCreate a new language for a newsletter. Required: body. API summary: Add a translation to a one-time send.
  • create_newsletter_scheduleChanges dataCreate a new schedule for a newsletter. Required: scheduled at. API summary: Schedule a one-time send.
  • create_newsletter_test_groupChanges dataCreate a new test group for a newsletter. API summary: Create an A/B test group for a one-time send.
  • create_objectChanges dataCreate a new object. Required: object type id or filter. API summary: Find objects.
  • create_reporting_webhookDeletesCreate a new reporting webhook. Required: name, endpoint or events. Destructive action; may require approval. API summary: Create a reporting webhook.
  • create_segmentChanges dataCreate a new segment. Required: segment. API summary: Create a manual segment.
  • create_segment_customersChanges dataCreate a new segment. Required: ids. API summary: Add people to a manual segment.
  • create_snippetChanges dataCreate a new snippet. Required: name or value. API summary: Create a snippet.
  • create_startChanges dataCreate a new start. Required: identifiers, notification type, attributes or content state. API summary: Start a live notification.
  • create_test_group_languageChanges dataCreate a new language for a test group. Required: body. API summary: Add a translation to a one-time send test group.
  • create_updateChanges dataCreate a new update. Required: instance id or content state. API summary: Update a live notification.
  • delete_a_folderDeletesPermanently delete a folder by folder id. Destructive action; may require approval.
  • delete_categoryDeletesPermanently delete a category by category id. Destructive action; may require approval. API summary: Delete a collection.
  • delete_componentDeletesPermanently delete a component by component id. Destructive action; may require approval.
  • delete_customerDeletesPermanently delete a customer by customer identifier. Destructive action; may require approval.
  • delete_customer_deviceDeletesPermanently delete a device by device id. Destructive action; may require approval. API summary: Delete a customer device.
  • delete_documentDeletesPermanently delete a document by document id. Destructive action; may require approval. API summary: Delete a file asset.
  • delete_folderDeletesPermanently delete a folder by folder id. Destructive action; may require approval.
  • delete_messageDeletesPermanently delete a message by message id. Destructive action; may require approval. API summary: Delete an email.
  • delete_message_languageDeletesPermanently delete a language by language. Destructive action; may require approval. API summary: Delete an email translation.
  • delete_message_versionDeletesPermanently delete a version by version id. Destructive action; may require approval. API summary: Delete an email version.
  • delete_newsletterDeletesPermanently delete a newsletter by newsletter id. Destructive action; may require approval. API summary: Delete a one-time send.
  • delete_newsletter_languageDeletesPermanently delete a language by language. Destructive action; may require approval. API summary: Delete a translation of a one-time send.
  • delete_reporting_webhookDeletesPermanently delete a reporting webhook by webhook id. Destructive action; may require approval.
  • delete_segmentDeletesPermanently delete a segment by segment id. Destructive action; may require approval.
  • delete_segment_customersDeletesPermanently delete a segment by segment id. Destructive action; may require approval. API summary: Remove people from a manual segment.
  • delete_snippetDeletesPermanently delete a snippet by snippet name. Destructive action; may require approval.
  • delete_suppressionDeletesPermanently delete a suppression by email address. Destructive action; may require approval. API summary: Un-suppress an ESP-suppressed address.
  • delete_test_group_languageDeletesPermanently delete a language by language. Destructive action; may require approval. API summary: Delete a translation in a one-time send test group.
  • download_exportDownload the document for a export. API summary: Download an export.
  • export_customersChanges dataExport customers. API summary: Export customer data.
  • export_shipmentsChanges dataExport shipments. API summary: Export information about deliveries.
  • find_person_by_emailFind people in your workspace by `email`; returns their IDs for other calls.
  • get_a_folderGet one folder by folder id. API summary: Get a folder.
  • get_a_translation_of_a_broadcast_messageGet one language for a action by language. API summary: Get a translation of a broadcast message.
  • get_action_languageGet one language for a action by language. API summary: Get a translation of an automation message.
  • get_an_archived_messageList messages for a message. API summary: Get an archived message.
  • get_api_broadcastGet one API-triggered broadcast by `broadcast_id`.
  • get_broadcast_actionGet one action for a broadcast by action id. API summary: Get a broadcast action.
  • get_broadcast_action_link_metricsList links. Optional filters: period, steps or type. API summary: Get broadcast action link metrics.
  • get_broadcast_action_metricsList metrics for a action. Optional filters: period, steps or type. API summary: Get broadcast action metrics.
  • get_broadcast_link_metricsList links. Optional filters: period, steps or unique. API summary: Get broadcast link metrics.
  • get_campaignGet one campaign by `campaign_id`, with its trigger, actions and state.
  • get_campaign_actionGet one action for a campaign by action id. API summary: Get an automation action.
  • get_campaign_triggerGet one trigger for a campaign by trigger id. API summary: Get the status of a broadcast.
  • get_categoryGet one category by category id. API summary: Lookup a collection.
  • get_click_metrics_for_one_time_send_linksList links. Optional filters: period, steps or unique. API summary: Get click metrics for one-time send links.
  • get_componentGet one component by component id. API summary: Get a component.
  • get_documentGet one document by document id. API summary: Get a file asset.
  • get_domain_suppressionGet one suppression for a domain by suppression type. Results are paginated. API summary: Get ESP-suppressed emails by domain.
  • get_event_statusChanges dataGet the current status of a event by customer identifier. API summary: Track a customer event.
  • get_event_status_track_anonymousChanges dataGet the current status of a event. API summary: Track an anonymous event.
  • get_exportGet one export by export id. API summary: Get an export.
  • get_folderGet one folder by folder id. API summary: Get a folder.
  • get_importGet one import by import id. API summary: Retrieve a bulk import.
  • get_inbox_preview_captureGet one capture for a inbox preview by client id. API summary: Get a preview screenshot.
  • get_link_metrics_for_an_actionList links. Optional filters: period, steps, type or unique. API summary: Get link metrics for an action.
  • get_live_notificationGet one live notification by instance id. API summary: Get a live notification's status.
  • get_messageGet one sent message by `message_id`, with recipient, status and delivery metrics.
  • get_message_2Get one message by message id. API summary: Get an email.
  • get_message_inbox_previewGet one inbox preview for a message by run id. API summary: Get an inbox preview job.
  • get_message_languageGet one language for a message by language. API summary: Get an email translation.
  • get_message_renderGet one message by email id. API summary: Render an email.
  • get_message_versionGet one version for a message by version id. API summary: Get an email version.
  • get_newsletterGet one newsletter by `newsletter_id`, with its content IDs and send status.
  • get_newsletter_contentGet one content for a newsletter by content id. API summary: Get a one-time send variant.
  • get_newsletter_languageGet one language for a newsletter by language. API summary: Get a one-time send translation.
  • get_person_attributesGet all attributes of a person by `customer_id` (set `id_type` to email or cio_id if you pass those instead of the ID).
  • get_person_subscription_preferencesGet a person's subscription preferences (which topics they are opted into) by `customer_id`.
  • get_reporting_webhookGet one reporting webhook by webhook id. API summary: Get a reporting webhook.
  • get_search_suppressionGet one search suppression by email address. API summary: Look up an ESP-suppressed address.
  • get_segmentGet one segment by `segment_id`.
  • get_sender_identityGet one sender identity by sender id. API summary: Get a sender.
  • get_suppressionGet one suppression by suppression type. Results are paginated. API summary: Get ESP-suppressed emails by type.
  • get_test_group_languageGet one language for a test group by language. API summary: Get a translation in a one-time send test group.
  • get_transactional_contentGet one content for a transactional by content id. API summary: Get a translation of a transactional by ID.
  • get_transactional_languageGet one language for a transactional by language. API summary: Get a translation of a transactional message.
  • get_transactional_messageGet one transactional message template by `transactional_id`.
  • get_transactional_message_link_metricsList links. Optional filters: period, steps or unique. API summary: Get transactional message link metrics.
  • list_action_metricsList metrics for a action. Optional filters: version, res, end, tz or type. Results are paginated. API summary: Get automation action metrics.
  • list_addressesList addresses. API summary: List IP addresses.
  • list_api_broadcastsList API-triggered broadcasts with their IDs. Read-only.
  • list_assetsList assets. Optional filters: parent folder id or direct descendants only. Results are paginated. API summary: List file assets.
  • list_broadcast_actionsList actions for a broadcast. API summary: List broadcast actions.
  • list_broadcast_messagesList messages for a broadcast. Optional filters: start, metric, state, type, start ts or end ts. Results are paginated. API summary: Get messages for a broadcast.
  • list_broadcast_metricsList metrics for a broadcast. Optional filters: period, steps or type. API summary: Get broadcast metrics.
  • list_broadcast_triggersList triggers for a broadcast. API summary: Get broadcast triggers.
  • list_campaign_actionsList actions for a campaign. Optional filters: start. API summary: List automation actions.
  • list_campaign_journey_metricsList journey metrics for a campaign. Optional filters: end or resolution. Results are paginated. API summary: Get automation journey metrics.
  • list_campaign_messagesList messages for a campaign. Optional filters: start, type, metric, drafts, start ts or end ts. Results are paginated. API summary: Get automation message metadata.
  • list_campaign_metricsList metrics for a campaign. Optional filters: version, res, end, tz or type. Results are paginated. API summary: Get automation metrics.
  • list_campaignsList campaigns with their IDs, state and triggers. Read-only.
  • list_categoriesList categories. API summary: List your collections.
  • list_category_contentsList contents for a category. API summary: Lookup collection contents.
  • list_componentsList components. Optional filters: tag, parent folder id, direct descendants only, sort by, sort order or created before. Results are paginated.
  • list_content_metricsList metrics for a content. Optional filters: period, steps or type. API summary: Get metrics for a test or translation variant of a one-time send.
  • list_creditsList credits. API summary: Get preview credit balance.
  • list_customer_optoutsList optouts for a customer. Optional filters: id type. API summary: Lookup a customer's opt-outs.
  • list_customer_relationshipsList relationships for a customer. Optional filters: id type or start. Results are paginated. API summary: Lookup a customer's relationships.
  • list_customersList customers. API summary: List inbox preview options.
  • list_customers_attributes_and_devicesChanges dataCreate a new attribute. Required: ids. API summary: List customers, attributes, and devices.
  • list_exportsList exports.
  • list_foldersList folders. Optional filters: parent folder id or direct descendants only. Results are paginated.
  • list_folders_list_foldersList folders. Optional filters: parent folder id, direct descendants only, sort by, sort order, created before or created after. Results are paginated.
  • list_linksList links. Optional filters: period, steps or unique. API summary: Get automation link metrics.
  • list_links_get_variant_linksList links. Optional filters: period, steps or type. API summary: Get click metrics for links in one-time send variants.
  • list_message_languagesList languages for a message. API summary: List email translations.
  • list_message_unpublished_changesList unpublished changes for a message. API summary: Check for unpublished changes.
  • list_message_versionsList versions for a message. Optional filters: start date or end date. API summary: List email versions.
  • list_messagesList sent messages across the workspace, filtered by `type` (email, sms, push), `campaign_id`, `newsletter_id`, `metric` or time range.
  • list_messages_2List messages. Optional filters: parent folder id, direct descendants only, sort by, sort order, created before or created after. Results are paginated. API summary: List emails.
  • list_messages_review_emailList messages for a message. API summary: Review an email.
  • list_newsletter_contentsList contents for a newsletter. API summary: List one-time send variants.
  • list_newsletter_messagesList messages for a newsletter. Optional filters: start, metric, start ts, end ts or get tracked responses. Results are paginated. API summary: Get delivery data for a one-time send.
  • list_newsletter_metricsList metrics for a newsletter. Optional filters: period, steps or type. API summary: Get one-time send metrics.
  • list_newsletter_test_groupsList test groups for a newsletter. API summary: List a one-time send's A/B test groups.
  • list_newslettersList newsletters (one-off sends) with their IDs and status. Read-only.
  • list_object_attributesList attributes for a object. Optional filters: id type. API summary: Get Object Attributes.
  • list_object_relationshipsList relationships for a object. Optional filters: start or id type. Results are paginated. API summary: Get Object Relationships.
  • list_object_typesList object types.
  • list_optoutsList optouts. Optional filters: from or start. Results are paginated. API summary: List opt-outs in the workspace.
  • list_person_activitiesList a person's recent activity, such as events they performed and attribute changes, by `customer_id`; filter by `type` or event `name`.
  • list_person_messagesList messages sent to a person by `customer_id`, with delivery metrics, optionally between `start_ts` and `end_ts` (Unix time).
  • list_person_segmentsList the segments a person belongs to, by `customer_id`.
  • list_projectsList projects. Optional filters: node id. Results are paginated. API summary: List inbox preview history.
  • list_regionsList regions. API summary: Find your account region.
  • list_reporting_webhooksList reporting webhooks.
  • list_segment_membersList the people in a segment by `segment_id`, with `limit` and `offset` paging.
  • list_segment_used_biesList used bies for a segment. API summary: Get a segment's dependencies.
  • list_segmentsList all segments with their IDs and types.
  • list_sender_identitiesList sender identities. Optional filters: start, sort or hidden. Results are paginated.
  • list_sender_identity_used_biesList used bies for a sender identity. API summary: Get sender usage data.
  • list_snippetsList snippets.
  • list_subscription_channelsList subscription channels.
  • list_subscription_topicsList subscription topics.
  • list_transactional_contentsList contents for a transactional. API summary: List all variants of a transactional message.
  • list_transactional_messagesList your transactional message templates with their IDs, for use as `transactional_message_id` when sending.
  • list_transactional_messages_2List messages for a transactional. Optional filters: start, metric, state, start ts, end ts or get tracked responses. Results are paginated. API summary: Get transactional message deliveries.
  • list_transactional_metricsList metrics for a transactional. Optional filters: period or steps. API summary: Get transactional message metrics.
  • list_trigger_errorsList errors for a trigger. Optional filters: start or start 2. Results are paginated. API summary: Get broadcast error descriptions.
  • list_workspacesList workspaces.
  • restore_versionChanges dataRestore a version (version id). API summary: Restore an email version.
  • search_peopleChanges dataSearch people with a `filter` on attributes or segments, e.g. {"and":[{"attribute":{"field":"plan","operator":"eq","value":"pro"}}]}. Use `start` for the next page.
  • search_tasksSearch tasks by start, type, name, deleted, customer id or id type. Use this to find existing tasks before creating a new task. Results are paginated. API summary: List activities.
  • send_in_appVisible to othersSend a in app. Has effects visible outside this system. API summary: Send a transactional in-app message.
  • send_messageVisible to othersSend a message. Has effects visible outside this system. API summary: Send a transactional inbox message.
  • send_newsletterVisible to othersSend a newsletter (newsletter id). Has effects visible outside this system. API summary: Trigger a one-time send.
  • send_pushVisible to othersSend a push. Has effects visible outside this system. API summary: Send a transactional push.
  • send_transactional_emailVisible to othersSend a transactional email to one person: `to`, `identifiers` {id or email}, and either `transactional_message_id` with `message_data`, or your own `from`, `subject` and `body`. The email is delivered immediately.
  • send_transactional_smsVisible to othersSend a transactional SMS: `transactional_message_id`, `to` (phone number), `identifiers` {id or email} and optional `message_data`. Delivered immediately.
  • send_whatsappVisible to othersSend a whatsapp. Has effects visible outside this system. API summary: Send a transactional WhatsApp message.
  • submit_customerVisible to othersMerge a customer. Has effects visible outside this system. API summary: Merge duplicate people.
  • submit_formVisible to othersSubmit a form (form id). Has effects visible outside this system.
  • submit_inbox_previewVisible to othersSubmit a inbox preview (email id). Has effects visible outside this system. API summary: Send for inbox previews.
  • submit_messageVisible to othersPublish a message (email id). Has effects visible outside this system. API summary: Publish an email.
  • submit_message_previewVisible to othersPreview a message (email id). Has effects visible outside this system. API summary: Preview an email.
  • submit_message_statusVisible to othersPublish a message (email id). Has effects visible outside this system. API summary: Get publish status.
  • trigger_broadcastVisible to othersTrigger an API-triggered broadcast by `broadcast_id`, sending it to its audience. Optionally pass `body` with `data` for message personalization, or `emails`/`ids` to override the recipients. Messages go out to real people.
  • update_action_languageChanges dataUpdate an existing language identified by language. API summary: Update a translation of an automation message.
  • update_broadcast_actionVisible to othersUpdate an existing action identified by action id. Has effects visible outside this system. API summary: Update a broadcast action.
  • update_campaign_actionChanges dataUpdate an existing action identified by action id. API summary: Update an automation action.
  • update_categoryChanges dataUpdate an existing category identified by category id. API summary: Update a collection.
  • update_category_contentsVisible to othersUpdate an existing content identified by collection id. Has effects visible outside this system. API summary: Update the contents of a collection.
  • update_componentChanges dataUpdate an existing component identified by component id. API summary: Update a component.
  • update_customerChanges dataUpdate an existing customer identified by customer identifier. API summary: Add or update a customer.
  • update_customer_devicesVisible to othersUpdate an existing device identified by customer identifier. Has effects visible outside this system. API summary: Add or update a customer device.
  • update_customer_optoutsVisible to othersUpdate an existing optout identified by customer id. Has effects visible outside this system. API summary: Update a customer's opt-outs.
  • update_documentChanges dataUpdate an existing document identified by document id. API summary: Update a file asset.
  • update_folderChanges dataUpdate an existing folder identified by folder id. API summary: Update a folder.
  • update_messageVisible to othersUpdate an existing message identified by message id. Has effects visible outside this system. API summary: Update an email.
  • update_message_languageVisible to othersUpdate an existing language identified by language. Has effects visible outside this system. API summary: Update an email translation.
  • update_newsletter_contentChanges dataUpdate an existing content identified by content id. API summary: Update a one-time send variant.
  • update_newsletter_languageChanges dataUpdate an existing language identified by language. API summary: Update a translation of a one-time send.
  • update_reporting_webhookDeletesUpdate an existing reporting webhook identified by webhook id. Destructive action; may require approval. API summary: Update a webhook configuration.
  • update_snippetsVisible to othersUpdate an existing snippet. Has effects visible outside this system. API summary: Update snippets.
  • update_suppressionVisible to othersUpdate an existing suppression identified by email address. Has effects visible outside this system. API summary: Suppress an email at the ESP.
  • update_test_group_languageChanges dataUpdate an existing language identified by language. API summary: Update a translation in a one-time send test group.
  • update_transactional_contentChanges dataUpdate an existing content identified by content id. API summary: Update a transactional message.
  • update_transactional_languageChanges dataUpdate an existing language identified by language. API summary: Update a translation of a transactional message.
  • update_unsubscribeChanges dataUpdate an existing unsubscribe identified by delivery id. API summary: Custom unsubscribe handling.
  • upload_importChanges dataUpload a import. API summary: Import items in bulk.

Set up in three steps

  1. 1

    Pick the app

    Create a free HeyMyApps account and choose Customer.io from the app list.

  2. 2

    Paste your key

    Paste a Customer.io App API key. In Customer.io, go to Account Settings › API Credentials, create a new App API key, name it and choose the workspace. Copy the key right away, because it is shown only once.

  3. 3

    Add the link to your AI

    You get a personal MCP link. Add it to Claude, ChatGPT or Cursor:

    1. Click your name, then Settings › Connectors › Add custom connector.
    2. Paste your link as the Remote MCP server URL.
    3. Switch it on from the + menu in a chat.

Questions

What can the AI do in Customer.io?

It can find and search people, read their attributes, activity, segments, messages and subscription preferences, and read segments, campaigns, newsletters, broadcasts, transactional templates and sent messages. It can send transactional emails and SMS and trigger API-triggered broadcasts.

Does the AI see my Customer.io API key?

No. Your Customer.io App API key is encrypted at rest and never shown to the AI. After you save it, it is not shown again, not even to you. The AI only sees the results of the tools it calls.

Can I control what the AI is allowed to do?

Yes. You choose which tools are switched on, so you can start with lookups only. Transactional emails and SMS are delivered immediately and a triggered broadcast reaches real people, so these can require your approval before they run. Every tool call is logged.

Does it work with ChatGPT?

Yes. In ChatGPT, open Settings › Apps & Connectors › Advanced, turn on Developer mode and add your HeyMyApps link. Developer mode needs a paid ChatGPT plan: Plus, Pro, Business or Enterprise. The same link also works in Claude (Settings › Connectors › Add custom connector), Cursor and other MCP clients.

What does it cost?

HeyMyApps has a free plan, and you do not need a credit card to start. Paid plans bill per completed task. You also need your own Customer.io account.

Can the AI edit my campaigns?

No. Campaigns, newsletters and segments are read-only here. The AI can send transactional messages and trigger API-triggered broadcasts, and read the rest so you can ask about it. You build and change campaigns in Customer.io as usual.

Let your AI work in Customer.io today.

Start free. Your key stays encrypted, and you decide what the AI may do.

Connect Customer.io free

HeyMyApps is not affiliated with Customer.io. Product names are trademarks of their owners.