---
title: "Salesforce Marketing Cloud Account Engagement MCP server"
description: "Give Claude 174 Salesforce Marketing Cloud Account Engagement actions through one MCP server. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/salesforce-marketing-cloud-account-engagement
updated: 2026-10-23
---

Connectors · Email & messaging

# Salesforce Marketing Cloud Account 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 Account Engagement and the rest of your systems. It gives your agent 174 Salesforce Marketing Cloud Account Engagement actions (76 reads, 66 writes and 32 that wait for a confirmation) and holds the Salesforce Marketing Cloud Account Engagement credential itself, so the agent never does. It paces Salesforce Marketing Cloud Account Engagement's limits and records every call. Connecting Salesforce Marketing Cloud Account Engagement needs your own Salesforce Marketing Cloud Account Engagement OAuth app and one admin sign-in.

[Connect Salesforce Marketing Cloud Account Engagement free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

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_account_engagement.lists.list",
  intent: "check which Salesforce Marketing Cloud Account Engagement account is connected"
}
# List lists · read · 1 upstream call
```

- 174 actions in one signed file
- 76 read look, never change
- 66 write create and update
- 32 wait for a yes destructive, confirmed first

Set up

## Connect Salesforce Marketing Cloud Account 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 Account Engagement.
   OAuth 2.0, authorization code with PKCE. You register your own OAuth app with Salesforce Marketing Cloud Account Engagement, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on. actionlake stores what you paste write-only, sealed under your tenant's key.
   Before the first sign-in, Salesforce Marketing Cloud Account Engagement needs an OAuth app of your own, registered in its developer portal. actionlake has no Salesforce Marketing Cloud Account Engagement app to lend you.
   - `access_token` Access token from one sign-in with your own OAuth app
   - `refresh_token` Refresh token from the same sign-in; the access token is renewed from it
   - `client_id` Salesforce connected app consumer key (scopes pardot_api and refresh_token)
   - `client_secret` Salesforce connected app consumer secret
   - `business_unit_id` Your Salesforce Marketing Cloud Account Engagement business unit id
   - `host` Where your Salesforce Marketing Cloud Account Engagement lives: your host
   ```
   account { op: "connections.requirements", service: "salesforce_account_engagement" }
   # 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_account_engagement.lists.list" }
   # list lists · read · 1 upstream call
   check { action: "salesforce_account_engagement.lists.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Salesforce Marketing Cloud Account Engagement at a glance

**Sign-in**

OAuth 2.0, authorization code with PKCE. You register your own OAuth app with Salesforce Marketing Cloud Account Engagement, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on.

**You provide**

`access_token` `refresh_token` `client_id` `client_secret`

**Setup fields**

`business_unit_id` `host`

**Limits we pace to**

100,000 calls a day, per connection

**API covered**

Salesforce Marketing Cloud Account Engagement (Pardot) API v5 API v5`pi.pardot.com/api/v5`

**Built from**

Salesforce Marketing Cloud Account Engagement's documentation, read 23 October 2026[developer.salesforce.com](https://developer.salesforce.com/docs/marketing/pardot/guide/version5overview.html)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

76 of 76 reads, for up to an hour; a write clears what it affects

**Shared entities**

6, so ask can line Salesforce Marketing Cloud Account 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 Account Engagement.

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

- **76** read look, never change
- **66** write create and update
- **32** destructive wait for a confirmation

1. ### Prospects
   11
   2 read · 7 write · 2 destructive
   List prospects · Create a prospect · Get a prospect · Update a prospect
2. ### Form fields
   9
   2 read · 6 write · 1 destructive
   Add a dependent field to a form field · Add a progressive field to a form field · Add a tag to a form field · Add a value to a form field
3. ### Forms
   9
   2 read · 5 write · 2 destructive
   List forms · Create a form · Get a form · Delete a form
4. ### Custom fields
   7
   2 read · 3 write · 2 destructive
   List custom fields · Create a custom field · Update a custom field · Get a custom field
5. ### Custom redirects
   7
   2 read · 3 write · 2 destructive
   Add a tag to a custom redirect · Create a custom redirect · List custom redirects · Get a custom redirect
6. ### Email templates
   7
   2 read · 3 write · 2 destructive
   Add a tag to an email template · Create an email template · List email templates · Get an email template
7. ### Files
   7
   2 read · 3 write · 2 destructive
   Add a tag to a file · Copy a file to Salesforce CMS · List files · Get a file
8. ### Form handlers
   7
   2 read · 3 write · 2 destructive
   Add a tag to a form handler · Create a form handler · List form handlers · Get a form handler

**30 more areas · 110 actions**

- Layout templates **7**
- Lists **7**
- Emails **6**
- Landing pages **6**
- Tags **6**
- Bulk actions **5**
- Campaigns **5**
- Dynamic contents **5**
- Form handler fields **5**
- List memberships **5**
- Exports **4**
- Imports **4**
- List emails **4**
- Opportunities **4**
- Users **4**
- Visitors **4**
- Dynamic content variations **3**
- External activities **3**
- Engagement studio programs **2**
- Folder contents **2**
- Folders **2**
- Lifecycle histories **2**
- Lifecycle stages **2**
- Prospect accounts **2**
- Tagged objects **2**
- Tracker domains **2**
- Visitor activities **2**
- Visitor page views **2**
- Visits **2**
- Account **1**

Top actions

## The Salesforce Marketing Cloud Account Engagement API, shaped for agents.

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

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `salesforce_account_engagement.lists.list` List lists | Query lists, with filters, sorting and page-token pagination. | read | `crm.contact_list.list` 34 connectors |
| `salesforce_account_engagement.users.list` List users | Query users, with filters, sorting and page-token pagination. | read | `identity.user.list` 474 connectors |
| `salesforce_account_engagement.prospects.list` List prospects | Query prospects, with filters, sorting and page-token pagination. | read | `crm.lead.list` 28 connectors |
| `salesforce_account_engagement.prospect_accounts.list` List prospect accounts | Query prospect accounts, with filters, sorting and page-token pagination. | read | `crm.company.list` 162 connectors |
| `salesforce_account_engagement.tags.list` List tags | Query tags, with filters, sorting and page-token pagination. | read | `crm.tag.list` 65 connectors |
| `salesforce_account_engagement.opportunities.list` List opportunities | Query opportunities, with filters, sorting and page-token pagination. | read | `crm.deal.list` 43 connectors |
| `salesforce_account_engagement.lists.create` Create a list | Create a list. | write | `crm.contact_list.create` 29 connectors |
| `salesforce_account_engagement.prospects.create` Create a prospect | Create a prospect. | write | `crm.lead.create` 24 connectors |
| `salesforce_account_engagement.prospect_accounts.get` Get a prospect account | Read one prospect account by ID. | read | `crm.company.get` 162 connectors |
| `salesforce_account_engagement.users.get` Get a user | Read one user by ID. | read | `identity.user.get` 399 connectors |
| `salesforce_account_engagement.tags.create` Create a tag | Create a tag. | write | `crm.tag.create` 49 connectors |
| `salesforce_account_engagement.lists.delete` Delete a list | Delete a list. Some objects move to the recycle bin, others are deleted permanently. | destructive | `crm.contact_list.delete` 24 connectors |

Try it

## Prompts to paste into Claude.

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

1. Read read
   Which Salesforce Marketing Cloud Account Engagement deals are due to close this month, and what are they worth in total?
   calls `salesforce_account_engagement.opportunities.list`
2. Write write
   Create a list in Salesforce Marketing Cloud Account Engagement. Show me exactly what you will send before you save it.
   calls `salesforce_account_engagement.lists.create`
3. Across systems read
   Which Salesforce Marketing Cloud Account Engagement companies have invoices in ConnectWise PSA, and how many each?
   calls `salesforce_account_engagement.prospect_accounts.list` `connectwise_manage.invoices.list`

Across your systems

## Salesforce Marketing Cloud Account Engagement, joined to the rest of your business.

One `ask` fetches from Salesforce Marketing Cloud Account Engagement and another system, joins the rows on the same customer on our side, and hands your agent the answer, not every row.

- Which Salesforce Marketing Cloud Account Engagement companies have invoices in ConnectWise PSA, and how many each?
  `salesforce_account_engagement.prospect_accounts.list` + `connectwise_manage.invoices.list`, on `crm.company` · [ConnectWise PSA](https://actionlake.com/connectors/connectwise-psa)
- Which Salesforce Marketing Cloud Account Engagement companies have invoices in NetSuite, and how many each?
  `salesforce_account_engagement.prospect_accounts.list` + `netsuite.views.invoices`, on `crm.company` · [NetSuite](https://actionlake.com/connectors/netsuite)

Also mapped by other connectors `identity.user` **517** `crm.company` **227** `crm.tag` **47** `crm.deal` **43** `crm.lead` **28** `crm.contact_list` **22**

ask

```
ask {
  intent: "which Salesforce Marketing Cloud Account Engagement companies have invoices in ConnectWise PSA, and how many each",
  steps: [
    { action: "salesforce_account_engagement.prospect_accounts.list", as: "co", input: {}, limit: 100, max_pages: 5 },
    { action: "connectwise_manage.invoices.list", as: "inv", input: {}, limit: 100, max_pages: 5 },
    { join: {
        left: "co",
        right: "inv",
        on: "crm.company",
        group_by: "co.name",
        select: ["co.name", "count(inv.id) as invoices"]
    } }
  ]
}
```

Example. Run it through check first: it validates the steps and prices them, and it is free.

Governance for Salesforce Marketing Cloud Account Engagement

## Destructive actions wait for a yes.

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

- Delete a list `salesforce_account_engagement.lists.delete`
- Delete a prospect `salesforce_account_engagement.prospects.delete`
- Delete a tag `salesforce_account_engagement.tags.delete`
- Delete a form `salesforce_account_engagement.forms.delete`
- Delete a custom field `salesforce_account_engagement.custom_fields.delete`
- Remove a tag from a list `salesforce_account_engagement.lists.remove_tag`
- Remove a tag from a user `salesforce_account_engagement.users.remove_tag`
- Remove a tag from a campaign `salesforce_account_engagement.campaigns.remove_tag`
- Remove a tag from a prospect `salesforce_account_engagement.prospects.remove_tag`
- Delete a list membership `salesforce_account_engagement.list_memberships.delete`

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.

do salesforce_account_engagement.lists.delete confirm_policy: **human**

Delete a list?

**intent:** the user asked me to delete a list

run suspended · waiting for a named person · key _salesforce-account-engagement-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "salesforce-account-engagement-agent",
  allowed_actions: ["salesforce_account_engagement.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "salesforce_account_engagement.lists.delete", approver: "lead@example.com" },
    { match: "salesforce_account_engagement.prospects.delete", approver: "lead@example.com" },
    { match: "salesforce_account_engagement.tags.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Salesforce Marketing Cloud Account 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 Account Engagement costs on actionlake.

Every Salesforce Marketing Cloud Account Engagement action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Salesforce Marketing Cloud Account 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.

- 1 upstream call per action all 174 Salesforce Marketing Cloud Account Engagement actions
- 174 actions page each page of a long list is one call
- 76 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Salesforce Marketing Cloud Account Engagement action.

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

**Prospects 11**

- `salesforce_account_engagement.prospects.add_tag` Add a tag to a prospect write
- `salesforce_account_engagement.prospects.create` Create a prospect write
- `salesforce_account_engagement.prospects.create_raw` Create a prospect (raw record) write
- `salesforce_account_engagement.prospects.delete` Delete a prospect destructive
- `salesforce_account_engagement.prospects.get` Get a prospect read
- `salesforce_account_engagement.prospects.list` List prospects read
- `salesforce_account_engagement.prospects.remove_tag` Remove a tag from a prospect destructive
- `salesforce_account_engagement.prospects.undelete` Restore a prospect from the recycle bin write
- `salesforce_account_engagement.prospects.update` Update a prospect write
- `salesforce_account_engagement.prospects.update_raw` Update a prospect (raw record) write
- `salesforce_account_engagement.prospects.upsert_latest_by_email` Upsert a prospect by email write

**Form fields 9**

- `salesforce_account_engagement.form_fields.add_dependent` Add a dependent field to a form field write
- `salesforce_account_engagement.form_fields.add_progressive` Add a progressive field to a form field write
- `salesforce_account_engagement.form_fields.add_tag` Add a tag to a form field write
- `salesforce_account_engagement.form_fields.add_value` Add a value to a form field write
- `salesforce_account_engagement.form_fields.create` Create a form field write
- `salesforce_account_engagement.form_fields.get` Get a form field read
- `salesforce_account_engagement.form_fields.list` List form fields read
- `salesforce_account_engagement.form_fields.remove_tag` Remove a tag from a form field destructive
- `salesforce_account_engagement.form_fields.reorder_values` Reorder the values of a form field write

**Forms 9**

- `salesforce_account_engagement.forms.add_tag` Add a tag to a form write
- `salesforce_account_engagement.forms.copy_to_cms` Copy a form to Salesforce CMS write
- `salesforce_account_engagement.forms.create` Create a form write
- `salesforce_account_engagement.forms.delete` Delete a form destructive
- `salesforce_account_engagement.forms.get` Get a form read
- `salesforce_account_engagement.forms.list` List forms read
- `salesforce_account_engagement.forms.remove_tag` Remove a tag from a form destructive
- `salesforce_account_engagement.forms.reorder_fields` Reorder the fields on a form write
- `salesforce_account_engagement.forms.undelete` Restore a form from the recycle bin write

**Custom fields 7**

- `salesforce_account_engagement.custom_fields.add_tag` Add a tag to a custom field write
- `salesforce_account_engagement.custom_fields.create` Create a custom field write
- `salesforce_account_engagement.custom_fields.delete` Delete a custom field destructive
- `salesforce_account_engagement.custom_fields.get` Get a custom field read
- `salesforce_account_engagement.custom_fields.list` List custom fields read
- `salesforce_account_engagement.custom_fields.remove_tag` Remove a tag from a custom field destructive
- `salesforce_account_engagement.custom_fields.update` Update a custom field write

**Custom redirects 7**

- `salesforce_account_engagement.custom_redirects.add_tag` Add a tag to a custom redirect write
- `salesforce_account_engagement.custom_redirects.create` Create a custom redirect write
- `salesforce_account_engagement.custom_redirects.delete` Delete a custom redirect destructive
- `salesforce_account_engagement.custom_redirects.get` Get a custom redirect read
- `salesforce_account_engagement.custom_redirects.list` List custom redirects read
- `salesforce_account_engagement.custom_redirects.remove_tag` Remove a tag from a custom redirect destructive
- `salesforce_account_engagement.custom_redirects.update` Update a custom redirect write

**Email templates 7**

- `salesforce_account_engagement.email_templates.add_tag` Add a tag to an email template write
- `salesforce_account_engagement.email_templates.create` Create an email template write
- `salesforce_account_engagement.email_templates.delete` Delete an email template destructive
- `salesforce_account_engagement.email_templates.get` Get an email template read
- `salesforce_account_engagement.email_templates.list` List email templates read
- `salesforce_account_engagement.email_templates.remove_tag` Remove a tag from an email template destructive
- `salesforce_account_engagement.email_templates.update` Update an email template write

**Files 7**

- `salesforce_account_engagement.files.add_tag` Add a tag to a file write
- `salesforce_account_engagement.files.copy_to_cms` Copy a file to Salesforce CMS write
- `salesforce_account_engagement.files.delete` Delete a file destructive
- `salesforce_account_engagement.files.get` Get a file read
- `salesforce_account_engagement.files.list` List files read
- `salesforce_account_engagement.files.remove_tag` Remove a tag from a file destructive
- `salesforce_account_engagement.files.update` Update a file write

**Form handlers 7**

- `salesforce_account_engagement.form_handlers.add_tag` Add a tag to a form handler write
- `salesforce_account_engagement.form_handlers.create` Create a form handler write
- `salesforce_account_engagement.form_handlers.delete` Delete a form handler destructive
- `salesforce_account_engagement.form_handlers.get` Get a form handler read
- `salesforce_account_engagement.form_handlers.list` List form handlers read
- `salesforce_account_engagement.form_handlers.remove_tag` Remove a tag from a form handler destructive
- `salesforce_account_engagement.form_handlers.update` Update a form handler write

**Layout templates 7**

- `salesforce_account_engagement.layout_templates.add_tag` Add a tag to a layout template write
- `salesforce_account_engagement.layout_templates.create` Create a layout template write
- `salesforce_account_engagement.layout_templates.delete` Delete a layout template destructive
- `salesforce_account_engagement.layout_templates.get` Get a layout template read
- `salesforce_account_engagement.layout_templates.list` List layout templates read
- `salesforce_account_engagement.layout_templates.remove_tag` Remove a tag from a layout template destructive
- `salesforce_account_engagement.layout_templates.update` Update a layout template write

**Lists 7**

- `salesforce_account_engagement.lists.add_tag` Add a tag to a list write
- `salesforce_account_engagement.lists.create` Create a list write
- `salesforce_account_engagement.lists.delete` Delete a list destructive
- `salesforce_account_engagement.lists.get` Get a list read
- `salesforce_account_engagement.lists.list` List lists read
- `salesforce_account_engagement.lists.remove_tag` Remove a tag from a list destructive
- `salesforce_account_engagement.lists.update` Update a list write

**Emails 6**

- `salesforce_account_engagement.emails.add_tag` Add a tag to a one-to-one email write
- `salesforce_account_engagement.emails.copy_to_cms` Copy a one-to-one email to Salesforce CMS write
- `salesforce_account_engagement.emails.create` Create a one-to-one email write
- `salesforce_account_engagement.emails.get` Get a one-to-one email read
- `salesforce_account_engagement.emails.list` List emails read
- `salesforce_account_engagement.emails.remove_tag` Remove a tag from a one-to-one email destructive

**Landing pages 6**

- `salesforce_account_engagement.landing_pages.add_tag` Add a tag to a landing page write
- `salesforce_account_engagement.landing_pages.copy_to_cms` Copy a landing page to Salesforce CMS write
- `salesforce_account_engagement.landing_pages.create` Create a landing page write
- `salesforce_account_engagement.landing_pages.get` Get a landing page read
- `salesforce_account_engagement.landing_pages.list` List landing pages read
- `salesforce_account_engagement.landing_pages.remove_tag` Remove a tag from a landing page destructive

**Tags 6**

- `salesforce_account_engagement.tags.create` Create a tag write
- `salesforce_account_engagement.tags.delete` Delete a tag destructive
- `salesforce_account_engagement.tags.get` Get a tag read
- `salesforce_account_engagement.tags.list` List tags read
- `salesforce_account_engagement.tags.merge` Merge tags into a tag destructive
- `salesforce_account_engagement.tags.update` Update a tag write

**Bulk actions 5**

- `salesforce_account_engagement.bulk_actions.cancel` Cancel a bulk action job destructive
- `salesforce_account_engagement.bulk_actions.get` Get a bulk action job read
- `salesforce_account_engagement.bulk_actions.list` List bulk action jobs read
- `salesforce_account_engagement.bulk_actions.pause` Pause a bulk action job write
- `salesforce_account_engagement.bulk_actions.resume` Resume a bulk action job write

**Campaigns 5**

- `salesforce_account_engagement.campaigns.add_tag` Add a tag to a campaign write
- `salesforce_account_engagement.campaigns.connect_salesforce_campaign` Connect a campaign to a Salesforce campaign write
- `salesforce_account_engagement.campaigns.get` Get a campaign read
- `salesforce_account_engagement.campaigns.list` List campaigns read
- `salesforce_account_engagement.campaigns.remove_tag` Remove a tag from a campaign destructive

**Dynamic contents 5**

- `salesforce_account_engagement.dynamic_contents.add_tag` Add a tag to a dynamic content write
- `salesforce_account_engagement.dynamic_contents.create` Create a dynamic content write
- `salesforce_account_engagement.dynamic_contents.get` Get a dynamic content read
- `salesforce_account_engagement.dynamic_contents.list` List dynamic content items read
- `salesforce_account_engagement.dynamic_contents.remove_tag` Remove a tag from a dynamic content destructive

**Form handler fields 5**

- `salesforce_account_engagement.form_handler_fields.create` Create a form handler field write
- `salesforce_account_engagement.form_handler_fields.delete` Delete a form handler field destructive
- `salesforce_account_engagement.form_handler_fields.get` Get a form handler field read
- `salesforce_account_engagement.form_handler_fields.list` List form handler fields read
- `salesforce_account_engagement.form_handler_fields.update` Update a form handler field write

**List memberships 5**

- `salesforce_account_engagement.list_memberships.create` Create a list membership write
- `salesforce_account_engagement.list_memberships.delete` Delete a list membership destructive
- `salesforce_account_engagement.list_memberships.get` Get a list membership read
- `salesforce_account_engagement.list_memberships.list` List list memberships read
- `salesforce_account_engagement.list_memberships.update` Update a list membership write

**Exports 4**

- `salesforce_account_engagement.exports.cancel` Cancel an export job destructive
- `salesforce_account_engagement.exports.create` Create an export job write
- `salesforce_account_engagement.exports.get` Get an export job read
- `salesforce_account_engagement.exports.list` List export jobs read

**Imports 4**

- `salesforce_account_engagement.imports.cancel` Cancel an import job destructive
- `salesforce_account_engagement.imports.get` Get an import job read
- `salesforce_account_engagement.imports.list` List import jobs read
- `salesforce_account_engagement.imports.submit` Submit an import job write

**List emails 4**

- `salesforce_account_engagement.list_emails.create` Create a list email write
- `salesforce_account_engagement.list_emails.get` Get a list email read
- `salesforce_account_engagement.list_emails.list` List list emails read
- `salesforce_account_engagement.list_emails.stats` Get list email statistics read

**Opportunities 4**

- `salesforce_account_engagement.opportunities.add_tag` Add a tag to an opportunity write
- `salesforce_account_engagement.opportunities.get` Get an opportunity read
- `salesforce_account_engagement.opportunities.list` List opportunities read
- `salesforce_account_engagement.opportunities.remove_tag` Remove a tag from an opportunity destructive

**Users 4**

- `salesforce_account_engagement.users.add_tag` Add a tag to a user write
- `salesforce_account_engagement.users.get` Get a user read
- `salesforce_account_engagement.users.list` List users read
- `salesforce_account_engagement.users.remove_tag` Remove a tag from a user destructive

**Visitors 4**

- `salesforce_account_engagement.visitors.assign_to_prospect` Assign a visitor to a prospect write
- `salesforce_account_engagement.visitors.get` Get a visitor read
- `salesforce_account_engagement.visitors.identify_company` Identify a visitor's company write
- `salesforce_account_engagement.visitors.list` List visitors read

**Dynamic content variations 3**

- `salesforce_account_engagement.dynamic_content_variations.create` Create a dynamic content variation write
- `salesforce_account_engagement.dynamic_content_variations.get` Get a dynamic content variation read
- `salesforce_account_engagement.dynamic_content_variations.list` List dynamic content variations read

**External activities 3**

- `salesforce_account_engagement.external_activities.create` Record an external activity write
- `salesforce_account_engagement.external_activities.get` Get an external activity read
- `salesforce_account_engagement.external_activities.list` List external activities read

**Engagement studio programs 2**

- `salesforce_account_engagement.engagement_studio_programs.get` Get an Engagement Studio program read
- `salesforce_account_engagement.engagement_studio_programs.list` List Engagement Studio programs read

**Folder contents 2**

- `salesforce_account_engagement.folder_contents.get` Get a folder content entry read
- `salesforce_account_engagement.folder_contents.list` List folder content entries read

**Folders 2**

- `salesforce_account_engagement.folders.get` Get a folder read
- `salesforce_account_engagement.folders.list` List folders read

**Lifecycle histories 2**

- `salesforce_account_engagement.lifecycle_histories.get` Get a lifecycle history entry read
- `salesforce_account_engagement.lifecycle_histories.list` List lifecycle history entries read

**Lifecycle stages 2**

- `salesforce_account_engagement.lifecycle_stages.get` Get a lifecycle stage read
- `salesforce_account_engagement.lifecycle_stages.list` List lifecycle stages read

**Prospect accounts 2**

- `salesforce_account_engagement.prospect_accounts.get` Get a prospect account read
- `salesforce_account_engagement.prospect_accounts.list` List prospect accounts read

**Tagged objects 2**

- `salesforce_account_engagement.tagged_objects.get` Get a tagged object read
- `salesforce_account_engagement.tagged_objects.list` List tagged objects read

**Tracker domains 2**

- `salesforce_account_engagement.tracker_domains.get` Get a tracker domain read
- `salesforce_account_engagement.tracker_domains.list` List tracker domains read

**Visitor activities 2**

- `salesforce_account_engagement.visitor_activities.get` Get a visitor activity read
- `salesforce_account_engagement.visitor_activities.list` List visitor activities read

**Visitor page views 2**

- `salesforce_account_engagement.visitor_page_views.get` Get a visitor page view read
- `salesforce_account_engagement.visitor_page_views.list` List visitor page views read

**Visits 2**

- `salesforce_account_engagement.visits.get` Get a visit read
- `salesforce_account_engagement.visits.list` List visits read

**Account 1**

- `salesforce_account_engagement.account.get` Get the Account Engagement account read

Questions

## The Salesforce Marketing Cloud Account Engagement MCP server, answered.

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

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 174 Salesforce Marketing Cloud Account Engagement actions across prospects, form fields, forms and custom fields, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Salesforce Marketing Cloud Account Engagement.

**What do I need to connect Salesforce Marketing Cloud Account Engagement?**

Your own Salesforce Marketing Cloud Account Engagement OAuth app, registered with Salesforce Marketing Cloud Account Engagement (its client id and client secret), and the access and refresh tokens from one admin sign-in. actionlake has no Salesforce Marketing Cloud Account Engagement app of its own, so this is not a one-step consent. actionlake renews the access token as it expires. Plus your business unit id and your host. The free call account { op: "connections.requirements", service: "salesforce_account_engagement" } lists exactly what to paste.

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

Only if its key allows it, and only with an explicit confirmation. 32 Salesforce Marketing Cloud Account Engagement actions are destructive, including delete a list, delete a prospect and delete a tag. 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 Account Engagement API limit?**

actionlake paces every call to the limits in the Salesforce Marketing Cloud Account Engagement service file: 100,000 calls a day per connection. Repeated reads are answered from cache (76 Salesforce Marketing Cloud Account Engagement actions can be), which never reaches Salesforce Marketing Cloud Account Engagement.

**What does a Salesforce Marketing Cloud Account Engagement action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (174 Salesforce Marketing Cloud Account Engagement actions page). Cache hits, searches, dry runs and calls Salesforce Marketing Cloud Account 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 Account Engagement API does it cover?**

The Salesforce Marketing Cloud Account Engagement (Pardot) API v5 API v5 at pi.pardot.com/api/v5 by default, or the base URL set when you connect. It is built from Salesforce Marketing Cloud Account Engagement's documentation as read on 23 October 2026. 174 actions in 38 areas, each one in the signed service file (version 1.0.0).

**Can I combine Salesforce Marketing Cloud Account Engagement with my other systems?**

Yes. ask joins Salesforce Marketing Cloud Account Engagement to ConnectWise PSA or NetSuite on the same customer and returns the answer rather than every row. Salesforce Marketing Cloud Account Engagement maps crm.company, which 227 other connectors also map.

**Does actionlake keep my Salesforce Marketing Cloud Account 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 an hour, 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 Account 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.

## More connectors like Salesforce Marketing Cloud Account Engagement

Shares the most action names with

- [Constant Contact 17](https://actionlake.com/connectors/constant-contact)
- [Aircall 9](https://actionlake.com/connectors/aircall)
- [CallTrackingMetrics 8](https://actionlake.com/connectors/calltrackingmetrics)
- [Meta Marketing API 8](https://actionlake.com/connectors/meta-marketing-api)
- [Klaviyo 7](https://actionlake.com/connectors/klaviyo)
- [Snapchat Marketing API 5](https://actionlake.com/connectors/snapchat-marketing-api)

Joins with, on shared entities

- [Salesforce Sales Cloud 4](https://actionlake.com/connectors/salesforce-sales-cloud)
- [Bitrix24 4](https://actionlake.com/connectors/bitrix24)
- [Odoo 4](https://actionlake.com/connectors/odoo)
- [ERPNext (Frappe) 4](https://actionlake.com/connectors/erpnext-frappe)
- [Microsoft Dynamics 365 4](https://actionlake.com/connectors/microsoft-dynamics-365)
- [HighLevel (LeadConnector) 4](https://actionlake.com/connectors/highlevel-leadconnector)

Browse

- [All Email & messaging connectors](https://actionlake.com/connectors/category/email-and-messaging)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Salesforce Marketing Cloud Account Engagement; the name is the vendor's own. Counts are from the Salesforce Marketing Cloud Account Engagement service file, version 1.0.0.

## Give your agent Salesforce Marketing Cloud Account Engagement today.

[Connect Salesforce Marketing Cloud Account Engagement free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

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

---

Source: https://actionlake.com/connectors/salesforce-marketing-cloud-account-engagement
More: https://actionlake.com/llms.txt
