# Omnisend — how to use (mcp.ai)

Omnisend is a marketing automation platform for ecommerce businesses, focusing on email and SMS marketing.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_omnisend?ms=1781542560000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `omnisend_create_batch`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/omnisend`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/omnisend/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/omnisend/create/batch` — Tool to create a new batch operation for multiple items. use when you need to process many records asynchronously in one call, e.g., bulk contacts, products, orders, or events. use after preparing the
  - body: { items: object[], method: string, eventID?: string, endpoint: string }
- `POST https://api.mcp.ai/api/omnisend/create/or/update/contact` — Tool to create or update a contact in omnisend. use after collecting subscriber details.
  - body: { city?: string, gender?: string, address?: string, country?: string, lastName?: string, birthdate?: string, firstName?: string, postalCode?: string, countryCode?: string, identifiers: object[] }
- `POST https://api.mcp.ai/api/omnisend/delete/product` — Tool to remove a product from omnisend by its id. use when you need to delete a product and ensure it is no longer available in your catalog.
  - body: { product_id: string }
- `POST https://api.mcp.ai/api/omnisend/get/batch/information` — Tool to retrieve information about a specific batch by id. use after submitting a batch when you need a detailed status and counts.
  - body: { batchId: string }
- `POST https://api.mcp.ai/api/omnisend/get/batch/items` — Tool to retrieve processed items of a specific batch by id. use when you need to inspect individual results of a batch operation after fetching batch details.
  - body: { batchId: string }
- `POST https://api.mcp.ai/api/omnisend/get/batches` — Tool to retrieve a list of batch operations. use after initiating a batch job to monitor its progress and results.
  - body: { endpoint: string }
- `POST https://api.mcp.ai/api/omnisend/get/contact` — Tool to retrieve details of a single contact by id. use when you already have a contactid and need the full profile.
  - body: { contactId: string }
- `POST https://api.mcp.ai/api/omnisend/list/contacts` — Tool to retrieve a paginated list of contacts with optional filtering. use when you need to fetch contacts in batches and handle cursor pagination.
  - body: { tag?: string, after?: string, email?: string, limit?: integer, phone?: string, before?: string, status?: string, segmentID?: integer }
- `POST https://api.mcp.ai/api/omnisend/list/products` — Tool to retrieve a paginated list of products. use when syncing product catalog before campaign creation.
  - body: { sort?: string, limit?: integer, offset?: integer }
- `POST https://api.mcp.ai/api/omnisend/update/contact` — Tool to update fields of an existing contact by id. use after retrieving contact id. patch https://api.omnisend.com/v3/contacts/{contactid} example: updatecontact(contactid="..., body={firstname: 'joh
  - body: { body: object, contactId: string }

## More
- Page: https://mcp.ai/omnisend
- Agent spec (llms.txt): https://mcp.ai/omnisend/llms.txt
- Postman collection: https://mcp.ai/omnisend/postman.json
