Mementom developer tools
Marketing MCP
Connect your assistant to the same marketing workspace your team uses. Count audiences, prepare content, save campaign drafts and explain results with your company’s existing permissions.
Connect an assistant- Protocol
- MCP 2026-07-28
- Hosted path
/mcp/marketing- Transports
- Streamable HTTP · stdio
- Scope
- Marketing tools
Connecting a personal agent?
Use Personal MCP for an owner-controlled shared key, selected capabilities and offer filters. Start with its agent integration guide.
Choose how to connect
Use hosted OAuth for a remote MCP client, or a local stdio process with a server-side Marketing API credential.
- Add
/mcp/marketingon your marketing workspace origin to your host as a Streamable HTTP server. - Complete Mementom sign-in and review the company, application and scopes on the consent page.
- Ask the assistant to list your application and read the workspace summary before saving work.
For local stdio setup, use the connection guide. Credentials belong in protected host configuration, never in a conversation or tool argument.
Authorization and scopes
Hosted access uses OAuth authorization code with PKCE S256 and human company/application consent. Its access token lasts 15 minutes and refresh tokens rotate. This token is distinct from a Marketing API credential used by the local stdio server.
Every request retains current company, application, role and scope checks. Agency access is explicit for each company/application; changing a company name in a prompt does not switch access.
| Scope | Allows |
|---|---|
marketing:read | Read workspace, count audiences, read reports and activity. |
marketing:audiences:write | Save or replace audiences. |
marketing:content:write | Create, edit or duplicate content. |
marketing:campaigns:write | Create campaign drafts. |
marketing:pricing:write | Save planning assumptions. |
marketing:insights:propose | Propose a field for review. |
marketing:objective:write | Set the workspace goal. |
Request only the scopes needed for the task. Credential management and consumer authentication remain outside these tools.
A marketer’s request, visible steps
“Count visitors who compared products, then prepare a return-visitor draft using our existing invitation.”
Read
Discover the application, current revision and available fields.
Count
Test the agreed audience against current permitted observations.
Prepare
Reuse or create the requested invitation and content.
Save
Create a draft with explicit fees, budget and response window.
Review
Check the console record, report mode and safe request trace.
Each save uses the same API validation as the console. The assistant preserves your wording and asks for missing terms when they materially affect the requested draft.
Results and revisions
Tools return structured data and readable text. Workspace sections are paged, with a default of 20 and maximum of 100 records. Start with the summary, then read the required section or exact record.
Writes return applicationId, revision, activityId, API operation and a compact saved record. Campaign receipts also return delivered: false. Read the corresponding workspace record for details.
Use record IDs and revisions returned by your application. Carry the updated workspace revision into the next write. Content edits also require the saved content edition.
A 409 requires a fresh read and reconciliation. A timeout may happen after a save succeeds; read back the record before trying again. The SDK does not retry writes automatically, and a sequence of saves is not one transaction.
mementom_marketing_list_applicationsList your application
Discover the application authorized for this connection. Use its returned ID in later calls.
Required scope: marketing:read
No arguments. Pass an empty object.
Result
The application ID and display name; an application credential cannot list another company’s applications.
mementom_marketing_get_workspaceRead the workspace
Start with the current revision, goals and capabilities. Read only the sections needed for the next decision.
Required scope: marketing:read
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized application ID. |
section | summary (default), definitions, outsideCatalog, audiences, content, campaigns, pricing or suggestions. |
recordId | Optional exact record ID within the chosen section. |
offset / limit | Default 0 / 20. Offset 0–10,000; limit 1–100. |
Result
Scoped workspace data with revision and activity correlation. Collections are paged; follow pagination metadata before concluding a record is absent.
mementom_marketing_count_audienceCount eligible matches
Count the people whose current, permitted insights match your proposed audience.
Required scope: marketing:read
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized ID from list_applications. |
expectedRevision | Latest nonnegative workspace revision. Use the returned revision after each save. |
audience | A simple or structured audience using registered definition IDs, versions and typed values. |
Result
Availability, count, basis and timestamp. This is not a delivery promise or a list of identities.
mementom_marketing_save_audienceSave an audience
Save the audience the marketer requested using the same validation as the console.
Required scope: marketing:audiences:write
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized ID from list_applications. |
expectedRevision | Latest nonnegative workspace revision. Use the returned revision after each save. |
payload | AudienceSave fields; include audienceId to replace an existing audience. |
Result
Saved record identity, updated revision and activity correlation. Preserve structured logic; do not substitute different filters.
mementom_marketing_save_contentSave content
Create an offer, questionnaire or insight request, or save a new edition of existing content.
Required scope: marketing:content:write
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized ID from list_applications. |
expectedRevision | Latest nonnegative workspace revision. Use the returned revision after each save. |
payload | ContentSave fields: name, type, creative, questions and requested insight IDs. |
contentId / expectedContentRevision | Payload fields required together when editing saved content. |
duplicateFromId | Payload field for duplication; do not combine with an edit. |
preserveImageFromContentId | Optional top-level field: copy the image from same-application saved content. Omit payload.content.image when using it; an explicit empty image string removes the image. |
Result
Saved content ID/edition and the workspace revision. Reads return imageAvailable instead of image bytes; preserve the saved image explicitly during an edit.
mementom_marketing_create_campaignCreate a campaign draft
Combine the agreed audience, content and terms into a draft in the marketing console.
Required scope: marketing:campaigns:write
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized ID from list_applications. |
expectedRevision | Latest nonnegative workspace revision. Use the returned revision after each save. |
payload | CampaignV2: objective, schedule, budgets, response window and engagements. |
engagements | 1–10 entries using saved audiences and complete creative. Saved content bindings include ID and edition. |
budgetMinor / dailyCapMinor | Whole minor currency units; daily cap fits within total budget. |
Result
A campaign ID, draft status and delivered: false. Omitted images bound to a current saved content ID/edition are restored before validation. No delivery, consent release or payment occurs.
mementom_marketing_get_reportRead campaign results
Read aggregate results with explicit test/live and modeled-cost labels.
Required scope: marketing:read
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized application ID. |
campaignId | Campaign ID read from this workspace. |
mode | live (default) or test. Read each mode separately. |
Result
Overview, engagement measurements, recommendations and limitations. A missing settled amount remains null.
mementom_marketing_get_activityTrace a request
Explain what happened to a request using safe operation metadata.
Required scope: marketing:read
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized application ID. |
activityId | Optional correlation from a prior result; mact_ prefix, at most 100 characters. |
offset / limit | Default 0 / 20. Offset 0–10,000; limit 1–100. |
Result
Operation, method, status, revision, error and source. No raw creative, credentials or holder identity.
mementom_marketing_update_pricingUpdate planning assumptions
Save an explicitly requested change to the assumptions used for campaign planning.
Required scope: marketing:pricing:write
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized ID from list_applications. |
expectedRevision | Latest nonnegative workspace revision. Use the returned revision after each save. |
payload | PricingInput: supported policy/profile assumptions. |
Result
Updated planning policy/profiles and revision. These are estimates, not invoices or settled fees.
mementom_marketing_propose_insightPropose an insight
Request a missing non-identifying field for developer review.
Required scope: marketing:insights:propose
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized ID from list_applications. |
expectedRevision | Latest nonnegative workspace revision. Use the returned revision after each save. |
payload | InsightProposal: non-identifying key, label, description, type, bounds/values and expiry. |
Result
The proposed definition and pending-review state. A proposal cannot approve itself or immediately become an audience filter.
mementom_marketing_set_objectiveSet the workspace goal
Change the goal used to suggest relevant audiences and next steps.
Required scope: marketing:objective:write
Arguments
| Field | Meaning |
|---|---|
applicationId | Authorized ID from list_applications. |
expectedRevision | Latest nonnegative workspace revision. Use the returned revision after each save. |
payload.objective | return_visitors or learn_preferences. |
Result
Updated objective and workspace revision. Existing campaign delivery is unaffected.
Interpret results before recommending action
Every explanation should name the report mode, response window, evidence and limitation. An empty live report does not mean a draft failed; it may never have been delivered.
| Check | Meaning |
|---|---|
| Test and live | Read each mode separately; synthetic observations never become live totals. |
| Mature windows | Use mature deliveries and their responses when comparing rates; show pending deliveries. |
| Costs | Modeled spend follows draft terms. A null settled amount means unavailable, not zero paid. |
| Purchases | Show purchases, reversals and net purchases together. |
| ROI | Do not claim business ROI from synthetic revenue and modeled fees. |
| Evidence | A view does not prove attention; observational differences do not establish causal lift. |
Recommend a measurable next step from actual observations. Do not invent identity, settled revenue or guaranteed results.
Resources and prompts
Your MCP host can expose reference resources and user-selected workflow prompts. They use the same company permissions and do not authorize extra saves.
Resources
mementom://marketing/guidemementom://marketing/measurementmementom://marketing/openapi
Prompts
| Name | Purpose |
|---|---|
mementom_plan_return_visit | Inspect the catalog and prepare requested return-visitor draft work. |
mementom_review_results | Explain evidence, test/live mode, costs and missing measurements. |
mementom_investigate_activity | Trace a request and reconcile its saved state. |
Trace and recover
Preserve the activityId from the tool or API response. Use get_activity to find the operation, status, revision and safe error. Diagnostics contain no authorization headers, raw creative bodies or holder identity.
The server SDK’s onTrace reports safe method, path, status, activity ID, revision and error. Local stdio logs belong on standard error so they cannot corrupt protocol output.
| Failure | Next step |
|---|---|
| Invalid input | Read the relevant catalog/record and correct the named field. |
| Expired access | Reconnect through Mementom. Do not paste a secret into chat. |
| Missing scope | Grant the required operation through the approved access flow. |
| Stale revision or uncertain write | Read and reconcile before any retry. |
| Request too large | Reduce explicitly selected input; preserve meaningful content and filters. |
No matching tools or guidance. Try a tool name or another keyword.