Marketo MCP server

Prebuilt SnapLogic agentic-tool pipelines that let an LLM read from and act on Marketo, callable as MCP tools via Pipeline Execute. Published in the SnapLogic pattern catalog.

Overview

This tool pack gives an agent access to Adobe Marketo Engage through four pipelines covering the Lead Database (people, activities, list membership) and the Asset API (emails, forms, landing pages, programs, folders). The agent names the operation with a command parameter and supplies query parameters for reads or a payload for writes.

For setup instructions, see SnapLogic MCP Server quickstart.

Example Prompts

  • Create a Marketo form called 'Contact Us' in folder 123 with the description 'Main contact form'
  • Set up a new landing page in Marketo for the autumn webinar
  • Create a folder in Marketo called 'Q4 Campaigns' to organise the new assets
  • Add a new email asset to our welcome program in Marketo
  • Rename the 'Contact Us' form in Marketo and update its description
  • List the first 10 emails in our Marketo instance
  • What forms do we have in Marketo?
  • Show me the landing pages in the 'Product Launch' folder
  • Get our Marketo programs so I can see what campaigns exist
  • Find the Marketo email asset called 'Welcome Series - Day 1'

Tools

Tool Name Functions
MarketoAssetAction Create or update Marketo assets — forms, emails, landing pages, folders — via the Asset API.
MarketoAssetActionChild Marketo Asset Action Child
MarketoAssetQuery Browse Marketo assets — emails, forms, landing pages, programs, folders — via the Asset API.
MarketoLeadAction Create, update or otherwise write lead records in the Marketo Lead Database.
MarketoLeadActionChild Marketo Lead Action Child
MarketoLeadQuery Read leads, lead fields and lead activities from the Marketo Lead Database by command and query parameters.

Set up the MCP Server tools

  1. Download marketo_tools.zip.
  2. In SnapLogic Designer, open the target project space (or create one), then choose Import Project / Import Pipelines and select the downloaded marketo_tools.zip. Designer unpacks each pipeline into the project.
  3. Attach the required account to the connectivity snaps (see Connection Setup).
  4. Expose the project as an MCP server — each pipeline becomes a tool named after its label. New to this? Start with the MCP quickstart, then use the MCP Server Pipeline Builder to generate the server from the imported pipelines.

Configure account

Attach a Marketo REST account to the Marketo snaps in Designer after import.

These pipelines ship without credentials by design — attach a valid account in Designer before the tools will execute.

See the SnapLogic account documentation for this connector: Configuring Marketo Account.

Important: These pipelines ship without credentials by design — attach a valid account in Designer before the tools will execute. Credentials live in the SnapLogic account store, never in the pipeline JSON.

MarketoAssetAction

Creates or updates Marketo assets, such as forms, emails, landing pages, and folders, via the Asset API. Specify the operation in the command parameter and supply the asset definition in the payload.

Parameter Type Default Description
command* string

Marketo asset-write operation to run, e.g. 'Create Form', 'Create Email', 'Create Folder'.

payload* object

Asset definition in Marketo's expected shape, e.g. {"name": "Contact Us", "folder": {"id": 123, "type": "Folder"}, "description": "Main contact form"}.

* Required parameter.

Try asking:

  • Create a Marketo form called 'Contact Us' in folder 123 with the description 'Main contact form'
  • Set up a new landing page in Marketo for the autumn webinar
  • Create a folder in Marketo called 'Q4 Campaigns' to organise the new assets
  • Add a new email asset to our welcome program in Marketo
  • Rename the 'Contact Us' form in Marketo and update its description

MarketoAssetActionChild

Lets the LLM marketo asset action child, exposed as an MCP tool callable via Pipeline Execute.

Parameter Type Default Description
command string

MarketoAssetQuery

Browses Marketo assets, such as emails, forms, landing pages, programs, and folders, via the Asset API. Use it to inventory or locate campaign collateral before acting on it.

Parameter Type Default Description
command* string

Marketo asset-read operation to run, e.g. 'Get Emails', 'Get Forms', 'Get Landing Pages'.

query_1_name string

Name of the first Marketo query parameter, e.g. maxReturn.

query_1_value string

Value for the first query parameter, e.g. 10.

query_2_name string

Name of the second Marketo query parameter, e.g. offset or folder.

query_2_value string

Value for the second query parameter.

query_3_name string

Name of the third Marketo query parameter, e.g. status.

query_3_value string

Value for the third query parameter.

* Required parameter.

Try asking:

  • List the first 10 emails in our Marketo instance
  • What forms do we have in Marketo?
  • Show me the landing pages in the 'Product Launch' folder
  • Get our Marketo programs so I can see what campaigns exist
  • Find the Marketo email asset called 'Welcome Series - Day 1'

MarketoLeadAction

Creates, updates, or otherwise writes lead records in the Marketo Lead Database, covering operations such as syncing leads and managing static list membership. Specify the operation in the command parameter and provide the lead data in the payload.

Parameter Type Default Description
command* string

Marketo lead-write operation to run, e.g. 'Sync Leads'. Selects the endpoint on the Lead Database API.

payload* object

Request body in Marketo's expected shape, e.g. {"input": [{"email": "[email protected]", "firstName": "John", "lastName": "Doe"}]}.

* Required parameter.

Try asking:

  • Sync this new lead into Marketo: [email protected], John Doe
  • Update the Marketo record for [email protected] with her new job title and phone number
  • Push these five webinar registrants into Marketo as leads
  • Add this lead to our 'Q3 Nurture' static list in Marketo
  • Create a Marketo lead for the contact we just spoke to and set their lead source to 'Partner Referral'

MarketoLeadActionChild

Lets the LLM marketo lead action child, exposed as an MCP tool callable via Pipeline Execute.

Parameter Type Default Description
command string

MarketoLeadQuery

Reads leads, lead fields, and activity history from the Marketo Lead Database by naming the operation in the command parameter and supplying up to three query parameters. Use it for people-focused questions, such as who a lead is, what fields they hold, or what they have done.

Parameter Type Default Description
command* string

Marketo lead-read operation to run, e.g. 'Get Leads by Filter Type', 'Get Lead by Id'. Selects the endpoint on the Lead Database API.

query_1_name string

Name of the first Marketo query parameter, e.g. filterType.

query_1_value string

Value for the first query parameter, e.g. email.

query_2_name string

Name of the second Marketo query parameter, e.g. filterValues.

query_2_value string

Value for the second query parameter, e.g. a comma-separated list of emails.

query_3_name string

Name of the third Marketo query parameter, e.g. fields or batchSize.

query_3_value string

Value for the third query parameter.

* Required parameter.

Try asking:

  • Look up the Marketo lead with email [email protected]
  • Get leads filtered by email for these three addresses and include their firstName, lastName and company fields
  • Find the Marketo lead record for lead ID 1042 and show me everything on it
  • Which leads match filter type 'company' with value 'Acme Corp'?
  • Pull the recent activity history for this lead out of Marketo