# emailoctopus MCP server

Manage lists, contacts and campaigns, and read campaign performance reports on EmailOctopus.

## Links
- Registry page: https://www.getdrio.com/mcp/io-usefulapi-emailoctopus
- Repository: https://github.com/m190/usefulapi-mcp

## Install
- Endpoint: https://emailoctopus.usefulapi.io/mcp
- Auth: Not captured

## Setup notes
- Remote endpoint: https://emailoctopus.usefulapi.io/mcp

## Tools
- emailoctopus_list_lists (List lists) - List all lists in the account. Returns {data:[...],paging:{...}} — each list's id, name, contact counts by status, and created_at. Paginate with `limit` (max 100) and `starting_after` (cursor from the previous page). EmailOctopus: GET /lists. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_get_list (Get list) - Get a single list by its id. Returns the list's full state — name, contact counts by status, and created_at. EmailOctopus: GET /lists/{list_id}. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_list_contacts (List contacts) - List the contacts in a list. Returns {data:[...],paging:{...}} — each contact's id, email_address, fields, tags, status, and created_at. Paginate with `limit` (max 100) and `starting_after`. EmailOctopus: GET /lists/{list_id}/contacts. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_get_contact (Get contact) - Get a single contact in a list. Returns email_address, fields, tags, status, and created_at. `contact_id` is the MD5 hash of the lowercased email address, or the `id` returned by emailoctopus_list_contacts. EmailOctopus: GET /lists/{list_id}/contacts/{contact_id}. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_list_campaigns (List campaigns) - List all campaigns in the account. Returns {data:[...],paging:{...}} — each campaign's id, name, status, subject, and created_at. Paginate with `limit` (max 100) and `starting_after`. EmailOctopus: GET /campaigns. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_get_campaign (Get campaign) - Get a single campaign by its id. Returns the campaign's full state — name, status, subject, from, content, and created_at. EmailOctopus: GET /campaigns/{campaign_id}. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_get_campaign_report (Get campaign report) - Get a campaign's aggregate performance report — sent, opened, clicked, bounced, unsubscribed, complained, and related counts. EmailOctopus: GET /campaigns/{campaign_id}/reports/summary. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_get_campaign_links_report (Get campaign links report) - Get a campaign's per-link click report — for each link in the campaign, the URL and its click counts. EmailOctopus: GET /campaigns/{campaign_id}/reports/links. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_create_list (Create list) - CREATES a new list — this MODIFIES live data. Provide a `name`. EmailOctopus: POST /lists. Returns the created list. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_update_list (Update list) - UPDATES an existing list by id — this MODIFIES live data. Sets the list's `name`. EmailOctopus: PUT /lists/{list_id}. Returns the updated list. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_create_contact (Create contact) - CREATES a new contact in a list — this MODIFIES live data (adds a subscriber). `email_address` is required; optionally set `fields` (keyed by field tag), `tags`, and `status`. EmailOctopus: POST /lists/{list_id}/contacts. Returns the created contact. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_update_contact (Update contact) - UPDATES an existing contact in a list — this MODIFIES live data. Send only the fields you want to change (email_address, fields, tags, status). `contact_id` is the MD5 hash of the lowercased email address, or the id from list_contacts. EmailOctopus: PUT /lists/{list_id}/contacts/{contact_id}. Returns the updated contact. Endpoint: https://emailoctopus.usefulapi.io/mcp
- emailoctopus_delete_contact (Delete contact) - PERMANENTLY REMOVES a contact from a list — this MODIFIES live data and cannot be undone. `contact_id` is the MD5 hash of the lowercased email address, or the id from list_contacts. EmailOctopus: DELETE /lists/{list_id}/contacts/{contact_id}. Endpoint: https://emailoctopus.usefulapi.io/mcp

## Resources
Not captured

## Prompts
Not captured

## Metadata
- Owner: io.usefulapi
- Version: 1.0.0
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 19, 2026
- Source: https://registry.modelcontextprotocol.io
