Email Marketing System MCP Tools
This page lists planned MCP tools for the Email Marketing System, covering sending configuration, SPF/DKIM/DMARC, customer lists, segmentation, consent and unsubscribe handling, bounce cleanup, templates, AI copy, campaign drafts, A/B testing, dynamic product recommendations, automation workflows, scheduled sending, deliverability, clicks, revenue attribution, and performance analysis.
email_marketing.config.get
readRead Email Marketing System settings, including sender identity, tracking, unsubscribe, language, scheduling, approval, quota, and automation policies.
Read-only tool; no approval request is created.
Use returned settings as source of truth; do not infer sender domains, quotas, tracking, or unsubscribe rules.
email_marketing.sending_domains.list
readList verified sending domains, sender addresses, SPF, DKIM, DMARC, reputation, and availability state.
email_marketing.config.get
Read-only tool; no approval request is created.
Unverified sender identities or domains with reputation issues must not be used for production sends.
email_marketing.approval_policies.list
readList approval triggers for campaign creation, contact import, bounce cleanup, scheduling, A/B tests, official sends, and bulk notifications.
email_marketing.config.get
Read-only tool; no approval request is created.
Writes that trigger policy must remain draft or create an action request; do not bypass human confirmation.
email_marketing.owners.list
readList marketing, CRM, compliance, design, copywriting, and approval owners with permissions.
email_marketing.config.get
Read-only tool; no approval request is created.
Do not assign approvals, sends, or notifications to disabled or unauthorized accounts.
email_marketing.quotas.get
readRead monthly send quota, remaining volume, rate limits, batch limits, and estimated send cost.
email_marketing.config.get
Read-only tool; no approval request is created.
Check quota before scheduling or sending; do not create batches that exceed quota or rate limits.
email_marketing.audiences.list
readList audiences, sources, subscription state, sendable counts, engagement distribution, purchase tiers, and sync sources.
email_marketing.config.get
Read-only tool; no approval request is created.
Return only audiences the user may access; do not expose contacts without consent or restricted data.
email_marketing.segments.preview
previewPreview segment size, duplicates, unsubscribed contacts, bounces, purchase behavior, engagement, and estimated sendable volume.
email_marketing.audiences.list, email_marketing.suppression_entries.list
Preview tool; does not write data.
Preview must show exclusion reasons and samples; do not include unsubscribed, non-consented, or hard-bounced contacts.
email_marketing.segments.create
writeCreate a reusable segment from previewed conditions such as purchase history, spend tier, engagement, abandoned cart, or repurchase cycle.
email_marketing.segments.preview
Write tool; approval is recommended for large or sensitive segments.
Use segment_preview_id; do not expand recipients beyond previewed criteria.
email_marketing.contacts.search
readSearch contacts by email, list, tag, purchase history, engagement state, bounce state, or subscription state.
email_marketing.audiences.list
Read-only tool; no approval request is created.
Minimize personal data in search results; return only fields needed for the task.
email_marketing.contacts.get
readRead one contact's consent, tags, purchase history, opens, clicks, bounces, unsubscribes, and version data.
email_marketing.contacts.search or known contact_id
Read-only tool; no approval request is created.
Subsequent updates must use returned contact_id and base_version_token to avoid overwriting newer consent state.
email_marketing.contacts.upsert
writeCreate or update contact profile, lists, tags, language, source, consent evidence, and CRM sync keys.
email_marketing.contacts.get or email_marketing.contacts.search
Write tool; approval is recommended for bulk imports, consent changes, or CRM overwrites.
Do not add sendable contacts without source or consent evidence; preserve data source.
email_marketing.contacts.unsubscribe
writeMark a contact as unsubscribed and record source, time, reason, language, and sync state.
email_marketing.contacts.get
Compliance write; user unsubscribe should normally execute directly without delayed approval.
Do not resubscribe or remove unsubscribe history; unsubscribe must immediately affect suppression.
email_marketing.suppression_entries.list
readList unsubscribed, hard-bounced, complaint, blocked, invalid-email, and suppressed contacts.
email_marketing.config.get
Read-only tool; no approval request is created.
Suppression is a hard pre-send constraint; it must not be overridden by segments or campaign settings.
email_marketing.bounces.clean_preview
previewPreview how cleaning invalid, hard-bounced, duplicate, or risky emails affects lists, segments, counts, and send quota.
email_marketing.suppression_entries.list, email_marketing.contacts.search
Preview tool; does not write data.
Preview must distinguish hard bounce, soft bounce, invalid format, and duplicates; do not directly delete contacts.
email_marketing.bounces.clean_commit
writeMark invalid, hard-bounced, duplicate, or unsendable contacts from preview results and keep cleanup history.
email_marketing.bounces.clean_preview
Write tool; approval is recommended for large cleanup or CRM sync changes.
Use cleanup_preview_id; do not remove unsubscribe evidence or permanently delete audit data.
email_marketing.templates.list
readList branded email templates, layouts, languages, dynamic fields, use cases, and approval state.
email_marketing.config.get
Read-only tool; no approval request is created.
Subsequent campaigns should use approved templates or templates matching the draft purpose.
email_marketing.templates.save
writeSave reusable branded email templates with responsive layout, dynamic fields, language variants, and unsubscribe blocks.
email_marketing.templates.list, email_marketing.approval_policies.list
Write tool; approval is recommended for official brand templates or compliance block changes.
Do not remove unsubscribe links, company details, or required compliance text; preserve versions.
email_marketing.copy.generate_draft
writeGenerate subject lines, preview text, and email body drafts from offer, audience, tone, language, product data, and CTA.
email_marketing.templates.list, email_marketing.segments.preview, email_marketing.sending_domains.list
Draft write; exaggerated offers, sensitive categories, or public sends follow approval policy.
Do not generate misleading discounts, false scarcity, unsupported claims, or content missing unsubscribe handling.
email_marketing.campaigns.list
readList email campaign drafts, segments, languages, schedules, review, send, and report states.
email_marketing.config.get
Read-only tool; no approval request is created.
Show only campaigns the user may access; unpublished campaigns must not leak.
email_marketing.campaigns.get
readRead one campaign's subject, content, segment, template, dynamic products, tracking, schedule, review, and version data.
email_marketing.campaigns.list or known campaign_id
Read-only tool; no approval request is created.
Subsequent updates, scheduling, or sends must use returned campaign_id and base_version_token.
email_marketing.campaigns.create_draft
writeCreate an email campaign draft with segment, subject, content, template, language variants, tracking, and send goals.
email_marketing.segments.preview, email_marketing.templates.list, email_marketing.sending_domains.list
Write tool; draft creation is usually direct, official send follows policy.
Do not create campaigns without unsubscribe, valid sender identity, consented segment, or stated tracking purpose.
email_marketing.campaigns.update
writeUpdate campaign subject, content, segment, template, language variants, tracking, A/B settings, or schedule draft.
email_marketing.campaigns.get, email_marketing.approval_policies.list
Write tool; approval is recommended for approved, scheduled, or high-risk content changes.
Only update specified fields; do not overwrite review notes, unsubscribe settings, or version data.
email_marketing.ab_tests.preview
previewPreview A/B variants, sample allocation, winner criteria, send timing, risks, and remaining quota.
email_marketing.campaigns.get, email_marketing.quotas.get
Preview tool; does not write data.
Preview must avoid tiny samples, duplicate recipients, invalid winner criteria, or quota overrun.
email_marketing.ab_tests.configure
writeConfigure an A/B test from preview results, including subject, content, sample ratio, winning metric, and auto-winner timing.
email_marketing.ab_tests.preview
Write tool; approval is recommended for large lists, official sends, or auto-winner setup.
Use ab_test_preview_id; do not change winner rules without version history.
email_marketing.product_recommendations.preview
previewPreview cross-sell or dynamic product blocks by purchase history, browsing, inventory, price, and language.
email_marketing.campaigns.get, email_marketing.segments.preview
Preview tool; does not write data.
Do not recommend out-of-stock, incorrectly priced, unauthorized, or irrelevant products.
email_marketing.product_recommendations.apply
writeApply previewed dynamic product, cross-sell, or repurchase recommendations to an email campaign.
email_marketing.product_recommendations.preview
Write tool; approval is recommended when price, promotion, or inventory risk exists.
Use recommendation_preview_id; do not apply expired price or inventory data.
email_marketing.automations.list
readList welcome, birthday, abandoned cart, browse follow-up, repurchase, and re-engagement automations with triggers.
email_marketing.config.get
Read-only tool; no approval request is created.
Automation state must show trigger event, frequency cap, unsubscribe handling, and last updated time.
email_marketing.automations.update_state
writeEnable, pause, or update an automation's triggers, content version, frequency cap, and recipient exclusions.
email_marketing.automations.list, email_marketing.approval_policies.list
Write tool; approval is recommended for large-volume or revenue-related automations.
Do not enable automations missing unsubscribe handling, frequency caps, or valid segments.
email_marketing.campaigns.schedule
writeSchedule a prepared campaign with send time, timezone, batching pace, A/B test window, and notifications.
email_marketing.campaigns.get, email_marketing.quotas.get, email_marketing.sending_domains.list
Write tool; official scheduling follows approval policy or explicit confirmation.
Do not schedule unreviewed campaigns, invalid segments, over-quota sends, missing unsubscribe, or unverified sending domains.
email_marketing.campaigns.cancel_schedule
writeCancel an unsent scheduled campaign and record reason, owner, and notification state.
email_marketing.campaigns.get
Write tool; near-send or large campaign cancellation may require approval.
Do not cancel batches that already started; use follow-up notices or stop remaining batches.
email_marketing.campaigns.send_approved
writeSend an approved campaign while applying suppression, quota, sender identity, tracking, A/B, and frequency caps.
email_marketing.campaigns.get, email_marketing.suppression_entries.list, email_marketing.quotas.get
High-risk outbound write; approval or explicit confirmation is required.
Do not send unapproved, no-unsubscribe, non-consented, over-quota, unverified-sender, or misleading campaigns.
email_marketing.delivery_batches.list
readList delivery batches, delivered, delayed, bounced, complaints, provider state, and error summary.
email_marketing.campaigns.get
Read-only tool; no approval request is created.
Provider state should include updated time; do not treat pending as delivered.
email_marketing.delivery_batches.resend_failed
writeResend eligible failed or delayed messages while excluding hard bounces, unsubscribes, complaints, and delivered recipients.
email_marketing.delivery_batches.list, email_marketing.suppression_entries.list
Write tool; approval is recommended for large resend batches or promotional resends.
Do not resend to unsubscribed, complained, hard-bounced, or already delivered recipients; preserve provider response.
email_marketing.campaign_reports.get
readRead opens, clicks, unsubscribes, bounces, complaints, conversions, revenue, A/B winner, and time trends for a campaign.
email_marketing.campaigns.get
Read-only tool; no approval request is created.
Reports must state date range, attribution window, tracking limits, and data latency.
email_marketing.link_clicks.list
readList clicks, unique clicks, UTM, recipient segment, time, and follow-up behavior summary for each tracked link.
email_marketing.campaign_reports.get
Read-only tool; no approval request is created.
If returning person-level clicks, minimize by permission and avoid unnecessary personal data.
email_marketing.revenue_attribution.get
readRead campaign-attributed orders, revenue, average order value, conversion paths, product performance, and attribution rules.
email_marketing.campaign_reports.get
Read-only tool; no approval request is created.
Revenue attribution must state attribution window, channel conflicts, and refund deduction rules.
email_marketing.audience_summary.get
readRead audience growth, sendable count, engagement distribution, unsubscribe trend, bounce rate, and high-value segment summary.
email_marketing.audiences.list
Read-only tool; no approval request is created.
Summary must state statistic date, sync source, and suppression exclusion logic.
email_marketing.performance_snapshot.record
writeRecord opens, clicks, revenue, unsubscribes, A/B results, or channel comparison snapshots from manual or external sources.
email_marketing.campaign_reports.get, email_marketing.revenue_attribution.get
Write tool; usually direct, approval required when overwriting existing results.
Preserve source, date range, attribution settings, and evidence; do not fabricate performance.
email_marketing.review_notification.send
writeNotify owners about campaign review, send confirmation, bounce anomalies, low performance, A/B winner, or attribution issues.
email_marketing.owners.list and email_marketing.campaigns.get or email_marketing.campaign_reports.get
Notification write; usually direct, external or bulk notifications follow policy.
Do not notify unrelated users or include full customer lists; include only necessary summary.
email_marketing.action_request.status
statusCheck state for email marketing writes, cleanup, scheduling, sending, resending, notifications, or approval operations.
Status lookup tool; does not create a new approval request.
Status reflects governance progress only; do not retry non-idempotent outbound actions unless using the same idempotency_key or a clearly new request.