Skip to content

Connectors · Email & messaging

Salesforce Marketing Cloud Engagement MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Salesforce Marketing Cloud Engagement and the rest of your systems. It gives your agent 271 Salesforce Marketing Cloud Engagement actions (130 reads, 103 writes and 38 that wait for a confirmation) and holds the Salesforce Marketing Cloud Engagement credential itself, so the agent never does. It paces Salesforce Marketing Cloud Engagement's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "salesforce_marketing_cloud.assets.list",  intent: "check which Salesforce Marketing Cloud Engagement account is connected"}# List assets · read · 1 upstream call
  • 271actionsin one signed file
  • 130readlook, never change
  • 103writecreate and update
  • 38wait for a yesdestructive, confirmed first

Set up

Connect Salesforce Marketing Cloud Engagement in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect Salesforce Marketing Cloud Engagement.

    OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in. actionlake stores what you paste write-only, sealed under your tenant's key.

    • client_idClient ID of a Marketing Cloud installed package's API Integration component (Setup > Apps > Installed Packages >…
    • client_secretClient secret of the same API Integration component
    • account_idMID of the business unit to act in (shown under the account name, top right of Marketing Cloud)
    • tenant_hostWhere your Salesforce Marketing Cloud Engagement lives: your tenant host
    account { op: "connections.requirements", service: "salesforce_marketing_cloud" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "salesforce_marketing_cloud.assets.list" }# list assets · read · 1 upstream callcheck { action: "salesforce_marketing_cloud.transactional_email.send", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Salesforce Marketing Cloud Engagement at a glance

Sign-in
OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in.
You provide
client_idclient_secretaccount_id
Setup fields
tenant_host
Limits we pace to
2,500 calls a minute, per connection
API covered
Marketing Cloud Engagement REST API (tenant-specific endpoints, OAuth 2.0 installed packages), at your Salesforce Marketing Cloud Engagement instance's API base URL, which you enter when connecting
Built from
Salesforce Marketing Cloud Engagement's documentation, read 23 October 2026developer.salesforce.comGitHubdeveloper.salesforce.com
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
108 of 130 reads, for up to 5 minutes; a write clears what it affects
Shared entities
2, so ask can line Salesforce Marketing Cloud Engagement up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Salesforce Marketing Cloud Engagement.

271 actions in 55 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 130readlook, never change
  • 103writecreate and update
  • 38destructivewait for a confirmation
  1. Journeys

    37

    16 read · 14 write · 7 destructive

    List journeys · Get journey · Create journey · Update journey version

  2. Automations

    12

    3 read · 5 write · 4 destructive

    List automations · Create automation · Get automation · Run automation once

  3. Data events

    12

    0 read · 12 write · 0 destructive

    Increment data extension column by data extension ID (asynchronous) · Increment data extension column by data extension key (asynchronous) · Increment data extension column by data extension ID · Increment data extension column by data extension key

  4. SMS

    11

    4 read · 5 write · 2 destructive

    Send SMS to numbers · Create SMS keyword · Create SMS opt-in message · Queue mobile-originated message

  5. Transactional email

    11

    5 read · 4 write · 2 destructive

    List Email send definitions · Send transactional Email · Create Email send definition · Get Email send definition

  6. Transactional SMS

    11

    5 read · 4 write · 2 destructive

    Send transactional SMS · List SMS send definitions · Create SMS send definition · List unsent transactional SMS

  7. Push messages

    10

    3 read · 6 write · 1 destructive

    Broadcast push message · Create push message · Send push message to contacts · Send push message to list

  8. Assets

    9

    5 read · 3 write · 1 destructive

    List assets · Get asset · Delete asset · Query assets (advanced)

47 more areas · 158 actions
  • Contacts 9
  • Data extension rows 9
  • Journey history 9
  • Event definitions 8
  • Ens callbacks 7
  • Events 6
  • File transfers 6
  • Queries 6
  • Campaigns 5
  • Categories 5
  • Domain verification 5
  • Ens subscriptions 5
  • Push locations 5
  • Attribute set definitions 4
  • Campaign assets 4
  • Definition templates 4
  • Imports 4
  • Journey activities 4
  • Simulations 4
  • Transactional journeys 4
  • Journey categories 3
  • Platform 3
  • Sales cloud events 3
  • System overview 3
  • Triggered sends 3
  • Abn tests 2
  • Attribute groups 2
  • Custom activities 2
  • Dashboard config 2
  • Goal statistics 2
  • Journey logs 2
  • Scripts 2
  • Trigger stats 2
  • Address 1
  • Attributes 1
  • Audit events 1
  • Automation folders 1
  • Contact schemas 1
  • Definition logs 1
  • Developer logs 1
  • Engine settings 1
  • FTP locations 1
  • Journey builder 1
  • Recommendation types 1
  • Recommendations 1
  • Security events 1
  • Wait statistics 1

Top actions

The Salesforce Marketing Cloud Engagement API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 50 of Salesforce Marketing Cloud Engagement's 50 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
salesforce_marketing_cloud.assets.listList assetsList assets.readcontent.file.list77 connectors
salesforce_marketing_cloud.categories.listList content foldersList content folders.readcontent.folder.list62 connectors
salesforce_marketing_cloud.transactional_email.definitions.listList Email send definitionsList Email send definitions.readcomm.email_template.list40 connectors
salesforce_marketing_cloud.transactional_email.sendSend transactional EmailSend transactional Email.writecomm.email.send32 connectors
salesforce_marketing_cloud.transactional_sms.sendSend transactional SMSSend transactional SMS.writecomm.sms.send26 connectors
salesforce_marketing_cloud.assets.getGet assetGet asset.readcontent.file.get74 connectors
salesforce_marketing_cloud.automations.listList automationsList automations.readautomation.workflow.list51 connectors
salesforce_marketing_cloud.platform.token_context.getGet token contextGet token context.readidentity.current_user.get307 connectors
salesforce_marketing_cloud.campaigns.listList campaignsList campaigns.readcomm.campaign.list41 connectors
salesforce_marketing_cloud.categories.createCreate content folderCreate content folder.writecontent.folder.create62 connectors
salesforce_marketing_cloud.campaigns.createCreate campaignCreate campaign.writecomm.campaign.create38 connectors
salesforce_marketing_cloud.assets.deleteDelete assetDelete asset.destructivecontent.file.delete68 connectors

Try it

Prompts to paste into Claude.

Each one names the Salesforce Marketing Cloud Engagement actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Which Salesforce Marketing Cloud Engagement files changed this week, and who changed them?

    callssalesforce_marketing_cloud.assets.list

  2. Writewrite

    Send transactional Email in Salesforce Marketing Cloud Engagement. Show me exactly what you will send before you save it.

    callssalesforce_marketing_cloud.transactional_email.send

Governance for Salesforce Marketing Cloud Engagement

Destructive actions wait for a yes.

38 Salesforce Marketing Cloud Engagement actions are destructive. The first 10:

  • Delete assetsalesforce_marketing_cloud.assets.delete
  • Delete Email send definitionsalesforce_marketing_cloud.transactional_email.definitions.delete
  • Delete campaignsalesforce_marketing_cloud.campaigns.delete
  • Delete content foldersalesforce_marketing_cloud.categories.delete
  • Run automation oncesalesforce_marketing_cloud.automations.run_once
  • Delete automationsalesforce_marketing_cloud.automations.delete
  • Delete ENS callbacksalesforce_marketing_cloud.ens_callbacks.delete
  • Delete journeysalesforce_marketing_cloud.journeys.delete
  • Remove contacts from journeysalesforce_marketing_cloud.journeys.contact_exit
  • Trigger automationssalesforce_marketing_cloud.automations.trigger

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

dosalesforce_marketing_cloud.assets.deleteconfirm_policy: human

Delete asset?

intent: the user asked me to delete asset

run suspended · waiting for a named person · key salesforce-marketing-cloud-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "salesforce-marketing-cloud-agent",  allowed_actions: ["salesforce_marketing_cloud.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "salesforce_marketing_cloud.assets.delete", approver: "[email protected]" },    { match: "salesforce_marketing_cloud.transactional_email.definitions.delete", approver: "[email protected]" },    { match: "salesforce_marketing_cloud.campaigns.delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to Salesforce Marketing Cloud Engagement only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Salesforce Marketing Cloud Engagement costs on actionlake.

Every Salesforce Marketing Cloud Engagement action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Salesforce Marketing Cloud Engagement refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 271 Salesforce Marketing Cloud Engagement actions
  • 271actions pageeach page of a long list is one call
  • 108reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Salesforce Marketing Cloud Engagement action.

271 actions by area: the id your agent calls, what it does, and its effect.

Journeys37
  • salesforce_marketing_cloud.journeys.auditGet journey audit logread
  • salesforce_marketing_cloud.journeys.audit_by_keyGet journey audit log by keyread
  • salesforce_marketing_cloud.journeys.audit_searchSearch journey audit logsread
  • salesforce_marketing_cloud.journeys.campaign.updateAssociate journey with campaignwrite
  • salesforce_marketing_cloud.journeys.contact_exitRemove contacts from journeydestructive
  • salesforce_marketing_cloud.journeys.contact_exit_statusGet contact exit statusread
  • salesforce_marketing_cloud.journeys.contact_membershipList journeys a contact is inread
  • salesforce_marketing_cloud.journeys.createCreate journeywrite
  • salesforce_marketing_cloud.journeys.deleteDelete journeydestructive
  • salesforce_marketing_cloud.journeys.delete_by_keyDelete journey by keydestructive
  • salesforce_marketing_cloud.journeys.getGet journeyread
  • salesforce_marketing_cloud.journeys.get_by_keyGet journey by keyread
  • salesforce_marketing_cloud.journeys.listList journeysread
  • salesforce_marketing_cloud.journeys.pausePause journeywrite
  • salesforce_marketing_cloud.journeys.pause_by_keyPause journey by keywrite
  • salesforce_marketing_cloud.journeys.priority.updateSet journey prioritieswrite
  • salesforce_marketing_cloud.journeys.publishPublish journeywrite
  • salesforce_marketing_cloud.journeys.publish_by_keyPublish journey by keywrite
  • salesforce_marketing_cloud.journeys.publish_statusGet journey publish statusread
  • salesforce_marketing_cloud.journeys.resumeResume journeywrite
  • salesforce_marketing_cloud.journeys.resume_by_keyResume journey by keywrite
  • salesforce_marketing_cloud.journeys.statusGet journey run statusread
  • salesforce_marketing_cloud.journeys.status_by_keyGet journey run status by keyread
  • salesforce_marketing_cloud.journeys.stopStop journeydestructive
  • salesforce_marketing_cloud.journeys.stop_asyncStop journey asynchronouslydestructive
  • salesforce_marketing_cloud.journeys.stop_async_by_keyStop journey asynchronously by keydestructive
  • salesforce_marketing_cloud.journeys.stop_by_keyStop journey by keydestructive
  • salesforce_marketing_cloud.journeys.summaryGet journey summaryread
  • salesforce_marketing_cloud.journeys.updateUpdate journey versionwrite
  • salesforce_marketing_cloud.journeys.update_by_idUpdate journey by IDwrite
  • salesforce_marketing_cloud.journeys.update_by_keyUpdate journey by keywrite
  • salesforce_marketing_cloud.journeys.validateValidate journeywrite
  • salesforce_marketing_cloud.journeys.validate_by_keyValidate journey by keywrite
  • salesforce_marketing_cloud.journeys.validate_statusGet journey validation statusread
  • salesforce_marketing_cloud.journeys.version_contactsList journey version contacts by typeread
  • salesforce_marketing_cloud.journeys.version_contacts_by_statusList journey version contacts by type and statusread
  • salesforce_marketing_cloud.journeys.version_countsGet journey version contact countsread
Automations12
  • salesforce_marketing_cloud.automations.createCreate automationwrite
  • salesforce_marketing_cloud.automations.deleteDelete automationdestructive
  • salesforce_marketing_cloud.automations.file_trigger.updateActivate or deactivate file drop triggerwrite
  • salesforce_marketing_cloud.automations.file_trigger.update_by_keyActivate or deactivate file drop trigger by keywrite
  • salesforce_marketing_cloud.automations.getGet automationread
  • salesforce_marketing_cloud.automations.listList automationsread
  • salesforce_marketing_cloud.automations.run_onceRun automation oncedestructive
  • salesforce_marketing_cloud.automations.run_once_by_keyRun automation once by keydestructive
  • salesforce_marketing_cloud.automations.triggerTrigger automationsdestructive
  • salesforce_marketing_cloud.automations.trigger.updateActivate or deactivate automation triggerwrite
  • salesforce_marketing_cloud.automations.trigger_statusGet automation trigger statusread
  • salesforce_marketing_cloud.automations.updateUpdate automationwrite
Data events12
  • salesforce_marketing_cloud.data_events.async.increment_column_by_idIncrement data extension column by data extension ID (asynchronous)write
  • salesforce_marketing_cloud.data_events.async.increment_column_by_keyIncrement data extension column by data extension key (asynchronous)write
  • salesforce_marketing_cloud.data_events.async.upsert_row_by_idUpsert one data extension row by data extension ID (asynchronous)write
  • salesforce_marketing_cloud.data_events.async.upsert_row_by_keyUpsert one data extension row by data extension key (asynchronous)write
  • salesforce_marketing_cloud.data_events.async.upsert_rowset_by_idUpsert data extension rows by data extension ID (asynchronous)write
  • salesforce_marketing_cloud.data_events.async.upsert_rowset_by_keyUpsert data extension rows by data extension key (asynchronous)write
  • salesforce_marketing_cloud.data_events.sync.increment_column_by_idIncrement data extension column by data extension IDwrite
  • salesforce_marketing_cloud.data_events.sync.increment_column_by_keyIncrement data extension column by data extension keywrite
  • salesforce_marketing_cloud.data_events.sync.upsert_row_by_idUpsert one data extension row by data extension IDwrite
  • salesforce_marketing_cloud.data_events.sync.upsert_row_by_keyUpsert one data extension row by data extension keywrite
  • salesforce_marketing_cloud.data_events.sync.upsert_rowset_by_idUpsert data extension rows by data extension IDwrite
  • salesforce_marketing_cloud.data_events.sync.upsert_rowset_by_keyUpsert data extension rows by data extension keywrite
SMS11
  • salesforce_marketing_cloud.sms.contact_deliveriesGet SMS send statusread
  • salesforce_marketing_cloud.sms.contact_historyGet SMS history for a numberread
  • salesforce_marketing_cloud.sms.keywords.createCreate SMS keywordwrite
  • salesforce_marketing_cloud.sms.keywords.deleteDelete SMS keyworddestructive
  • salesforce_marketing_cloud.sms.keywords.delete_by_codeDelete SMS keyword by codedestructive
  • salesforce_marketing_cloud.sms.list_deliveriesGet SMS list send statusread
  • salesforce_marketing_cloud.sms.optin_messages.createCreate SMS opt-in messagewrite
  • salesforce_marketing_cloud.sms.queue_moQueue mobile-originated messagewrite
  • salesforce_marketing_cloud.sms.send_to_contactsSend SMS to numberswrite
  • salesforce_marketing_cloud.sms.send_to_listSend SMS to listwrite
  • salesforce_marketing_cloud.sms.subscriptions.statusGet SMS subscription statusread
Transactional email11
  • salesforce_marketing_cloud.transactional_email.definitions.createCreate Email send definitionwrite
  • salesforce_marketing_cloud.transactional_email.definitions.deleteDelete Email send definitiondestructive
  • salesforce_marketing_cloud.transactional_email.definitions.getGet Email send definitionread
  • salesforce_marketing_cloud.transactional_email.definitions.listList Email send definitionsread
  • salesforce_marketing_cloud.transactional_email.definitions.updateUpdate Email send definitionwrite
  • salesforce_marketing_cloud.transactional_email.messages.getGet transactional Email statusread
  • salesforce_marketing_cloud.transactional_email.messages.not_sentList unsent transactional Emailread
  • salesforce_marketing_cloud.transactional_email.queue.deleteDelete queued Email messagesdestructive
  • salesforce_marketing_cloud.transactional_email.queue.getGet Email definition queue metricsread
  • salesforce_marketing_cloud.transactional_email.sendSend transactional Emailwrite
  • salesforce_marketing_cloud.transactional_email.send_batchSend transactional Email to manywrite
Transactional SMS11
  • salesforce_marketing_cloud.transactional_sms.definitions.createCreate SMS send definitionwrite
  • salesforce_marketing_cloud.transactional_sms.definitions.deleteDelete SMS send definitiondestructive
  • salesforce_marketing_cloud.transactional_sms.definitions.getGet SMS send definitionread
  • salesforce_marketing_cloud.transactional_sms.definitions.listList SMS send definitionsread
  • salesforce_marketing_cloud.transactional_sms.definitions.updateUpdate SMS send definitionwrite
  • salesforce_marketing_cloud.transactional_sms.messages.getGet transactional SMS statusread
  • salesforce_marketing_cloud.transactional_sms.messages.not_sentList unsent transactional SMSread
  • salesforce_marketing_cloud.transactional_sms.queue.deleteDelete queued SMS messagesdestructive
  • salesforce_marketing_cloud.transactional_sms.queue.getGet SMS definition queue metricsread
  • salesforce_marketing_cloud.transactional_sms.sendSend transactional SMSwrite
  • salesforce_marketing_cloud.transactional_sms.send_batchSend transactional SMS to manywrite
Push messages10
  • salesforce_marketing_cloud.push_messages.contact_deliveriesGet push send status (contacts)read
  • salesforce_marketing_cloud.push_messages.createCreate push messagewrite
  • salesforce_marketing_cloud.push_messages.deleteDelete push messagedestructive
  • salesforce_marketing_cloud.push_messages.getGet push messageread
  • salesforce_marketing_cloud.push_messages.list_deliveriesGet push send status (list)read
  • salesforce_marketing_cloud.push_messages.send_to_appBroadcast push messagewrite
  • salesforce_marketing_cloud.push_messages.send_to_contactsSend push message to contactswrite
  • salesforce_marketing_cloud.push_messages.send_to_listSend push message to listwrite
  • salesforce_marketing_cloud.push_messages.send_to_tagsSend push message to tagswrite
  • salesforce_marketing_cloud.push_messages.updateUpdate push messagewrite
Assets9
  • salesforce_marketing_cloud.assets.createCreate assetwrite
  • salesforce_marketing_cloud.assets.deleteDelete assetdestructive
  • salesforce_marketing_cloud.assets.getGet assetread
  • salesforce_marketing_cloud.assets.listList assetsread
  • salesforce_marketing_cloud.assets.patchUpdate asset fieldswrite
  • salesforce_marketing_cloud.assets.queryQuery assets (advanced)read
  • salesforce_marketing_cloud.assets.salutations.getGet email header and footerread
  • salesforce_marketing_cloud.assets.salutations.listGet default header and footerread
  • salesforce_marketing_cloud.assets.updateReplace assetwrite
Contacts9
  • salesforce_marketing_cloud.contacts.createCreate contactwrite
  • salesforce_marketing_cloud.contacts.delete_by_idsDelete contacts by IDdestructive
  • salesforce_marketing_cloud.contacts.delete_by_keysDelete contacts by keydestructive
  • salesforce_marketing_cloud.contacts.delete_by_listDelete contacts in a list or data extensiondestructive
  • salesforce_marketing_cloud.contacts.delete_requests.listList contact delete requestsread
  • salesforce_marketing_cloud.contacts.delete_requests.summarySummarise contact delete requestsread
  • salesforce_marketing_cloud.contacts.delete_status.getGet contact delete statusread
  • salesforce_marketing_cloud.contacts.search_by_emailFind contact keys by email addressread
  • salesforce_marketing_cloud.contacts.updateUpdate contactwrite
Data extension rows9
  • salesforce_marketing_cloud.data_extension_rows.async_insert_by_idInsert data extension rows asynchronously by data extension IDwrite
  • salesforce_marketing_cloud.data_extension_rows.async_insert_by_keyInsert data extension rows asynchronously by data extension keywrite
  • salesforce_marketing_cloud.data_extension_rows.async_resultsGet asynchronous row request resultsread
  • salesforce_marketing_cloud.data_extension_rows.async_statusGet asynchronous row request statusread
  • salesforce_marketing_cloud.data_extension_rows.async_upsert_by_idUpsert data extension rows asynchronously by data extension IDwrite
  • salesforce_marketing_cloud.data_extension_rows.async_upsert_by_keyUpsert data extension rows asynchronously by data extension keywrite
  • salesforce_marketing_cloud.data_extension_rows.list_by_idList data extension rows by IDread
  • salesforce_marketing_cloud.data_extension_rows.list_by_keyList data extension rows by keyread
  • salesforce_marketing_cloud.data_extension_rows.list_by_tokenList data extension rows by request tokenread
Journey history9
  • salesforce_marketing_cloud.journey_history.by_contact_keyGet journey history for contactsread
  • salesforce_marketing_cloud.journey_history.downloadDownload journey historyread
  • salesforce_marketing_cloud.journey_history.estimateEstimate journey history exportread
  • salesforce_marketing_cloud.journey_history.filterFilter journey historyread
  • salesforce_marketing_cloud.journey_history.freshnessGet journey history freshnessread
  • salesforce_marketing_cloud.journey_history.listList journey history entriesread
  • salesforce_marketing_cloud.journey_history.searchSearch journey historyread
  • salesforce_marketing_cloud.journey_history.summarySummarise journey historyread
  • salesforce_marketing_cloud.journey_history.time_seriesGet journey history time seriesread
Event definitions8
  • salesforce_marketing_cloud.event_definitions.createCreate event definitionwrite
  • salesforce_marketing_cloud.event_definitions.deleteDelete event definitiondestructive
  • salesforce_marketing_cloud.event_definitions.delete_by_keyDelete event definition by keydestructive
  • salesforce_marketing_cloud.event_definitions.getGet event definitionread
  • salesforce_marketing_cloud.event_definitions.get_by_keyGet event definition by keyread
  • salesforce_marketing_cloud.event_definitions.listList event definitionsread
  • salesforce_marketing_cloud.event_definitions.updateUpdate event definitionwrite
  • salesforce_marketing_cloud.event_definitions.update_by_keyUpdate event definition by keywrite
Ens callbacks7
  • salesforce_marketing_cloud.ens_callbacks.createCreate ENS callbackwrite
  • salesforce_marketing_cloud.ens_callbacks.deleteDelete ENS callbackdestructive
  • salesforce_marketing_cloud.ens_callbacks.getGet ENS callbackread
  • salesforce_marketing_cloud.ens_callbacks.listList ENS callbacksread
  • salesforce_marketing_cloud.ens_callbacks.regenerate_secretRegenerate ENS signature keywrite
  • salesforce_marketing_cloud.ens_callbacks.updateUpdate ENS callbackswrite
  • salesforce_marketing_cloud.ens_callbacks.verifyVerify ENS callbackwrite
Events6
  • salesforce_marketing_cloud.events.async_statusGet bulk entry event statusread
  • salesforce_marketing_cloud.events.fireFire journey entry eventwrite
  • salesforce_marketing_cloud.events.fire_asyncFire journey entry events in bulkwrite
  • salesforce_marketing_cloud.events.trigger_test.createCreate test entry eventwrite
  • salesforce_marketing_cloud.events.trigger_test.deleteDelete test entry eventdestructive
  • salesforce_marketing_cloud.events.trigger_test.updateUpdate test entry eventwrite
File transfers6
  • salesforce_marketing_cloud.file_transfers.createCreate file transfer activitywrite
  • salesforce_marketing_cloud.file_transfers.deleteDelete file transfer activitydestructive
  • salesforce_marketing_cloud.file_transfers.getGet file transfer activityread
  • salesforce_marketing_cloud.file_transfers.listList file transfer activitiesread
  • salesforce_marketing_cloud.file_transfers.startStart file transfer activitywrite
  • salesforce_marketing_cloud.file_transfers.updateUpdate file transfer activitywrite
Queries6
  • salesforce_marketing_cloud.queries.createCreate SQL query activitywrite
  • salesforce_marketing_cloud.queries.deleteDelete SQL query activitydestructive
  • salesforce_marketing_cloud.queries.getGet SQL query activityread
  • salesforce_marketing_cloud.queries.listList SQL query activitiesread
  • salesforce_marketing_cloud.queries.startRun SQL query activitywrite
  • salesforce_marketing_cloud.queries.updateUpdate SQL query activitywrite
Campaigns5
  • salesforce_marketing_cloud.campaigns.createCreate campaignwrite
  • salesforce_marketing_cloud.campaigns.deleteDelete campaigndestructive
  • salesforce_marketing_cloud.campaigns.getGet campaignread
  • salesforce_marketing_cloud.campaigns.listList campaignsread
  • salesforce_marketing_cloud.campaigns.updateUpdate campaignwrite
Categories5
  • salesforce_marketing_cloud.categories.createCreate content folderwrite
  • salesforce_marketing_cloud.categories.deleteDelete content folderdestructive
  • salesforce_marketing_cloud.categories.getGet content folderread
  • salesforce_marketing_cloud.categories.listList content foldersread
  • salesforce_marketing_cloud.categories.updateUpdate content folderwrite
Domain verification5
  • salesforce_marketing_cloud.domain_verification.bulk_insertAdd from-addresses in bulkwrite
  • salesforce_marketing_cloud.domain_verification.createAdd from-address for verificationwrite
  • salesforce_marketing_cloud.domain_verification.deleteDelete from-addressesdestructive
  • salesforce_marketing_cloud.domain_verification.listList verified from-addressesread
  • salesforce_marketing_cloud.domain_verification.updateUpdate from-addresseswrite
Ens subscriptions5
  • salesforce_marketing_cloud.ens_subscriptions.createCreate ENS subscriptionwrite
  • salesforce_marketing_cloud.ens_subscriptions.deleteDelete ENS subscriptiondestructive
  • salesforce_marketing_cloud.ens_subscriptions.getGet ENS subscriptionread
  • salesforce_marketing_cloud.ens_subscriptions.list_by_callbackList ENS subscriptions of a callbackread
  • salesforce_marketing_cloud.ens_subscriptions.updateUpdate ENS subscriptionswrite
Push locations5
  • salesforce_marketing_cloud.push_locations.createCreate MobilePush locationwrite
  • salesforce_marketing_cloud.push_locations.deleteDelete MobilePush locationdestructive
  • salesforce_marketing_cloud.push_locations.getGet MobilePush locationread
  • salesforce_marketing_cloud.push_locations.listList MobilePush locationsread
  • salesforce_marketing_cloud.push_locations.updateUpdate MobilePush locationwrite
Attribute set definitions4
  • salesforce_marketing_cloud.attribute_set_definitions.getGet attribute set definitionread
  • salesforce_marketing_cloud.attribute_set_definitions.get_by_keyGet attribute set definition by keyread
  • salesforce_marketing_cloud.attribute_set_definitions.get_by_nameGet attribute set definition by nameread
  • salesforce_marketing_cloud.attribute_set_definitions.listList attribute set definitionsread
Campaign assets4
  • salesforce_marketing_cloud.campaign_assets.createAssociate assets with campaignwrite
  • salesforce_marketing_cloud.campaign_assets.deleteRemove campaign assetdestructive
  • salesforce_marketing_cloud.campaign_assets.getGet campaign assetread
  • salesforce_marketing_cloud.campaign_assets.listList campaign assetsread
Definition templates4
  • salesforce_marketing_cloud.definition_templates.createCreate journey templatewrite
  • salesforce_marketing_cloud.definition_templates.getGet journey templateread
  • salesforce_marketing_cloud.definition_templates.listList journey templatesread
  • salesforce_marketing_cloud.definition_templates.updateUpdate journey templatewrite
Imports4
  • salesforce_marketing_cloud.imports.createQueue data extension file importwrite
  • salesforce_marketing_cloud.imports.summaryGet import statusread
  • salesforce_marketing_cloud.imports.validation_resultsGet import validation resultsread
  • salesforce_marketing_cloud.imports.validation_summaryGet import validation summaryread
Journey activities4
  • salesforce_marketing_cloud.journey_activities.summaryGet journey activity summaryread
  • salesforce_marketing_cloud.journey_activities.time_seriesGet journey activity time seriesread
  • salesforce_marketing_cloud.journey_activities.wait_expire_summaryGet wait activity expiry summaryread
  • salesforce_marketing_cloud.journey_activities.wait_expire_time_seriesGet wait activity expiry time seriesread
Simulations4
  • salesforce_marketing_cloud.simulations.contactsList simulation contactsread
  • salesforce_marketing_cloud.simulations.createCreate journey simulationwrite
  • salesforce_marketing_cloud.simulations.deleteDelete journey simulationdestructive
  • salesforce_marketing_cloud.simulations.getGet journey simulationread
Transactional journeys4
  • salesforce_marketing_cloud.transactional_journeys.clear_queueClear transactional journey queuedestructive
  • salesforce_marketing_cloud.transactional_journeys.createCreate transactional journeywrite
  • salesforce_marketing_cloud.transactional_journeys.pausePause transactional journeywrite
  • salesforce_marketing_cloud.transactional_journeys.resumeResume transactional journeywrite
Journey categories3
  • salesforce_marketing_cloud.journey_categories.countsGet journey folder countsread
  • salesforce_marketing_cloud.journey_categories.deleteDelete journey folderdestructive
  • salesforce_marketing_cloud.journey_categories.updateUpdate journey folderwrite
Platform3
  • salesforce_marketing_cloud.platform.endpoints.getGet API endpointread
  • salesforce_marketing_cloud.platform.endpoints.listList API endpointsread
  • salesforce_marketing_cloud.platform.token_context.getGet token contextread
Sales cloud events3
  • salesforce_marketing_cloud.sales_cloud_events.cdcList Sales Cloud CDC eventsread
  • salesforce_marketing_cloud.sales_cloud_events.listList Sales Cloud entry eventsread
  • salesforce_marketing_cloud.sales_cloud_events.usageGet Sales Cloud event usageread
System overview3
  • salesforce_marketing_cloud.system_overview.activitiesGet system overview activitiesread
  • salesforce_marketing_cloud.system_overview.getGet Journey Builder system overviewread
  • salesforce_marketing_cloud.system_overview.time_seriesGet system overview time seriesread
Triggered sends3
  • salesforce_marketing_cloud.triggered_sends.delivery_recordGet triggered send statusread
  • salesforce_marketing_cloud.triggered_sends.sendSend triggered emailwrite
  • salesforce_marketing_cloud.triggered_sends.tracking_subscription_typeSet triggered send tracking subscription typewrite
Abn tests2
  • salesforce_marketing_cloud.abn_tests.getGet path optimizer testread
  • salesforce_marketing_cloud.abn_tests.updateUpdate path optimizer testwrite
Attribute groups2
  • salesforce_marketing_cloud.attribute_groups.getGet attribute groupread
  • salesforce_marketing_cloud.attribute_groups.listList attribute groupsread
Custom activities2
  • salesforce_marketing_cloud.custom_activities.executeExecute custom activitywrite
  • salesforce_marketing_cloud.custom_activities.test_setupTest custom activity setupwrite
Dashboard config2
  • salesforce_marketing_cloud.dashboard_config.getGet Journey Builder dashboard settingsread
  • salesforce_marketing_cloud.dashboard_config.updateUpdate Journey Builder dashboard settingswrite
Goal statistics2
  • salesforce_marketing_cloud.goal_statistics.clearClear journey goal statisticsdestructive
  • salesforce_marketing_cloud.goal_statistics.getGet journey goal statisticsread
Journey logs2
  • salesforce_marketing_cloud.journey_logs.activity_via_kafkaCheck activity log sourceread
  • salesforce_marketing_cloud.journey_logs.definition_via_kafkaCheck definition log sourceread
Scripts2
  • salesforce_marketing_cloud.scripts.listList script activitiesread
  • salesforce_marketing_cloud.scripts.startStart script activitywrite
Trigger stats2
  • salesforce_marketing_cloud.trigger_stats.getGet entry event statisticsread
  • salesforce_marketing_cloud.trigger_stats.get_for_journeyGet entry event statistics for a journeyread
Address1
  • salesforce_marketing_cloud.address.validate_emailValidate email addressread
Attributes1
  • salesforce_marketing_cloud.attributes.searchSearch contact attributesread
Audit events1
  • salesforce_marketing_cloud.audit_events.listList audit eventsread
Automation folders1
  • salesforce_marketing_cloud.automation_folders.listList Automation Studio foldersread
Contact schemas1
  • salesforce_marketing_cloud.contact_schemas.listList contact schemasread
Definition logs1
  • salesforce_marketing_cloud.definition_logs.searchSearch journey definition logsread
Developer logs1
  • salesforce_marketing_cloud.developer_logs.listList Journey Builder developer logsread
Engine settings1
  • salesforce_marketing_cloud.engine_settings.getGet Journey Builder engine settingsread
FTP locations1
  • salesforce_marketing_cloud.ftp_locations.listList FTP locationsread
Journey builder1
  • salesforce_marketing_cloud.journey_builder.discoveryGet Journey Builder discovery documentread
Recommendation types1
  • salesforce_marketing_cloud.recommendation_types.listList recommendation typesread
Recommendations1
  • salesforce_marketing_cloud.recommendations.getGet journey recommendationread
Security events1
  • salesforce_marketing_cloud.security_events.listList security eventsread
Wait statistics1
  • salesforce_marketing_cloud.wait_statistics.getGet journey wait statisticsread

Questions

The Salesforce Marketing Cloud Engagement MCP server, answered.

Is there a Salesforce Marketing Cloud Engagement MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 271 Salesforce Marketing Cloud Engagement actions across journeys, automations, data events and SMS, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Salesforce Marketing Cloud Engagement.

What do I need to connect Salesforce Marketing Cloud Engagement?

Client ID of a Marketing Cloud installed package's API Integration component (Setup > Apps > Installed Packages >…, Client secret of the same API Integration component and MID of the business unit to act in (shown under the account name, top right of Marketing Cloud). Plus your tenant host. The free call account { op: "connections.requirements", service: "salesforce_marketing_cloud" } lists exactly what to paste.

Can an AI agent delete or change things in Salesforce Marketing Cloud Engagement?

Only if its key allows it, and only with an explicit confirmation. 38 Salesforce Marketing Cloud Engagement actions are destructive, including delete asset, delete Email send definition and delete campaign. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my Salesforce Marketing Cloud Engagement API limit?

actionlake paces every call to the limits in the Salesforce Marketing Cloud Engagement service file: 2,500 calls a minute per connection. Repeated reads are answered from cache (108 Salesforce Marketing Cloud Engagement actions can be), which never reaches Salesforce Marketing Cloud Engagement.

What does a Salesforce Marketing Cloud Engagement action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (271 Salesforce Marketing Cloud Engagement actions page). Cache hits, searches, dry runs and calls Salesforce Marketing Cloud Engagement refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which Salesforce Marketing Cloud Engagement API does it cover?

The Marketing Cloud Engagement REST API (tenant-specific endpoints, OAuth 2.0 installed packages) at your Salesforce Marketing Cloud Engagement instance's API base URL, which you enter when connecting. It is built from Salesforce Marketing Cloud Engagement's documentation as read on 23 October 2026. 271 actions in 55 areas, each one in the signed service file (version 1.0.0).

Does actionlake keep my Salesforce Marketing Cloud Engagement data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Salesforce Marketing Cloud Engagement credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent Salesforce Marketing Cloud Engagement today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.