Skip to main content
Glama

Import Email Campaign Recipients

import_email_campaign_recipients
Destructive

[write] Adds recipients to a DRAFT campaign (email_campaign_id or email_campaign_uuid), from ONE of: items (at most 10000: each an address or {"email": "ali@x.com", "vars": {"name": "Ali"}}), a saved list (email_list_id or email_list_uuid; all its members), or source="customers" (the customers that have an e-mail). Duplicates, invalid addresses and people on the unsubscribe list are counted, not added.

Input Schema

NameRequiredDescriptionDefault
itemsNo
sourceNo
email_list_idNo
email_list_uuidNo
email_campaign_idNo
email_campaign_uuidNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already flag the write/destructive/non-idempotent profile, and the description adds genuinely new behavior: DRAFT-only targeting, a 10000-item cap, and that duplicates, invalid addresses and unsubscribed people are counted rather than added. It does not say whether the operation appends to or replaces existing recipients, which is the remaining gap for a destructive-flagged mutation.

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

Conciseness4/5

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

Front-loaded with a `[write]` marker and the core action, then the source alternatives in dependency order. The nested parentheses get dense, but every clause carries substantive constraint information.

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 6-param mutation with no output schema, the description covers input modes, limits, draft precondition and de-duplication semantics. The absence of return-value guidance (how the counts are surfaced) and append-vs-replace behavior keeps it from being fully complete.

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

Parameters4/5

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

With 0% schema description coverage, the description carries the burden and largely does: it defines the `items` entry shape (bare address or {email, vars}), the 10000 limit, the meaning of the list id/uuid pair, and `source="customers"`. It does not enumerate other valid `source` values or clarify id-vs-uuid precedence, so full compensation is not achieved.

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 (adds recipients to a campaign) and narrows scope to DRAFT campaigns via id or uuid. It is clearly distinguished from siblings like list_email_campaign_recipients and add_email_list_members, which neither import into a campaign nor accept three alternative sources.

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

Usage Guidelines4/5

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

The 'from ONE of' phrasing makes the three mutually exclusive input modes explicit, and the DRAFT-only constraint tells the agent when the call is valid. It stops short of naming an alternative tool or describing what to do when the campaign is not a draft, so it is strong but not a full when/when-not treatment.

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.

Resources