Skip to main content
Glama

Mailcheer

Server Details

Manage a Mailcheer email workspace: subscribers, segments, campaigns, transactional sends and stats.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A4/5.0

Scored across 13 tools

Disambiguation5/5

Every tool targets a distinct action-resource pair: subscriber management, suppression list, campaign lifecycle, transactional emails, and account info. No two tools overlap in purpose, and even send_campaign vs send_email are clearly separated by bulk vs single.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern in snake_case (add_subscriber, create_campaign, get_account, send_email). No mixed conventions or vague verbs—each name clearly indicates what it does.

Tool Count5/5

13 tools is well-scoped for an email platform, covering subscriber management, suppression, campaigns, transactional email, and account info without bloat. Each tool serves a distinct need and the count feels proportionate to the domain.

Completeness4/5

Core lifecycle is covered: subscribers (add/list/remove), suppression (add/list), campaigns (create/preview/send/list/stats), and emails (send/status). Minor gaps include no campaign editing or deletion, and no dedicated tool to view a single subscriber, but these are not critical for typical workflows.

Available Tools

13 tools
add_subscriberAdd a subscriberB
Read-onlyIdempotent
Inspect

Adds or updates a subscriber. By default the person enters as PENDING and receives a confirmation email: that is double opt-in, and it protects the workspace's sending reputation. double_opt_in: false subscribes directly and must only be used when consent was already collected elsewhere — never on your own initiative. A suppressed or unsubscribed address is refused.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
emailYes
lastNameNo
firstNameNo
double_opt_inNofalse = direct subscription without confirmation. Only request this on explicit instruction from the person.

TDQS

B3.2/5.0
Behavior1/5

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

The annotations declare readOnlyHint=true, yet the description says the tool 'Adds or updates a subscriber' and creates a PENDING state — a write operation. This is a direct contradiction, so the description fails to provide trustworthy behavioral transparency. The extra details about confirmation email and suppression refusal are useful but cannot compensate for the annotation conflict.

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?

Three sentence-level ideas with no filler; the core action leads, then the policy-critical default and exception follow. Every sentence earns its place.

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

Completeness3/5

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

For a straightforward add/update tool, it covers the default status, consent policy, and refusal case well. It omits update semantics (what fields change on an existing subscriber, whether confirmation re-triggers) and any return/error details, and the annotation contradiction makes the context less reliable. Thus it is adequate but not 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 only 20% schema description coverage, the description adds crucial semantics for `double_opt_in`: the PENDING default, confirmation email, and the requirement of prior consent before disabling it. It also warns that suppressed/unsubscribed emails are refused, which informs the `email` parameter. The remaining subscriber fields (tags, firstName, lastName) are left to their self-explanatory names, so compensation is solid but not exhaustive.

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

Purpose4/5

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

The description opens with a specific verb and resource: 'Adds or updates a subscriber,' so an agent can tell it operates on subscriber records. It does not explicitly compare itself with siblings like add_suppression or list_subscribers, but the resource and title are unambiguous.

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?

The double opt-in default and the explicit condition for `double_opt_in: false` give clear when-to-use guidance for the main behavior. It does not, however, discuss when to choose this tool over sibling tools such as add_suppression or remove_subscriber, leaving tool-selection guidance implied rather than explicit.

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

add_suppressionSuppress an addressA
Destructive
Inspect

Adds an address to the workspace's suppression list: it will receive nothing further, neither campaigns nor transactional emails. Use when someone requests no further contact outside the unsubscribe link.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYes
reasonNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already mark destructiveHint=true, but the description adds specific behavioral detail: the address 'will receive nothing further, neither campaigns nor transactional emails.' It also implies permanence ('further') and identifies the manual-suppression context. This is meaningful context beyond the annotations, though it doesn't mention reversibility or permissions.

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 sentences, no filler. The core action is front-loaded, the consequence follows, and the use case closes it. Every word earns its place.

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

Completeness2/5

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

For a tool with 2 parameters, no output schema, and 0% schema description coverage, the description needs to explain the parameters for safe invocation. It provides the purpose and use case but omits meaning of 'reason' and any mention of optionality. An agent could guess why to call it but not confidently choose the correct reason enum.

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

Parameters1/5

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

Schema description coverage is 0%, but the description does not explain either parameter. It only says 'an address' (presumably email) and never discusses the 'reason' field, its enum values, or the fact that only email is required. The description fails to compensate for the schema's lack of documentation.

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?

Description states a specific verb+resource ('Adds an address to the workspace's suppression list') and the clear effect (receives nothing further). This is unambiguous and easily distinguished from siblings like add_subscriber or send_campaign, even without naming them.

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?

Provides an explicit use case: 'Use when someone requests no further contact outside the unsubscribe link.' This tells the agent when to apply the tool, but it doesn't mention alternatives or exclusions, so it falls just short of full routing guidance.

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

create_campaignCreate a campaign draftA
Read-onlyIdempotent
Inspect

Creates a DRAFT. Nothing is sent: you then need to call send_campaign, or send it from the Mailcheer workspace. Content is written in plain text in text — a blank line separates paragraphs, "#" at the start of a line makes a heading. Always have the draft reviewed before sending.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoAddress of an already-registered sender. Defaults to the workspace sender.
kindNonewsletter, offer, announcement… newsletter by default.
nameYesInternal name, visible only in the workspace.
textNoPlain-text content.
subjectNoSubject line seen by recipients.
preheaderNoPreview text shown after the subject in the inbox.

TDQS

A3.9/5.0
Behavior1/5

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

The annotations declare readOnlyHint:true, but the description says 'Creates a DRAFT,' which is a write operation that persists a new resource. This directly contradicts the read-only annotation, and the description fails to reconcile or clarify the discrepancy.

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?

Three sentences carry unique, essential information: draft status, text formatting rules, and review advice. The most critical behavioral distinction (draft vs. send) is front-loaded, and no sentence is redundant or filler.

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

Completeness3/5

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

The description covers the core behavior and text formatting, but there is no output schema and the description does not mention return values, error cases, or confirmation behavior. Given the tool creates a resource, this omission is a notable gap, though the main workflow is adequately explained.

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?

The input schema already covers all 6 parameters with 100% coverage, so the baseline is 3. The description adds meaningful semantics for the text parameter (blank line separates paragraphs, '#' starts a heading), which goes beyond the schema's 'Plain-text content.' This extra formatting detail justifies a score above baseline.

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?

The description clearly states the tool 'Creates a DRAFT' and explicitly contrasts it with send_campaign by noting 'Nothing is sent.' It also specifies the plain-text content format, making the tool's purpose unambiguous and distinguishable from siblings.

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

Usage Guidelines5/5

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

The description provides explicit next-step guidance: 'you then need to call send_campaign, or send it from the Mailcheer workspace.' It also advises to 'Always have the draft reviewed before sending,' giving clear when-to-use and post-call instructions.

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

get_accountWorkspace infoA
Read-onlyIdempotent
Inspect

Returns the workspace this key grants access to, its scopes, plan, remaining emails this month, sending domains (verified or not) and registered senders. Call this FIRST: it tells you which address to send from before attempting anything.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds valuable behavioral context: it lists the exact return fields and the recommended call ordering. It does not repeat annotation data, and adds the 'call first' directive which is a useful behavioral trait beyond annotations.

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 sentences with zero redundancy. The return list is front-loaded, and the critical usage instruction ('Call this FIRST') follows immediately. Every word earns its place.

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

Completeness5/5

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

With no output schema, the description enumerates the return fields, providing all necessary information about what the caller will receive. It also gives the usage context (call first) and requires no additional parameters. For a zero-parameter, read-only tool, this is 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?

The tool has zero parameters, so the schema trivially covers 100% of them. The description does not need to add parameter details because there are none. Per the baseline for 0-parameter tools, a score of 4 is appropriate; no additional parameter information is required.

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?

The description states a specific verb ('Returns'), the resource (workspace), and enumerates the contents (scopes, plan, remaining emails, sending domains, senders). It clearly distinguishes itself from sibling tools like get_email or list_campaigns, which operate on different resources.

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

Usage Guidelines5/5

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

Explicitly instructs 'Call this FIRST' and explains why: it tells which address to send from before attempting anything. This gives clear when-to-use guidance and implicitly positions it as a prerequisite for email operations.

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

get_campaign_statsCampaign statisticsB
Read-onlyIdempotent
Inspect

Status and figures for a campaign: recipients, sent, delivered, opened, clicked, bounced, complained. Rates are calculated on delivered messages, not on recipients.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, and non-destructive behavior, so the description is not burdened with safety disclosure. It adds valuable behavioral context by specifying that rates are calculated on delivered messages, not recipients, which is a non-obvious detail.

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?

The description is two dense sentences with no filler. The core purpose is front-loaded, and the important calculation caveat is placed second without obscuring the main function.

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 simple one-parameter read-only tool with rich annotations, the description covers what data is returned and a key calculation nuance. It does not specify the exact response shape, but the metric list already gives a clear picture of the expected output.

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

Parameters2/5

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

Schema description coverage is 0%, and the description never mentions the id parameter or its semantics. The single required id is inferable as a campaign id from the tool name, but the description neither confirms this nor clarifies any constraints or expected format.

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

Purpose4/5

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

The description clearly identifies the resource (a campaign) and the data returned: status and figures for recipients, sent, delivered, opened, clicked, bounced, complained. It is distinguishable from siblings like list_campaigns, though it does not explicitly name or contrast those alternatives.

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

Usage Guidelines2/5

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

There is no guidance on when to choose this tool over list_campaigns, get_account, or get_email. The only usage-related note is the denominator for rate calculation, which is a computation rule rather than a tool-selection criterion.

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

get_emailSent email statusA
Read-onlyIdempotent
Inspect

Status of an email sent via send_email: sent, delivered, bounced, or complained. Amazon's delivery callback arrives a few seconds to a few minutes after sending — a "sent" status right after the call is normal.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, and non-destructive behavior. The description adds valuable behavioral context beyond the annotations by explaining the asynchronous nature of delivery callbacks and warning that 'sent' right after sending is normal. This helps set correct agent expectations without contradicting any annotation.

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?

The description is two sentences of tightly packed, relevant information. It front-loads the core purpose and status values, then adds the timing nuance without any filler or repetition of schema details.

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 single-parameter read-only lookup tool with annotations covering safety, the description covers the essential operational context: what statuses to expect and the asynchronous delay. No output schema exists, but the listed statuses imply the return content well enough. It does not discuss error cases like unknown IDs, but this is a minor gap for such a simple tool.

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 0% and the sole parameter 'id' is only typed as string. The description implicitly ties this id to an email sent via send_email, giving it some meaning, but it does not explicitly state that the id should be the value returned by send_email or how to obtain it. The compensation is minimal but not absent.

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

Purpose4/5

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

The description clearly identifies the tool as retrieving the status of an email sent via send_email and enumerates the possible values (sent, delivered, bounced, complained). It is specific about the resource and verb, though it does not explicitly differentiate itself from sibling tools beyond the send_email relationship.

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 description gives clear context: it is meant to be used after send_email to check delivery status, and it explains that a 'sent' status immediately after the call is expected due to Amazon's callback delay. It does not explicitly name alternatives or exclusions, but the intended usage situation is clear.

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

list_campaignsList campaignsA
Read-onlyIdempotent
Inspect

The workspace's campaigns, from newest to oldest, with their status: draft, scheduled, sending, or sent.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
cursorNo
statusNo

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds useful behavioral context by specifying the sort order (newest to oldest) and that each campaign includes a status field with enumerated values. However, it does not disclose pagination or filtering behavior beyond that. With annotations covering safety, the description contributes enough extra transparency to merit a 4.

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?

The description is a single, front-loaded sentence that conveys the core purpose without extraneous words. It is appropriately sized and efficient, with no filler.

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

Completeness2/5

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

With three optional parameters and zero schema coverage, an agent cannot correctly invoke this tool from the description alone. It does not specify how to set limit, cursor, or status, nor does it describe the response structure (even the output schema is absent). The minimal information provided is insufficient for reliable usage.

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

Parameters1/5

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

Schema description coverage is 0% and the description does not explain any of the three parameters (limit, cursor, status). The mention of status values refers to the output field, not the status filter parameter. An agent receives no guidance on how to use limit, cursor, or valid status values, leaving parameter usage entirely undocumented.

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?

The description clearly states the action (list), the resource (campaigns of the workspace), and specific details like ordering 'newest to oldest' and included status values. This fully distinguishes it from sibling tools like list_subscribers or get_campaign_stats, which target different resources or operations.

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?

The description explains what the tool does but gives no explicit guidance on when to choose it over alternatives. It does not reference sibling tools or mention scenarios like 'use this when you need an overview of campaigns'. The intention is implied but not stated directly.

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

list_subscribersList subscribersA
Read-onlyIdempotent
Inspect

Lists the workspace's subscribers, page by page. Use cursor with the next_cursor value from the response to get the next page. status filters on subscribed, pending, unsubscribed, bounced, or complained.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoSearch by address or name.
limitNo1 to 100, 50 by default.
cursorNoNext-page cursor.
statusNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds valuable behavioral context beyond annotations by explaining cursor-based pagination (using next_cursor) and enumerating the exact status filter values, which helps agents understand expected iteration behavior.

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?

The description is three short, purposeful sentences. It front-loads the primary purpose immediately, then efficiently covers pagination mechanics and filter options without unnecessary prose.

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 list operation with all optional parameters and no output schema, the description covers the essential invocation details: scope, pagination, and filtering. It does not describe the full response shape, but the mention of next_cursor and the simple nature of the tool make this acceptable. Minor gap: no explicit indication that limit defaults to 50, though this is in the schema.

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?

Schema descriptions cover q, limit, and cursor, but status has no schema description. The description compensates by listing all supported status values and explaining the cursor's relationship to next_cursor, adding meaning beyond the raw schema. This is particularly helpful given the 75% schema coverage.

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?

The description states the specific verb 'Lists' and the resource 'workspace's subscribers', clearly differentiating it from sibling tools like list_campaigns and list_suppression. The pagination and filter details reinforce the scope without ambiguity.

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?

The description implies usage by naming the action and resource, but it does not explicitly state when to use this tool versus alternatives or provide any exclusion conditions. It gives functional guidance (pagination, filtering) but not comparative usage guidance.

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

list_suppressionList suppression entriesA
Read-onlyIdempotent
Inspect

Addresses that will receive nothing more: unsubscribed, bounced, or complained. The scope field tells whether the address is suppressed for this workspace only or for the entire platform. No tool removes an address from this list: that action is done manually in the Mailcheer workspace, because it is the one that can suspend a sending capability.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoLook up a specific address.
limitNo
cursorNo

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, and non-destructive hints, so the description does not need to repeat them. It adds value by explaining the meaning of suppression and the scope field, which is likely part of the output. However, the scope field is not defined in the schema, creating ambiguity about whether it is an input or output property. No contradiction with annotations exists.

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?

The description is three sentences with no redundant phrasing. It front-loads the definition of suppression, then adds the scope clarification, and ends with the removal caveat. Each sentence earns its place, and the structure is clean and efficient.

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

Completeness3/5

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

The description explains the concept of suppression and the manual removal process, which is useful context. However, it does not explicitly state that providing an email filters to that specific address, nor does it mention pagination behavior with limit and cursor. The scope field ambiguity also detracts from completeness. For a simple listing tool, these omissions leave room for confusion.

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

Parameters2/5

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

Schema coverage is only 33% (email has a description; limit and cursor do not). The description does not mention any of the parameters, nor does it explain how email filters results or how limit/cursor control pagination. It even introduces a `scope` field that is not a parameter, potentially misleading the agent about the input schema. This is a significant gap given the low schema coverage.

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

Purpose4/5

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

The description conveys that the tool deals with suppression entries and clarifies they are unsubscribed, bounced, or complained addresses. It does not explicitly state the verb 'list' or 'retrieve', relying on the title, but it distinguishes this from removal by noting no tool removes addresses. The mention of a `scope` field that is absent from the input schema is a clarity issue, though the overall purpose is understandable.

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?

The description explains that removal is done manually, which tells the agent not to expect a removal action here, but it does not explicitly state when to use this tool versus alternatives like add_suppression or list_subscribers. There is no direct comparison to sibling tools or conditions for selection, leaving usage context implied rather than explicit.

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

preview_campaign_sendPreview a campaign sendA
Read-onlyIdempotent
Inspect

Read-only: nothing is sent. Returns exactly what send_campaign would do right now — would it go out (and if not, why), and how many people would receive it. With to, reports address by address who is kept and who is excluded, with the reason (unsubscribed, bounced, complained, not in the list…). Call it BEFORE send_campaign, and give that number to the person when you ask them to confirm.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCampaign identifier.
toNoOptional. The addresses to restrict the send to. Omitted = the campaign's whole audience.

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark readOnly, idempotent, and non-destructive. The description adds value by stating 'nothing is sent' and by detailing what the tool returns: whether the send would go out, why not if applicable, recipient count, and address-level exclusion reasons. This goes well beyond the annotations.

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?

The description is compact and front-loaded with the critical read-only guarantee. Every sentence contributes: behavior, return value, optional parameter effect, and usage timing. No filler or redundancy.

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

Completeness5/5

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

There is no output schema, so the description appropriately explains the return semantics: whether the campaign would go out, why not if blocked, recipient count, and per-address reasons. Combined with the annotations covering safety, an agent has enough to use this tool correctly.

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?

Schema coverage is 100%, so the schema already documents both parameters. The description adds meaningful behavior context for `to`, explaining that it triggers address-by-address reporting of kept/excluded recipients with reasons. That is beyond what the schema states.

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?

The description states a specific verb and resource: previewing a campaign send. It clearly distinguishes itself from send_campaign by saying it returns exactly what send_campaign would do without actually sending, including whether it would go out and how many recipients would receive it.

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

Usage Guidelines5/5

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

The description gives an explicit usage instruction: 'Call it BEFORE send_campaign', and it explains the workflow of giving the resulting number to the person for confirmation. This makes the intended sequencing and purpose unambiguous.

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

remove_subscriberUnsubscribe a subscriberA
Destructive
Inspect

Unsubscribes an address and adds it to the workspace's suppression list. The record is not deleted — that is what prevents the address from coming back on the next file import. This action cannot be reversed via the API: only the person can re-subscribe.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYes

TDQS

A4.3/5.0
Behavior5/5

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

The description goes well beyond the destructiveHint annotation by explaining that the record is retained, that it is added to the suppression list, and that only the person can re-subscribe. These are meaningful behavioral details an agent needs before calling an irreversible mutation.

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?

Three sentences, all informative and non-redundant. The action and primary side effect are front-loaded, and the irreversibility warning earns its place.

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 one-parameter destructive tool, the description covers the key behavior, suppression semantics, and irreversibility. It is slightly incomplete in that it omits explicit parameter guidance and does not differentiate itself from the sibling add_suppression tool, but schema and title fill most remaining gaps.

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

Parameters2/5

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

Schema description coverage is 0%, and the description only refers to 'an address' without naming the email parameter, its required status, or expected format. It adds little semantic value beyond what the input schema already shows.

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?

The description opens with the specific verb 'Unsubscribes an address' and identifies the resource plus the side effect of adding to the workspace's suppression list. It explicitly states the record is not deleted, which helps distinguish it from deletion tools and from add_subscriber.

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 description gives clear context: this tool both unsubscribes and suppresses future imports, and it warns that the action cannot be reversed via API. It does not explicitly name sibling alternatives or state when not to use it, but the intended use case is evident.

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

send_campaignSend a campaignA
Destructive
Inspect

⚠️ IRREVERSIBLE. Locks the recipient list and triggers sending to ALL active subscribers in the workspace — or, with to, only to the requested addresses that are active subscribers (never an unsubscribed or suppressed address). A sent email cannot be recalled. First call preview_campaign_send with the same parameters, then ask the person for explicit confirmation, telling them how many people will receive the message. Messages go out progressively; get_campaign_stats tracks progress.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCampaign identifier.
toNoOptional. Restricts the send to these addresses. An empty list sends to nobody (refused); for the whole list, omit the field.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations mark this as destructive and read-write, and the description adds deeper behavioral detail: irreversibility, recipient-list locking, inability to recall sent emails, refusal of empty `to` lists, and the promise that unsubscribed or suppressed addresses are never targeted. This goes well beyond the annotations and is consistent with them.

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?

Three focused sentences, front-loaded with an irreversibility warning, then scope, safety constraints, required confirmation workflow, and progress tracking. Every sentence earns its place and there is minimal redundancy.

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

Completeness5/5

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

For a destructive two-parameter send tool with full schema coverage and no output schema, the description covers invocation scope, edge cases, prerequisites, confirmation requirements, and monitoring. Nothing essential is missing for an agent to use it safely and correctly.

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?

Schema coverage is 100%, giving a baseline of 3. The description adds meaningful parameter semantics: `to` restricts sending to active subscribers only, an empty list sends to nobody, omitting `to` sends to all active subscribers, and suppressed/unsubscribed addresses are excluded. This is valuable context beyond the schema, though `id` receives no extra explanation.

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?

The description states a specific action: send a campaign, with explicit scope (all active subscribers in the workspace or restricted via `to`) and the locking of the recipient list. It is immediately distinguishable from siblings like preview_campaign_send, which only previews, and get_campaign_stats, which tracks progress.

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?

Provides a clear workflow: call preview_campaign_send first with the same parameters, then get explicit user confirmation and tell them the recipient count. It also points to get_campaign_stats for progress. It does not explicitly contrast with send_email or list when-not-to-use cases, but the sequencing guidance is strong.

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

send_emailSend an emailA
Destructive
Inspect

Sends a single (transactional) email to one or more addresses. The sender must belong to a verified domain of the workspace — call get_account to see which ones. A suppressed address fails the entire call, with its reason. The email is sent immediately: this action cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesRecipient, or list of recipients.
fromYesSending address on a verified domain. "Name <address@domain.com>" format accepted.
htmlNoHTML body.
textNoPlain-text body. At least one of html or text is required.
replyToNoReply-to address.
subjectYesMessage subject.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the destructiveHint annotation, the description adds meaningful behavior: the email is sent immediately, the action cannot be undone, and a suppressed address fails the entire call with its reason. This gives the agent a strong safety and failure-mode picture.

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?

Four short sentences, each contributing distinct value: core purpose, prerequisite, failure behavior, and irreversibility. Nothing is redundant or padded.

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

Completeness5/5

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

The description, combined with a fully self-documenting schema and informative annotations, gives the agent everything needed to invoke the tool correctly: verified domains, suppression atomicity, required sender, and destructive consequence. No missing critical context.

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 coverage is 100%, and the schema already documents from, to, html, text, subject, and replyTo clearly. The description adds general context like verified-domain requirements and suppression behavior, but does not add parameter-level meaning beyond what the schema provides, so the baseline of 3 is appropriate.

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?

The description opens with a specific verb and resource: 'Sends a single (transactional) email to one or more addresses.' This clearly distinguishes it from the sibling send_campaign by emphasizing single and transactional, making the tool's scope immediately unambiguous.

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 description gives clear operational context: it is for one-off transactional sends, requires a verified-domain sender, and tells the agent to call get_account to discover valid domains. It implies the boundary against send_campaign but does not explicitly name the alternative or state when not to use this tool.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 13 tool updates
    • First observedadd_subscriber
    • First observedadd_suppression
    • First observedcreate_campaign
    • First observedget_account
    • First observedget_campaign_stats
    • First observedget_email
    • First observedlist_campaigns
    • First observedlist_subscribers
    • First observedlist_suppression
    • First observedpreview_campaign_send
    • First observedremove_subscriber
    • First observedsend_campaign
    • First observedsend_email

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Manage Mailchimp audiences, campaigns, and members via the Mailchimp Marketing API through natural language queries.
    5 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for full Mailchimp management: audiences, tags, segments, campaigns, templates and reporting. Enables creating, sending, scheduling campaigns, managing contacts, and retrieving reports via natural language.
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with the Mailchimp API for managing campaigns, lists, templates, reports, and automations through natural language.
    3
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Draft, test, and send Mailchimp campaigns from an MCP client with audience management, subscriber CRUD, and post-send analytics behind safe-by-default send gates.
    101 npm
    2
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources