EmailOctopus MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| EMAILOCTOPUS_API_KEY | Yes | Your EmailOctopus API key |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_listsB | List all mailing lists with their contact counts. |
| get_listB | Get one list, including its custom fields and tags. |
| create_listC | Create a new mailing list. |
| list_contactsA | List contacts in a list, filtered by tag, status, and created/updated date ranges (ISO 8601). Paginated, up to 100 per page. |
| get_contactB | Look up a contact in a list by ID or email address. |
| upsert_contactB | Create a contact, or update it if the email already exists in the list. Set custom fields by their tag (e.g. FirstName), add/remove tags, and set status. |
| update_contactB | Update an existing contact's email, fields, tags or status (for example, unsubscribe someone). |
| delete_contactA | Permanently delete a contact from a list. Prefer update_contact with status=unsubscribed. Confirm with the user first. |
| list_campaignsA | List email campaigns (newest first) with status and send dates. |
| get_campaignB | Get a campaign's subject, sender, content and target lists. |
| campaign_reportA | Get a campaign's results: the summary (sent, opens, clicks, bounces, unsubscribes, complaints) plus per-link click counts. Good for 'how did last week's newsletter do?'. |
| campaign_recipientsB | List contacts who opened, clicked, bounced, unsubscribed, complained, or did NOT open/click a campaign. |
| trigger_automationA | Queue a contact into an automation that uses the 'Started via API' trigger. This sends real emails, so confirm with the user. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Most tools have clearly distinct resource/action targets, and descriptions help separate similar tools. However, upsert_contact and update_contact overlap because both can modify an existing contact, though upsert_contact's create-if-missing behavior differentiates them. Campaign reporting tools are well separated.
The set is mostly consistent with snake_case verb_noun names such as get_contact, update_contact, and list_campaigns. A few tools like campaign_report and campaign_recipients deviate from the verb_noun pattern, but the naming is still predictable and readable overall.
With 13 tools, the server is well-scoped for contact, list, campaign, and automation interactions. Each tool covers a meaningful operation without excessive duplication or padding.
Contact lifecycle coverage is strong, including list, get, upsert, update, and delete, and list basics are present. However, campaign tools only read and report on campaigns—there is no create/send/update campaign operation—and list update/delete tools are missing, which are notable gaps for an EmailOctopus management server.