Integration · Marketing
Connect Claude & ChatGPT to Emarsys
Ask your AI to find a contact in Emarsys, add people to a contact list or check how last week's email performed. It can create and update contacts, draft email campaigns, send test emails and launch a campaign now or on a schedule. It can also count the contacts in a segment and trigger external events that start your automations.
Free plan, no credit card. Takes about a minute.
Try asking
“Find [email protected] and show her first name and opt-in status.”
The AI finds the contact by email and reads the field values you ask for.
“How did the spring newsletter do?”
It finds the campaign and reads its sends, opens, clicks, bounces and unsubscribes.
“Add these 20 email addresses to the VIP list.”
It looks up the list ID and adds the contacts, identified by their email field.
What your AI can do
Contacts and lists
Find, create and update contacts, read their field values and email history, and create lists or add and remove contacts.
Email campaigns
List, create, copy and update campaigns, send test emails, launch now or on a schedule, and read results.
Segments and automation
Read and count segments, list Automation Center programs and forms, and trigger external events for contacts.
“How many contacts are in the Lapsed buyers segment?”
It reads the segment and counts the contacts currently in it.
“Copy last month's product update email and send me a test.”
It copies the campaign into a new draft and sends a test version to your address.
“Launch the draft campaign tomorrow at 9:00 Copenhagen time.”
It schedules the launch with that time and time zone. Once delivered, the emails cannot be pulled back.
123 tools for Emarsys
These tools are switched on when you connect. You can switch any of them off, or require your approval before it runs.
add_contacts_to_listChanges dataAdd contacts to a contact list (`list_id`), identified by `key_id` (e.g. 3 for email) and `external_ids`.copy_email_campaignVisible to othersCopy an existing email campaign (`email_id`) into a new draft, optionally with a new `name`.count_segment_contactsGet the number of contacts currently in a segment (`segment_id`).create_administratorChanges dataCreate a new administrator. Required: username, password, access level or interface language. API summary: Create an Administrator Account.create_administrator_patchChanges dataCreate a new patch for a administrator. API summary: Update an Administrator Account.create_autoimportChanges dataCreate a new autoimport. API summary: Create an Auto-import Profile.create_blocklistChanges dataCreate a new blocklist. API summary: Blocklist Emails and Domains.create_checkidChanges dataCreate a new checkid. Required: key id or external ids. API summary: Verify Internal Contact Identifiers.create_contact_listChanges dataCreate a contact list with `name`, filled with contacts identified by `key_id` (e.g. 3 for email) and `external_ids` (the values).create_contactlist_renameChanges dataCreate a new rename for a contactlist. Required: name. API summary: Rename a Contact List.create_contactlist_replaceChanges dataCreate a new replace for a contactlist. Required: key id or external ids. API summary: Replace a Contact List.create_contactsChanges dataCreate one or more contacts. Pass `key_id` (identifying field, e.g. 3 for email) and `contacts` (list of objects keyed by field ID, e.g. {"1": "Jane", "3": "[email protected]"}); optionally add them to `contact_list_id`.create_email_campaignVisible to othersCreate an email campaign with `name`, `subject`, `fromname`, `fromemail`, `language`, `html_source`, `text_source` and `email_category`; target it with `contactlist` or `filter` (segment). Nothing is sent until it is launched.create_eventChanges dataCreate a new event. Required: name. API summary: Create an External Event.create_exampleChanges dataCreate a new example. Required: parameters, fields or limit. API summary: Request External Content for Personalization.create_fieldChanges dataCreate a new field. Required: name or application type. API summary: Create a Field.create_filter_runVisible to othersCreate a new run for a filter. Has effects visible outside this system. API summary: Run a Segment for Multiple Contacts.create_filter_single_runChanges dataCreate a new single run for a filter. API summary: Run a Segment for a Single Contact.create_folderChanges dataCreate a new folder. Required: name or parent. API summary: Create a Media Database Folder.create_form_triggerChanges dataCreate a new trigger for a form. Required: key id or external id. API summary: Trigger Contact Registration.create_getdeliverystatusVisible to othersCreate a new getdeliverystatus. Required: email id. Has effects visible outside this system. API summary: Query Delivery Status.create_getlaunchesofemailVisible to othersCreate a new getlaunchesofemail. Required: email id. Has effects visible outside this system. API summary: List Email Campaign Launches.create_keyChanges dataCreate a new key. API summary: List Keys in the Keyring.create_keyringChanges dataCreate a new keyring. Required: comment. API summary: Create a Key in the Keyring.create_last_changeChanges dataCreate a new last change. Required: key id, key values or field id. API summary: Query Field Changes.create_message_broadcastVisible to othersCreate a new broadcast for a message. Required: email. Has effects visible outside this system. API summary: Launch an Email Campaign to Virtual Contacts (Broadcast).create_message_sectionVisible to othersCreate a new section for a message. Has effects visible outside this system. API summary: Create a Section in a Template-based Email Campaign.create_message_stopVisible to othersCreate a new stop for a message. Has effects visible outside this system. API summary: Stop an Email Campaign.create_message_trackedlinkVisible to othersCreate a new trackedlink for a message. Required: section id or url. Has effects visible outside this system. API summary: Create a Tracked Link in an Email Campaign.create_message_updatesourceVisible to othersCreate a new updatesource for a message. Required: body email id. Has effects visible outside this system. API summary: Update an Email Campaign Recipient Source.create_message_urlVisible to othersCreate a new url for a message. Required: key id or key value. Has effects visible outside this system. API summary: Get the URL of a Launched Email Campaign Content.create_message_versionVisible to othersCreate a new version for a message. Required: new name. Has effects visible outside this system. API summary: Version an Email Campaign.create_program_abortChanges dataCreate a new abort for a program. API summary: Abort a Program.create_responseVisible to othersCreate a new response. Required: type. Has effects visible outside this system. API summary: Query Email Response Metrics and Deliverability.create_table_recordChanges dataCreate a new record for a table. Search records first to avoid duplicates. API summary: Insert Records into an RDS Table.create_unsubscribeVisible to othersCreate a new unsubscribe. Required: launch list id, email id or contact uid. Has effects visible outside this system. API summary: Unsubscribe a Contact from an Email Campaign.create_updateChanges dataCreate a new update. Required: wsse, key id or events. API summary: Trigger a Wishlist Update.create_upsertChanges dataCreate a new upsert. API summary: Upsert Records in an RDS Table.delete_an_email_campaignDeletesPermanently delete a delete. Destructive action; may require approval. API summary: Delete an Email Campaign.delete_autoimport_deletesDeletesPermanently delete a delete by profile id. Destructive action; may require approval. API summary: Delete an Auto-import Profile.delete_contactlist_deletelistsDeletesPermanently delete a deletelist by list id. Destructive action; may require approval. API summary: Delete a Contact List.delete_document_deletesDeletesPermanently delete a delete by file id. Destructive action; may require approval. API summary: Delete a Media Database File.delete_event_deletesDeletesPermanently delete a delete by event id. Destructive action; may require approval. API summary: Delete an External Event.delete_fieldDeletesPermanently delete a field by field id. Destructive action; may require approval.delete_filter_deletesDeletesPermanently delete a delete by segment id. Destructive action; may require approval. API summary: Delete a Segment.delete_key_deletesDeletesPermanently delete a delete by key id. Destructive action; may require approval. API summary: Delete a Key from the Keyring.delete_program_deletesDeletesPermanently delete a delete by program id. Destructive action; may require approval. API summary: Delete a Program.delete_removesDeletesPermanently delete a remove by table name. Destructive action; may require approval. API summary: Delete Records from an RDS Table.delete_section_deletesDeletesPermanently delete a delete by section id. Destructive action; may require approval. API summary: Delete a Section from a Template-based Email Campaign.delete_sourceDeletesPermanently delete a source by source id. Destructive action; may require approval. API summary: Delete a Contact Source.download_dataDownload the document for a data. Results are paginated. API summary: Download Export Data.export_filtersChanges dataExport filters. API summary: Export a Segment.export_getchangesChanges dataExport getchanges. API summary: Export Updated Contacts.export_getcontactsVisible to othersExport getcontacts. Has effects visible outside this system. API summary: Export a Contact List.export_getregistrationsChanges dataExport getregistrations. API summary: Export Contact Registrations.export_getresponsesVisible to othersExport getresponses. Has effects visible outside this system. API summary: Export Responses.find_contactFind a contact by a field value: `key_id` is the field (e.g. 3 for email) and `key_value` the value; `return` is the field ID to return (e.g. 3 or id).get_administratorGet one administrator by administrator id. API summary: Get Administrator Details.get_autoimportGet one autoimport by profile id. API summary: Query an Auto-import Profile.get_contact_dataChanges dataGet field values for one or more contacts. Pass `key_id` (the identifying field, e.g. 3 for email), `key_values` (list of values) and `fields` (field IDs to return).get_contact_email_historyVisible to othersGet the email sending history (which campaigns were sent) for a list of `contacts` IDs, optionally between `start_date` and `end_date`.get_contact_list_dataGet field values (`fields`, a list of field IDs) for the contacts in a contact list (`list_id`), with `limit` and `offset` paging.get_contactlistGet one contactlist by list id. API summary: Count Contacts in a Contact List.get_documentGet one document by document id. API summary: Get a Media Database File.get_email_campaignGet one email campaign by `message_id`, including subject, sender, recipients and status; set `raw_html` or `raw_text` to include the content.get_email_campaign_resultsGet the response summary of an email campaign (`email_id`): sends, opens, clicks, bounces and unsubscribes, optionally for a date range or `launch_id`.get_eventGet one event by event id. API summary: Query an External Event.get_exportGet one export by export id. API summary: Check Export Status.get_filter_contactGet one contact for a filter by contact id. API summary: Look Up a Contact in a Segment.get_message_sectionGet one section for a message by section id. API summary: Get a Section of a Template-based Email Campaign.get_message_trackedlinkGet one trackedlink for a message by relative id. API summary: List Tracked Links in an Email Campaign.get_runGet one run by run id. API summary: Poll the Status of a Segment Run for Multiple Contacts.get_segmentGet one segment by `segment_id`, including its name and definition.get_single_runGet one single run by run id. API summary: Poll the Status of a Segment Run for a Single Contact.get_templateGet one template by template id. API summary: Get an Email Template.get_translateGet one translate by language id. API summary: List Available Fields.launch_email_campaignVisible to othersLaunch an email campaign (`email_id`) to its recipients now, or at a `schedule` time with `timezone`. This sends real emails and cannot be undone once delivered.list_administratorsList administrators. API summary: List Administrator Accounts.list_autoimportsList autoimports. API summary: List Auto-import Profiles.list_automation_programsList the Automation Center programs with their IDs, names and status.list_available_choices_of_a_single_choice_fieldGet one translate by language id. API summary: List Available Choices of a Single-choice Field.list_choicesList choices. Optional filters: language or fields. API summary: List Available Choices of a Multiple-choice Field.list_conditionsList conditions. API summary: List Conditional Text Rules.list_contact_list_membersList the contact IDs in a contact list (`list_id`), with `limit` and `offset` paging.list_contact_listsList all contact lists with their IDs and names.list_documentsList documents. Optional filters: folder. API summary: List Media Database Files.list_email_campaignsList email campaigns, optionally filtered by `status`, `launched`, `contactlist`, `email_category` or a `fromdate`/`todate` range.list_email_categoriesList the email categories with their IDs (needed as `email_category` when creating campaigns).list_email_templatesList the email templates available for new campaigns.list_ensList ens. API summary: Get Account Languages.list_event_usagesList usages for a event. API summary: List Uses of an External Event.list_external_eventsList the external events that can trigger automated emails or programs.list_filter_contact_criteriaList contact criteria for a filter. API summary: Get Segment Contact Criteria.list_foldersList folders. Optional filters: folder. API summary: List Media Database Folders.list_formsList the sign-up forms with their IDs and names.list_getaccesslevelsList getaccesslevels. API summary: List Access Levels.list_getinterfacelanguagesList getinterfacelanguages. API summary: Get User Interface Languages.list_getstartpagesList getstartpages. API summary: List Administrator Start Pages.list_languagesList languages. API summary: Get Email Campaign Languages.list_linkcategoriesList linkcategories. API summary: List Link Categories.list_message_personalizationsList personalizations for a message. API summary: List Personalization Alternate Texts.list_message_programsList programs for a message. API summary: List AC Programs That Use an Email Campaign.list_message_responsesList responses for a message. API summary: Get Email Response Metrics and Deliverability Results.list_message_sectionsList sections for a message. API summary: List Sections in a Template-based Email Campaign.list_programresourcesList programresources. Optional filters: resource id or service id. API summary: List Program Resources in Use.list_settingsList settings. API summary: Get Customer Settings.list_sourcesList sources. API summary: List Contact Sources.remove_contacts_from_listDeletesRemove contacts from a contact list (`list_id`), identified by `key_id` and `external_ids`. The contacts themselves are kept.search_contactlist_contactsSearch contacts for a contactlist. Use this to find existing contacts before creating a new contact. API summary: Look Up Contacts in a Contact List.send_test_emailVisible to othersSend a test version of an email campaign (`email_id`) to a `recipientlist` of email addresses or a `contactlist_id`. This sends real emails to those recipients.submit_messageVisible to othersPreview a message (email id). Has effects visible outside this system. API summary: Preview Email Campaign Contents.submit_message_finalizeVisible to othersFinalize a message (email id). Has effects visible outside this system. API summary: Finalize a Multi-language Email Campaign.trigger_external_eventChanges dataTrigger an external event (`event_id`) for contacts identified by `key_id` (e.g. 3 for email) in `contacts`. This may send automated emails to those contacts.update_contactsVisible to othersUpdate one or more contacts identified by `key_id` (e.g. 3 for email) with `contacts` (objects keyed by field ID). Set `create_if_not_exists` to create missing contacts.update_email_campaignVisible to othersUpdate a draft email campaign by `email_id`: name, subject, sender, content or target `contactlist`. Only the fields you pass change.update_eventChanges dataUpdate an existing event identified by event id. API summary: Update an External Event.update_filter_contact_criteriaVisible to othersUpdate an existing contact criterion identified by segment id. Has effects visible outside this system. API summary: Update Contact Criteria in a Segment.update_filtersVisible to othersUpdate an existing filter. Has effects visible outside this system. API summary: Create a Segment.update_keyChanges dataUpdate an existing key identified by key id. API summary: Retrieve a Key from the Keyring.update_message_sectionVisible to othersUpdate an existing section identified by section id. Has effects visible outside this system. API summary: Update a Section of a Template-based Email Campaign.update_message_trackedlinkVisible to othersUpdate an existing trackedlink identified by link id. Has effects visible outside this system. API summary: Update a Tracked Link in an Email Campaign.update_table_recordsVisible to othersUpdate an existing record identified by table name. Only the fields you pass are changed. Has effects visible outside this system. API summary: Update Records in an RDS Table.upload_documentChanges dataUpload a document. API summary: Upload a File into the Media Database.
Set up in three steps
- 1
Pick the app
Create a free HeyMyApps account and choose Emarsys from the app list.
- 2
Paste your key
Paste the Client ID and Client secret of an Emarsys API credential. In Emarsys go to Management > Security Settings > API Credentials and create a new credential of type OpenID Connect (API v3) with the permissions you need. Copy the Client ID and Client secret right away, because they cannot be shown again.
- 3
Add the link to your AI
You get a personal MCP link. Add it to Claude, ChatGPT or Cursor:
- Click your name, then Settings › Connectors › Add custom connector.
- Paste your link as the Remote MCP server URL.
- Switch it on from the + menu in a chat.
Questions
What can the AI do in Emarsys?
The AI can find contacts and read their field values and email history, list contact lists, segments, forms, templates, email categories, external events and Automation Center programs, and read campaign details and results. It can create and update contacts and lists, create, copy, update and launch email campaigns, send test emails and trigger external events.
Does the AI see my Emarsys client secret?
No. Your Emarsys credentials are encrypted at rest and never shown to the AI. After you save them, they are 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 read-only. Launching a campaign, sending a test and triggering an external event can all send real emails, and removing contacts from a list changes who you reach. These can require your approval before they run. Every tool call is logged.
Does it work with ChatGPT?
Yes. In ChatGPT go to Settings › Apps & Connectors › Advanced and turn on Developer mode, then 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?
Emarsys connects with OAuth, and this app's OAuth connection needs the HeyMyApps Pro plan. HeyMyApps also has a free plan with no credit card, but it does not include this connection. Paid plans bill per completed task. You also need your own Emarsys account.
What is key_id when the AI works with contacts?
Emarsys identifies contacts by a field ID rather than by name. The email field is usually 3, so the AI passes key_id 3 and the email address to find, create or update a contact. It can look up other field IDs through the contact tools when you use a different identifier.
Related integrations
Let your AI work in Emarsys today.
Start free. Your key stays encrypted, and you decide what the AI may do.
Connect Emarsys freeHeyMyApps is not affiliated with Emarsys. Product names are trademarks of their owners.






