Campaign Monitor MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CM_API_KEY | Yes | Your Campaign Monitor API key | |
| CM_CLIENT_ID | No | Default client ID – tools fall back to this when no client is specified explicitly |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_campaignsB | List all sent campaigns for the Campaign Monitor client |
| list_draft_campaignsB | List all draft campaigns for the Campaign Monitor client |
| list_scheduled_campaignsB | List all scheduled campaigns for the Campaign Monitor client |
| get_campaign_summaryC | Get statistics summary for a campaign |
| get_campaign_recipientsC | Get a paginated list of recipients for a campaign |
| get_campaign_opensB | Get a paginated list of subscribers who opened a campaign |
| get_campaign_clicksB | Get a paginated list of subscribers who clicked links in a campaign |
| get_campaign_bouncesA | Get a paginated list of subscribers who bounced for a campaign |
| get_campaign_unsubscribesB | Get a paginated list of subscribers who unsubscribed via a campaign |
| create_campaignC | Create a new draft campaign in Campaign Monitor |
| send_campaignA | Send or schedule a campaign for delivery |
| delete_campaignA | Delete a draft campaign |
| send_campaign_previewA | Send a preview of a campaign to one or more email addresses |
| create_campaign_from_templateC | Create a new campaign from a Campaign Monitor template |
| get_campaign_spamB | Get spam complaints for a campaign |
| get_campaign_email_client_usageA | Get email client usage stats for a campaign |
| get_campaign_lists_and_segmentsA | Get which lists and segments a campaign was sent to |
| unschedule_campaignA | Unschedule a scheduled campaign and return it to draft status |
| get_listsB | List all subscriber lists for the Campaign Monitor client |
| create_listB | Create a new subscriber list |
| get_list_detailsC | Get details of a subscriber list |
| update_listC | Update settings for a subscriber list |
| delete_listB | Delete a subscriber list |
| get_active_subscribersB | Get a paginated list of active subscribers for a list |
| get_unsubscribed_subscribersA | Get a paginated list of unsubscribed subscribers for a list |
| get_list_statsB | Get statistics for a subscriber list |
| get_segmentsB | Get all segments for a subscriber list |
| get_unconfirmed_subscribersA | Get a paginated list of unconfirmed subscribers for a list |
| get_deleted_subscribersB | Get a paginated list of deleted subscribers for a list |
| get_custom_fieldsA | Get all custom fields for a subscriber list |
| create_custom_fieldB | Create a new custom field for a subscriber list |
| update_custom_fieldC | Update an existing custom field on a subscriber list |
| delete_custom_fieldB | Delete a custom field from a subscriber list |
| create_webhookB | Create a webhook for a subscriber list |
| test_webhookB | Send a test payload to a webhook |
| delete_webhookB | Delete a webhook from a subscriber list |
| activate_webhookB | Activate a webhook for a subscriber list |
| deactivate_webhookA | Deactivate a webhook for a subscriber list |
| update_custom_field_optionsB | Update the options available for a multi-select or select custom field |
| add_subscriberC | Add a subscriber to a list |
| get_subscriberA | Get details for a subscriber in a list |
| update_subscriberB | Update a subscriber's details in a list |
| unsubscribe_subscriberC | Unsubscribe a subscriber from a list |
| delete_subscriberA | Permanently delete a subscriber from a list |
| get_subscriber_historyB | Get the campaign history for a subscriber in a list |
| import_subscribersB | Bulk import subscribers into a list |
| send_classic_emailB | Send a one-off transactional email via Campaign Monitor |
| send_smart_emailC | Send a transactional email using a Campaign Monitor smart email template |
| list_smart_emailsB | List all available smart email templates for the client |
| get_transactional_statsC | Get transactional email statistics |
| get_transactional_timelineC | Get a timeline of transactional messages |
| get_smart_email_detailsA | Get full configuration and details for a smart email template |
| get_classic_email_groupsB | List all classic email groups for a client |
| get_transactional_message_detailsC | Get details for a single transactional message |
| resend_transactional_messageB | Resend a previously sent transactional message |
| get_clientsA | List all clients accessible with the current API key |
| get_client_detailsB | Get detailed information about a specific Campaign Monitor client |
| create_clientB | Create a new Campaign Monitor client |
| delete_clientB | Delete a Campaign Monitor client |
| get_lists_for_emailA | Get all lists a particular email address is subscribed to for a client |
| get_suppression_listB | Get the suppression list for a client |
| add_to_suppression_listB | Add email addresses to a client's suppression list |
| remove_from_suppression_listB | Remove an email address from a client's suppression list |
| get_client_peopleB | List all people with access to a client |
| add_client_personB | Add a person to a client with a specified access level |
| update_client_personB | Update a person's details or access level for a client |
| delete_client_personB | Remove a person's access to a client |
| get_client_primary_contactC | Get the primary contact for a client |
| set_client_primary_contactC | Set the primary contact for a client |
| get_client_tagsA | Get all campaign tags for a client |
| get_sending_domainsB | Get all sending domains for a client |
| add_sending_domainC | Add a sending domain for a client |
| delete_sending_domainB | Delete a sending domain from a client |
| transfer_creditsC | Transfer credits to or from a client |
| update_client_basicsC | Update a client's basic details including company name, country, and timezone |
| set_client_payg_billingB | Configure pay-as-you-go billing for a client |
| set_client_monthly_billingB | Configure monthly billing for a client |
| copy_sending_domainB | Copy a verified sending domain to another client |
| authenticate_sending_domainC | Verify DNS records and authenticate a sending domain for a client |
| get_billing_detailsB | Get account billing info and credits |
| get_countriesA | List all valid countries for Campaign Monitor |
| get_timezonesB | List all valid timezones for Campaign Monitor |
| get_system_dateA | Get the current date/time in the account timezone |
| get_adminsA | List all administrators for the account |
| get_adminB | Get details for a specific administrator by email |
| add_adminB | Add a new administrator to the account |
| update_adminB | Update an existing administrator's details |
| delete_adminB | Remove an administrator from the account |
| get_primary_contactC | Get the primary contact email for the account |
| set_primary_contactC | Set the primary contact for the account |
| create_external_sessionA | Initiate a new login session for embedding Campaign Monitor in an iframe |
| get_journeysC | List all journeys for the Campaign Monitor client |
| get_journey_summaryB | Get full stats summary for a journey |
| get_journey_email_recipientsA | Get a paginated list of recipients for a journey email |
| get_journey_email_opensC | Get a paginated list of opens for a journey email |
| get_journey_email_clicksB | Get a paginated list of clicks for a journey email |
| get_journey_email_bouncesB | Get a paginated list of bounces for a journey email |
| get_journey_email_unsubscribesB | Get a paginated list of unsubscribes for a journey email |
| publish_journey_eventB | Publish an event to trigger a subscriber activity journey |
| copy_journeyB | Copy a journey to a specified client |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pauliowest/cmon-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server