Omnisend MCP Server v2

Connect Omnisend to MCP clients using the v2 MCP server at mcp.omnisend.com/v2/mcp — with action-specific tools and embedded reference documentation.

Omnisend MCP Server v2

MCP (Model Context Protocol) is an open protocol that helps AI models securely interface with different data sources and tools. You connect Omnisend's MCP server to an MCP client — such as Claude, ChatGPT, or Cursor — to get assistance with your Omnisend data. Your MCP client can help with a variety of tasks from campaign analytics to contact management and reporting. Here are some examples of prompts you can give:

  • "Give me the performance of my email campaigns for last month. Show revenue, orders, conversion rate, click rate, open rate, and unsubscribes. Exclude SMS and push."
  • "Show me the top-performing flows in the last 30 days with revenue, conversion, and message-level performance."
  • "30-day subscriber trend: daily new subscriptions vs unsubscribes broken down by each channel."

Note: This page documents the v2 MCP server. If you are already connected to https://mcp.omnisend.com/mcp, see Omnisend MCP Server for the original version.

Before you connect

Important: You must have the "Owner", "Admin", "Manager", or "Partner" role in Omnisend to connect your account to the Omnisend MCP server.

You will also need an MCP-compatible client such as Claude, ChatGPT, or Cursor.

Setup

The Omnisend MCP server v2 URL is:

https://mcp.omnisend.com/v2/mcp

Claude

  1. Click Customize on the left menu panel, then go to Connectors.
  2. Click + and then Add custom connector.
  3. Enter Omnisend as the name and https://mcp.omnisend.com/v2/mcp as the URL, then click Add.
  4. Select the Omnisend connector and click Connect. You will be redirected to the OAuth flow — log in to your Omnisend account and approve the permissions.
  5. Start a conversation and ask something that requires Omnisend context to verify the connection works.

ChatGPT

Note: Developer Mode is available for ChatGPT Pro, Team, Enterprise, and Edu users.

  1. Go to Settings > Apps > Advanced settings and toggle Developer mode on.
  2. Go back to Apps and click Create app.
  3. Enter Omnisend as the name, https://mcp.omnisend.com/v2/mcp as the MCP server URL, set authentication to OAuth, and click Create.
  4. You will be redirected to the OAuth flow — log in to your Omnisend account and approve the permissions.
  5. You can now start chatting and ask questions that require Omnisend context.

Cursor

  1. Open Cursor Settings > MCP > New MCP Server (or the equivalent MCP configuration for your Cursor version).
  2. Add a server entry using this URL:
{
  "mcpServers": {
    "omnisend": {
      "url": "https://mcp.omnisend.com/v2/mcp"
    }
  }
}
  1. Save, then complete the OAuth flow when prompted — log in to your Omnisend account and approve the permissions.
  2. Start a chat and verify tools appear by asking a simple question that requires Omnisend context.

Multiple Omnisend accounts

Define separate server entries with distinct names (for example omnisend-brand-a and omnisend-brand-b) and different credentials. Enable only the server that matches the account you intend to use in each conversation.

{
  "mcpServers": {
    "omnisend-mcp-brand-a": {
      "url": "https://mcp.omnisend.com/v2/mcp?brand=a"
    },
    "omnisend-mcp-brand-b": {
      "url": "https://mcp.omnisend.com/v2/mcp?brand=b"
    },
    "omnisend-mcp-brand-c": {
      "url": "https://mcp.omnisend.com/v2/mcp?brand=c"
    },
    "omnisend-mcp-brand-d": {
      "url": "https://mcp.omnisend.com/v2/mcp?brand=d"
    }
  }
}

How the Omnisend MCP server v2 works

Omnisend's API surface is large — covering campaigns, contacts, segments, templates, products, analytics, forms, and more. Exposing every API operation as a separate MCP tool would overwhelm the MCP client's context window and degrade performance.

To solve this, Omnisend follows a compact tool design: a small number of generic tools that give the AI agent access to the entire API. When you connect to the Omnisend MCP server v2, your MCP client will see 7 tools:

ToolPurpose
omnisend_searchLists all available Omnisend API operations with short descriptions. The AI agent calls this first to discover what it can do. Optional action filter: query, create, update, or delete.
omnisend_tool_schemaRetrieves the full JSON Schema (input parameters, required fields, enums) and curated markdown for a specific API operation, so the AI agent knows exactly what to pass before calling it.
omnisend_referenceRetrieves embedded Omnisend reference documentation by topic — including payload examples, event property paths, and behavioral hints beyond what the raw schema provides. Call without topic_id to list topics; call with topic_id to load a topic.
omnisend_queryRuns read operations (action=query) — GET requests and read-shaped analytics POSTs such as reports and statistics.
omnisend_createCreates new resources (action=create) — campaigns, contacts, segments, products, images, email templates, batches, and more.
omnisend_updateUpdates existing resources or performs state transitions (action=update) — PATCH, PUT, and verb-style POSTs such as send, cancel, and tag operations.
omnisend_deleteDeletes resources (action=delete).

The typical workflow is: the AI agent calls omnisend_search to discover available operations, uses omnisend_tool_schema and omnisend_reference to understand how to call a specific one, then calls the matching action tool (omnisend_query, omnisend_create, omnisend_update, or omnisend_delete) to perform it. This keeps the context window footprint small and fixed — no matter how many API endpoints Omnisend adds in the future.

Splitting execution by action type helps MCP clients route calls safely: read operations never go through create, update, or delete tools.

Embedded reference topics

The omnisend_reference tool exposes curated documentation for these topics:

Topic IDTitle
analyticsAnalytics reports and statistics
batchesBatches API
brandsBrands API
campaignsCampaigns API
contactsContacts API
email_contentEmail content API
email_templatesEmail templates and universal layouts
eventsEvents API reference
imagesImages API
product_categoriesProduct categories API
productsProducts API
segmentsSegments API and event properties

Available API operations

Through the 7 tools above, the MCP server v2 exposes the following Omnisend API operations:

CategoryOperationDescriptionMethodPath
Analyticspost_analytics_reportsGenerate campaign analytics report grouped by send datePOST/api/analytics/reports
Analyticspost_analytics_statisticsGenerate campaign analytics report grouped by event datePOST/api/analytics/statistics
Automationsget_automationsList automationsGET/v5/automations
Batchesget_batch_idGet batch informationGET/api/batches/{batchID}
Batchesget_batchesGet batchesGET/api/batches
Batchesget_batches_batch_id_itemsGet batch itemsGET/api/batches/{batchID}/items
Batchespost_batchesCreate batchPOST/api/batches
Brandsget_brands_currentGet information about brandGET/api/brands/current
Brandspost_brands_currentConnect brandPOST/api/brands/current
Campaignsdelete_campaigns_idDelete campaignDELETE/api/campaigns/{id}
Campaignsget_campaignsList campaignsGET/api/campaigns
Campaignsget_campaigns_idGet campaignGET/api/campaigns/{id}
Campaignspatch_campaigns_idUpdate campaignPATCH/api/campaigns/{id}
Campaignspost_campaignsCreate campaignPOST/api/campaigns
Campaignspost_campaigns_id_cancelCancel campaignPOST/api/campaigns/{id}/cancel
Campaignspost_campaigns_id_copyCopy campaignPOST/api/campaigns/{id}/copy
Campaignspost_campaigns_id_sendSend campaignPOST/api/campaigns/{id}/send
Contactsdelete_contacts_tagsBatch remove tagsDELETE/api/contacts/tags
Contactsget_contactsList contactsGET/api/contacts
Contactsget_contacts_idGet contactGET/api/contacts/{id}
Contactspatch_contactsUpdate contact by emailPATCH/api/contacts
Contactspatch_contacts_idUpdate contact by IDPATCH/api/contacts/{id}
Contactspost_contactsCreate or update existing contactPOST/api/contacts
Contactspost_contacts_tagsBatch add tagsPOST/api/contacts/tags
Email Contentget_email_content_idGet email contentGET/api/email-content/{id}
Email Contentput_email_content_idUpdate email contentPUT/api/email-content/{id}
Email Contentpost_email_content_id_renderRender email contentPOST/api/email-content/{id}/render
Email Templatesdelete_email_templates_idDelete email templateDELETE/api/email-templates/{id}
Email Templatesget_email_templatesGet email templatesGET/api/email-templates
Email Templatesget_email_templates_idGet email templateGET/api/email-templates/{id}
Email Templatespost_email_templatesCreate email templatePOST/api/email-templates
Email Templatespost_email_templates_id_renderRender email templatePOST/api/email-templates/{id}/render
Email Templatespost_email_templates_importImport email template from HTMLPOST/api/email-templates/import
Email Templatesput_email_templates_idUpdate email templatePUT/api/email-templates/{id}
Email Universal Layoutsdelete_email_universal_layouts_idDelete universal layoutDELETE/api/email-universal-layouts/{id}
Email Universal Layoutsget_email_universal_layoutsGet universal layoutsGET/api/email-universal-layouts
Email Universal Layoutsget_email_universal_layouts_idGet universal layoutGET/api/email-universal-layouts/{id}
Email Universal Layoutspost_email_universal_layoutsCreate universal layoutPOST/api/email-universal-layouts
Email Universal Layoutsput_email_universal_layouts_idUpdate universal layoutPUT/api/email-universal-layouts/{id}
Eventspost_event_metadata_queryQuery events metadataPOST/api/event-metadata
Formsget_formsList formsGET/api/forms
Formsget_forms_form_id_ab_setup_reportsList completed AB setup reports for a formGET/api/forms/{formID}/ab-setup/reports
Formsget_forms_form_id_contactsGet form submitted contactsGET/api/forms/{formID}/contacts
Formsget_forms_form_id_reportGet form reportGET/api/forms/{formID}/report
Formsget_forms_form_id_report_periodicGet form periodic reportGET/api/forms/{formID}/report/periodic
Imagesdelete_images_idDelete imageDELETE/api/images/{id}
Imagesget_imagesList imagesGET/api/images
Imagesget_images_idGet imageGET/api/images/{id}
Imagespost_imagesUpload image by URLPOST/api/images
Imagespost_images_uploadUpload image filePOST/api/images/upload
Product Categoriesdelete_category_idDelete product categoryDELETE/api/product-categories/{categoryID}
Product Categoriesget_category_idGet product categoryGET/api/product-categories/{categoryID}
Product Categoriesget_product_categoriesList product categoriesGET/api/product-categories
Product Categoriespatch_category_idUpdate product categoryPATCH/api/product-categories/{categoryID}
Product Categoriespost_product_categoriesCreate product categoryPOST/api/product-categories
Productsdelete_product_idDelete productDELETE/api/products/{productID}
Productsget_product_idGet productGET/api/products/{productID}
Productsget_productsList productsGET/api/products
Productspost_productsCreate productPOST/api/products
Productsput_product_idReplace productPUT/api/products/{productID}
Segmentsdelete_segment_idDelete segmentDELETE/api/segments/{segmentID}
Segmentsget_segment_idGet segmentGET/api/segments/{segmentID}
Segmentsget_segmentsList segmentsGET/api/segments
Segmentsget_segments_segment_id_statisticsGet segment statisticsGET/api/segments/{segmentID}/statistics
Segmentspost_segmentsCreate segmentPOST/api/segments
Segmentsput_segment_idUpdate segmentPUT/api/segments/{segmentID}
Referenceget_reference_topicsList reference documentation topicsGET/_reference/topics
Referenceget_reference_documentationGet reference documentation by topicGET/_reference/documentation

Troubleshooting

  • Cannot connect — Confirm the URL is exactly https://mcp.omnisend.com/v2/mcp (no trailing slash unless your MCP client documentation says otherwise). Verify network and firewall rules.
  • Authentication fails — Make sure your Omnisend account has the "Owner", "Admin", "Manager", or "Partner" role and that the OAuth flow completes successfully.
  • Tools missing — Restart your MCP client and check that the correct server entry is enabled for the chat or workspace. Your MCP client should show 7 tools (omnisend_search, omnisend_tool_schema, omnisend_reference, omnisend_query, omnisend_create, omnisend_update, omnisend_delete).
  • Operation errors — If an API call returns an error, the AI agent will typically explain the issue. Common causes include insufficient permissions, invalid parameters, or rate limiting. Most endpoints allow 400 requests per minute; analytics endpoints are stricter and may return 429.

For product issues, contact Omnisend support.