Skip to main content
Glama

EmailOctopus MCP by usefulapi

Create contact

emailoctopus_create_contact
Destructive

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.

Input Schema

NameRequiredDescriptionDefault
tagsNoTags to apply to the contact, e.g. ["vip", "beta"].
fieldsNoCustom field values, keyed by the list's field tag (e.g. {"FirstName": "Ada"}).
statusNoSubscription status: subscribed, pending, or unsubscribed.
list_idYesThe list's id to add the contact to.
email_addressYesThe contact's email address.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations carry destructiveHint=true, and the description reinforces this by flagging that it MODIFIES live data and adds a subscriber. It also discloses the return ('Returns the created contact'), which matters because there is no output schema. It stops short of stating idempotency/duplicate handling or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly packed sentences with the mutation warning front-loaded before the parameter summary and the endpoint. Every clause carries information; nothing is padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-parameter mutation tool with full schema coverage and no output schema, the description covers the mutation semantics plus the return value. The remaining gap is duplicate/already-subscribed behavior and any auth or rate-limit constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description restates that email_address is required and names the optional fields (fields, tags, status) with the key-by-field-tag convention, but adds little syntax or format detail beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('CREATES a new contact in a list') and immediately scopes it as a live-data mutation that adds a subscriber. The word 'new' plus the resource 'contact in a list' lets an agent separate it from update_contact and delete_contact without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the verb: use it when you need to add a new contact to a list. There is no explicit when-to-use/when-not guidance, no mention of what happens if the email already exists, and no routing to sibling tools such as update_contact.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.