The Dotdigital Marketing MCP server gives your MCP client a set of tools for working with your Marketing account. You don't need to name a tool in your prompt. Your client chooses the tools it needs from what you ask.
To connect a client, see Connect to the Dotdigital Marketing MCP server. For prompts to try, see Dotdigital Marketing MCP server prompt guide.
How tools work
Tools only return data that your user permissions allow. For example, contact tools need the Contacts user permission. Learn more in Manage user access and permissions.
Each table in this article shows:
Read only
The tool reads data and doesn't change anything in your account.Contains personal data
The tool accepts or returns contact-level data, such as email addresses, mobile numbers, contact IDs, or a contact's activity or records.
Many MCP clients ask you to approve a tool before it runs. Read what the tool is about to do before you approve it, especially if it isn't read only.
The tools you can use depend on your account access, your user permissions, and the permissions granted to your connection. If tools are missing after new ones are added, reauthorise your connection. Refreshing your connection doesn't grant new permissions.
Some tools start a job that runs in the background, such as importing Insight data or refreshing a segment. Your AI tool can check on these jobs with the matching status tool.
Where your data goes
When a tool returns data, the MCP server sends it to your MCP client. Your client then passes it to its AI provider, such as Anthropic, OpenAI, or Microsoft.
How that provider stores, processes, or uses your data depends on the provider and your plan with them, not on Dotdigital. Before you use tools that return personal data, check that your AI provider meets your data protection obligations.
Learn more in Dotdigital and AI: FAQ.
Account
Tool | What it does | Read only | Contains personal data |
Get account information | Get details of your account, such as its currency, data formats, and data fields. | Yes | No |
Benchmarks
Tool | What it does | Read only | Contains personal data |
Get industry benchmarks | Get marketing and engagement benchmarks across channels, broken down by industry vertical and region. | Yes | No |
Email campaigns
Tool | What it does | Read only | Contains personal data |
Get email campaigns | List and filter your email campaigns, for example, drafts created in the last month. Campaign content isn't included. | Yes | No |
Get email campaign | Get details of an email campaign, including its content. | Yes | No |
Get email campaigns sent to a list or segment | See which campaigns were sent to a list or segment. | Yes | No |
Get email campaign lists | See which lists and segments a campaign was sent to. | Yes | No |
Get email campaigns performance in a date range | Get performance data for your email campaigns for a date range. | Yes | No |
Get all time activity for a single email campaign | Get performance data for the entire runtime of an email campaign. | Yes | No |
Get email campaign send status | Check whether a campaign send is still processing, has sent, or has failed. | Yes | No |
Create email campaign | Create an email campaign. | No | No |
Update email campaign | Update an email campaign. | No | No |
Copy email campaign | Copy an email campaign to use as a starting point. | No | No |
Delete email campaign | Delete an email campaign and its reporting data. | No | No |
Send email campaign | Send an email campaign to lists, segments, or specific contacts, now or at a scheduled time. | No | Yes |
Send time optimised email campaign | Send an email campaign using send time optimisation, so each contact receives it when they're most likely to engage. | No | Yes |
Check before you send
Your AI tool can send and schedule campaigns. Before you approve a send, check the campaign, who it goes to, and the send time. Deleting a campaign also deletes its reporting data.
Email templates and images
Tool | What it does | Read only | Contains personal data |
Get brand voice | Get your brand voice settings, including your brand identity, industry, and voice guidelines, to use when creating content. | Yes | No |
Get email templates | List your email templates. | Yes | No |
Get email template | Get an email template, including its content and styling. | Yes | No |
Create email template | Create an email template. | No | No |
Update email template | Update an email template. | No | No |
Get blank email template | Get the HTML of an empty EasyEditor campaign, so your AI tool can build campaigns you can edit in EasyEditor. | Yes | No |
Get EasyEditor blocks | Get information about EasyEditor blocks. | Yes | No |
Get EasyEditor HTML guidance | Get guidance on which HTML is and isn't compatible with EasyEditor. | Yes | No |
Get email authoring guidance | Get best practice guidance for creating and changing email HTML. | Yes | No |
Get email template authoring guidance | Get guidance on which tools to use to create or change email templates. | Yes | No |
Get image folders | Browse the folders in your image library. | Yes | No |
Search images | Search your image library by tag or by the start of an image name, and get URLs you can use in campaigns and templates. | Yes | No |
Create image folder | Create a folder in your image library. | No | No |
Upload image | Upload an image to your image library to use in campaigns and templates. | No | No |
Marketing and transactional email
Tool | What it does | Read only | Contains personal data |
Send marketing email | Send a marketing email to one contact, without creating a campaign. | No | Yes |
Send batch marketing emails | Send several marketing emails in one request. | No | Yes |
Send transactional email | Send a transactional email, such as a receipt or confirmation, with the content you supply. | No | Yes |
Send batch transactional emails | Send several transactional emails in one request. | No | Yes |
Send triggered campaign transactional email | Send a transactional email using a triggered campaign as the content. | No | Yes |
Send batch triggered campaign transactional emails | Send several transactional emails using a triggered campaign as the content. | No | Yes |
Get transactional email statistics | Get sent, delivered, opened, clicked, bounced, and complaint numbers for your transactional email, by period. | Yes | No |
SMS
Tool | What it does | Read only | Contains personal data |
Get SMS campaigns | List your SMS campaigns. | Yes | No |
Get SMS campaign | Get details of an SMS campaign, including its message. | Yes | No |
Get SMS campaign performance | Get sends, deliveries, clicks, replies, unsubscribes, bounces, and revenue for your SMS campaigns in a date range. | Yes | No |
Create SMS campaign | Create an SMS campaign. It isn't sent. | No | No |
Update SMS campaign | Update an SMS campaign that hasn't been sent. | No | No |
Copy SMS campaign | Copy an SMS campaign to use as a starting point. | No | No |
Delete SMS campaign | Delete an SMS campaign. Any sends in progress are cancelled. | No | No |
Send SMS message | Send one SMS message to a mobile number straight away. | No | Yes |
Contacts and lists
Tool | What it does | Read only | Contains personal data |
Get contacts | Get contacts from a list or segment that match criteria you give. | Yes | Yes |
Get contact | Get details of one contact by email address, mobile number, or custom identifier. | Yes | Yes |
Create contact | Create a new contact, including their data fields, channel subscriptions, lists, and preferences. If a contact with the same identifier already exists, the contact isn't created. | No | Yes |
Update contact | Update an existing contact's data fields, channel subscriptions, lists, and preferences. If the contact doesn't exist, a new contact is created. | No | Yes |
Unsubscribe contact | Unsubscribe a contact from your account. | No | Yes |
Resubscribe contact | Resubscribe a contact to your account. | No | Yes |
Get contact data fields | List your contact data fields and their types. | Yes | No |
Create contact data field | Create a contact data field. | No | No |
Get contact lists | List the lists in your account, with how many contacts are in each. | Yes | No |
Create contact list | Create a new contact list. | No | No |
Add contacts to lists | Add existing contacts to one or more lists. | No | Yes |
Get import status | Get the status of adding contacts to lists, including any contacts that couldn't be added and the reason. | Yes | Yes |
Unsubscribe contact from list | Unsubscribe a contact from a list. | No | Yes |
Resubscribe contact to list | Resubscribe a contact to a list. | No | Yes |
Remove contact from list | Remove a contact from a list. The contact stays in your account. | No | Yes |
Remove contacts from list | Remove up to 1,000 contacts from a list. This runs in the background. | No | Yes |
Remove all contacts from list | Remove every contact from a list. The contacts stay in your account. This runs in the background. | No | No |
Get list contact removal status | Check the progress of a background removal from a list. | Yes | No |
Check before you update a contact
If the email address or identifier you give doesn't match an existing contact, Update contact creates a new contact. To avoid duplicates, ask your AI tool to find the contact with Get contact first.
Only resubscribe contacts who've asked
Only resubscribe a contact who has asked to receive your messages again.
Get contacts limitations
Get contacts needs a list or segment. You can't get contacts by criteria across all your contacts.
The criteria you can use are limited to channel subscriptions, preferences, and data fields. Insight data and campaign engagement data aren't supported.
Segments
Tool | What it does | Read only | Contains personal data |
Get segments | List your segments and how many contacts are in each. | Yes | No |
Refresh segment | Refresh a segment so its contact count is up to date. | No | No |
Get segment refresh status | Check whether a segment refresh has finished. | Yes | No |
Programs
Tool | What it does | Read only | Contains personal data |
Get programs | List your programs and their status, for example, the ones that are active. | Yes | No |
Enrol contacts in program | Enrol contacts or lists in an active program. | No | Yes |
Get program enrolment faults | Find out which contacts a finished enrolment couldn't enrol, and why. | Yes | Yes |
Insight data
Tool | What it does | Read only | Contains personal data |
Get Insight data collections | List all your Insight data collections, such as orders or products, with their type and scope. | Yes | No |
Get account Insight data collections | List your account collections. | Yes | No |
Get contact Insight data collections | List your contact collections. | Yes | No |
Get Insight data collection schema | Get the structure of a collection. | Yes | No |
Get account Insight data | Get the records in an account collection, such as products, optionally only those changed since a date. | Yes | No |
Get account Insight data record | Get one record from an account collection. | Yes | No |
Get contacts Insight data | Get records across all contacts in a contact collection, such as orders, with their contact IDs. | Yes | Yes |
Get contact Insight data | Get one contact's records from a collection, such as every order they've placed. | Yes | Yes |
Get contact Insight data record | Get one of a contact's records, such as a single order. | Yes | Yes |
Create Insight data collection | Create an empty collection. If the collection already exists, nothing changes. | No | No |
Import Insight data | Import a batch of records into a collection. Existing records are updated. | No | Yes |
Get Insight data import status | Check the progress of an import and why any records failed. | Yes | Yes |
Upsert account Insight data record | Create or replace one record in an account collection. | No | No |
Delete account Insight data record | Delete one record from an account collection. | No | No |
Upsert contact Insight data record | Create or replace one of a contact's records. | No | Yes |
Delete contact Insight data record | Delete one of a contact's records. | No | Yes |
Empty Insight data collection | Delete all the records in a collection but keep the collection. | No | No |
Delete Insight data collection | Delete a collection and all its records. | No | No |
Get Insight data job status | Check the progress of emptying or deleting a collection. | Yes | No |
Deleting and emptying can't be undone
Deleted records and collections can't be restored. Check what your AI tool is about to delete before you approve it.
To learn more about Insight data, see The non-developers' guide to Insight data.
Events
Tool | What it does | Read only | Contains personal data |
Import events | Import events, things your contacts have done, onto existing contacts' timelines, to use in segments and programs. | No | Yes |
Surveys, pages, and forms
Tool | What it does | Read only | Contains personal data |
Get forms | List your forms and get a summary of their activity, including the number of responses. | Yes | No |
Get form responses | Get responses to each question for a form, for a date range. | Yes | Yes |
What the MCP server can't do
The Dotdigital Marketing MCP server provides only the tools in this article. It can't:
Delete contacts from your account.
Show which contacts opened or clicked a campaign.
Create or edit programs.
Create or edit surveys, pages, and forms.
