Marketo MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MARKETO_BASE_URL | Yes | Your Marketo instance URL (e.g., https://123-ABC-456.mktorest.com/rest) | |
| MARKETO_CLIENT_ID | Yes | Your Marketo API Client ID | |
| MARKETO_CLIENT_SECRET | Yes | Your Marketo API Client Secret |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| marketo_get_formsA | List forms in the Marketo instance. Filter by approval status (approved/draft) and paginate with maxReturn/offset. Returns form metadata including URL, status, and folder location. |
| marketo_get_form_by_idA | Retrieve a single form by its numeric ID. Returns full form metadata including fields, submit button, and thank-you page configuration. |
| marketo_clone_formA | Clone an existing form into a destination folder. The cloned form is created in draft status and must be approved before use. |
| marketo_approve_formB | Approve a draft form, making it available for use in landing pages and embeds. Optionally include an approval comment. |
| marketo_get_smart_listsA | List smart lists in the Marketo instance. Paginate with maxReturn (default 200) and offset. Returns smart list metadata including filter rules and folder location. |
| marketo_get_smart_list_by_idA | Retrieve a single smart list by its numeric ID. Returns the smart list definition including filter rules and membership criteria. |
| marketo_get_channelsB | List all program channels in the instance. Channels define the progression statuses available to programs (e.g., Webinar: Invited > Registered > Attended). |
| marketo_get_channel_by_idA | Retrieve a single channel by its numeric ID. Returns the channel definition including progression statuses and their success mappings. |
| marketo_create_channelA | Create a new program channel. Channels must have a unique name and type. The type determines which program types can use this channel. |
| marketo_update_channelA | Update an existing channel's properties (name, description, type). Cannot change progression statuses after creation. |
| marketo_delete_channelA | Delete a channel by ID. Fails if any programs are currently using this channel. |
| marketo_get_lead_by_idB | Retrieve a lead by its numeric Marketo ID. Optionally specify which fields to return (defaults to standard fields). Returns lead record with all requested field values. |
| marketo_get_lead_by_emailB | Look up a lead by email address using the Marketo leads filter API. Optionally specify which fields to return. Returns matching lead records. |
| marketo_create_or_update_leadA | Bulk create or update leads (upsert). Accepts an array of lead records with standard and custom fields. Deduplicates by lookupField (default: email). Max 300 leads per call. |
| marketo_delete_leadA | Permanently delete a lead by its numeric ID. This action cannot be undone. |
| marketo_get_lead_activitiesA | Fetch activity records for a specific lead. Filter by activity type IDs (e.g., 1=Visit Webpage, 2=Fill Out Form, 6=Send Email). Supports cursor-based pagination via nextPageToken. |
| marketo_get_lead_changesA | Fetch field-change history for a specific lead. Optionally filter to specific field names. Useful for auditing data changes and tracking lead lifecycle progression. |
| marketo_get_lead_listsA | Get all static lists that a lead belongs to. Supports cursor-based pagination via nextPageToken. Returns list IDs and names. |
| marketo_add_lead_to_listA | Add one or more leads to a static list by list ID. Accepts an array of lead IDs. Max 300 leads per call. |
| marketo_remove_lead_from_listA | Remove one or more leads from a static list. Accepts an array of lead IDs. Max 300 leads per call. |
| marketo_get_programsA | List programs in Marketo. Filter by type (filterType: id, programType, folder, tag) with filterValues, or by date range (earliestUpdatedAt/latestUpdatedAt). Paginate with maxReturn/offset. Returns program metadata including channel, status, costs, and tags. |
| marketo_get_program_by_idA | Retrieve a single program by its numeric ID. Returns full program metadata including channel, status, costs, tags, and folder path. |
| marketo_clone_programA | Clone an existing program into a destination folder. Clones all local assets (emails, landing pages, smart campaigns) within the program. The cloned program is created with the same channel. |
| marketo_get_program_membersA | Get leads that are members of a specific program. Optionally specify which fields to return. Supports cursor-based pagination via nextPageToken. Returns member status alongside lead data. |
| marketo_get_emailsA | List email assets in Marketo. Filter by approval status (approved/draft) and paginate with maxReturn/offset. Returns email metadata including subject line, from address, and template ID. |
| marketo_get_email_by_idA | Retrieve a single email by its numeric ID. Returns full email metadata including subject, from address, reply-to, template, and folder location. |
| marketo_send_sample_emailA | Send a sample/preview of an email to a specified email address. Optionally render with a specific lead's data by passing leadId. Useful for QA before approving. |
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
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/alexleventer/marketo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server