mailchimp-mcp
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each specific tool targets a distinct resource and action (campaigns, content, scheduling, sending, reports, templates, members). The meta-tools 'search' and 'execute' are clearly differentiated as discovery and fallback execution, so there is no practical confusion.
Naming Consistency4/5Most tools follow a consistent verb_noun pattern (list_audiences, create_campaign, get_campaign_report). The exceptions are the bare verbs 'search' and 'execute', which are minor deviations but still clear in intent.
Tool Count5/5Twelve tools is well within the ideal 3-15 range. Each tool covers a distinct part of the Mailchimp workflow without redundancy or bloat.
Completeness5/5The core campaign lifecycle (create, content, schedule, send, report) and audience/member management are covered. The 'search' and 'execute' meta-tools ensure no Mailchimp API endpoint is unreachable, effectively filling any gaps.
Average 3.9/5 across 12 of 12 tools scored. Lowest: 2.9/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only states the core action without mentioning read-only nature, filtering by type, pagination behavior, or any side effects. This is minimal and leaves important behaviors undocumented.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that immediately tells the reader what the tool does. There is no wasted wording, making it highly concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple list operation with no output schema and no annotations, so the description must provide context about return values and usage scenarios. It does neither, leaving the agent with only minimal functional info and no understanding of how templates relate to other tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema fully documents both parameters (type and count). The description adds no parameter information, but the baseline of 3 applies because the schema handles all parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('available email templates'), making the purpose apparent. However, it does not explicitly differentiate itself from sibling list tools like list_audiences or list_campaigns, though the resource name makes the distinction obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of typical use cases (e.g., before creating a campaign) or any exclusions, leaving the agent without context for selecting this tool from its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry full behavioral disclosure. It mentions output fields but omits critical behavior such as default/maximum count, pagination, ordering, or whether 'all' is truly all given the count parameter. The phrase 'List all audiences' is potentially misleading when paired with a limit parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence that states the action, resource, and output highlights. No wasted words or redundant repetition of the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool, the description plus schema provide reasonable coverage, but the lack of an output schema and the ambiguity around 'all' vs. the count parameter leave gaps. The description doesn't clarify what 'key stats' includes or how results are limited, making it incomplete for an agent needing precise return expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single 'count' parameter is fully described in the schema (default 10, max 100), so schema coverage is 100%. The description does not add any additional meaning about the parameter, staying at the baseline for schema-backed clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('audiences'), clarifying the scope ('all audiences') and adding detail about output content ('subscriber counts and key stats'). This clearly distinguishes it from sibling tools like list_campaigns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The context of when to use this tool is implied—when you need audience lists with statistics—but there are no explicit exclusions or comparisons to alternative tools. No mention of when to prefer search_members or search instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the safety disclosure burden. It only mentions compact summaries for write operations, but omits warnings about destructive operations (DELETE/PATCH), rate limits, error handling, or authorization requirements. This is insufficient for a tool that can execute arbitrary API calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and every clause provides actionable guidance. There is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a generic executor with high complexity, no annotations, and no output schema. The description only covers search-first usage and verbose summaries, leaving critical gaps around destructive operations, error handling, pagination, and how this tool relates to the specific sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with meaningful descriptions for all five parameters (path examples, method enum, body/params types, verbose behavior). The description adds no semantic value beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a generic Mailchimp Marketing API executor with 'Execute any Mailchimp Marketing API call.' It distinguishes itself from specific sibling tools by being the catch-all, and explicitly references the search tool for discovery, making its role 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly instructs to use the search tool first for endpoint discovery, which implies this tool is for execution after discovery. It also notes the default compact summaries for write operations, but does not explicitly direct users to common sibling tools for standard operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description bears the transparency burden. It indicates a read-only list operation via 'List' and enumerates status filter values, but it does not mention pagination, ordering, or return format. The description is not misleading but leaves behavioral details to the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that efficiently conveys the tool's purpose and key optional filter. It avoids restating schema details or adding fluff, making it appropriately sized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool without an output schema, the description provides a sufficient overview: it specifies the resource and optional status filtering. It does not cover pagination or default return size, but those are already defined in the schema, and the absence of complex side effects keeps the description complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters (count, offset, status) already described in the input schema. The description adds the status filter values but does not enhance understanding of count or offset beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List) and resource (email campaigns), and specifies optional status filtering with exact status values (save, paused, schedule, sending, sent). This distinguishes it from sibling list tools like list_audiences and list_templates, and from campaign-specific actions like send_campaign.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to retrieve campaign lists, optionally filtered by status, but it does not explicitly state when to use this tool versus alternatives. No exclusions or recommendations for sibling tools are provided, though the purpose is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses the search scope and criteria but omits behavioral details such as return format, pagination, permission requirements, or whether partial matches are returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It front-loads the action ('Search for audience members') and lists criteria and scope efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should explain what is returned. It only says 'search for' without stating the output format or any limitations. Given the tool's simplicity, it's adequate but incomplete for a fully opaque context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with descriptions (query is name/email, list_id limits to a specific audience). The tool description adds that search is across all audiences, implying the list_id is a limiter, but this is minor extra value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Search' with resource 'audience members' and scope 'across all audiences', clearly distinguishing from generic sibling 'search'. It states exactly what the tool does and its default search scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (finding members by name/email across all audiences) but does not explicitly mention alternatives or exclusions relative to siblings like 'search' or 'list_audiences'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full transparency burden. It usefully discloses automatic hash computation and the compact vs verbose response behavior, but omits side effects, permissions, or error conditions. This is more than a tautology but still minimal for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences front-load the purpose and then give essential behavioral details. Every sentence earns its place with zero fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 6-param schema with full descriptions and no output schema, the description covers the core upsert behavior and response format, making it sufficiently complete for typical use. It doesn't cover edge cases or prerequisites, but the schema mitigates that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for all parameters, so the description adds little beyond re-stating the verbose option already documented in the schema. It provides no extra semantic detail about parameters themselves.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Add a new subscriber or update an existing one (upsert)' with a specific verb and resource, and the 'upsert' term uniquely distinguishes it from sibling tools like search_members. It leaves no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use it: for adding or updating subscribers. However, it doesn't explicitly contrast it with alternatives like search_members, so it stops short of explicit when-not and alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses response behavior (compact confirmation by default, verbose=true for full response) and the return of a campaign ID. However, it does not mention permissions, side effects beyond creating a resource, or the fact that sending is separate, leaving some transparency gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary purpose, followed by the return value and a key option. Every sentence contributes value with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the workflow context (creates an initial campaign, returns ID for next steps) and the default response behavior, which is critical given no output schema. It does not explain every parameter, but the schema already does. A small gap is not explicitly stating that this only creates a draft and does not send, but the flow reference to send/schedule makes it implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all parameters. The description adds minor clarification about the verbose flag (already in schema) and mentions the campaign ID return, but does not provide additional parameter meaning beyond what schema properties already offer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a specific verb and resource: 'Create a new email campaign.' It also distinguishes from siblings by stating it returns a campaign ID for use with update_campaign_content and send/schedule, clarifying the tool's role in the campaign creation flow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool by referencing the campaign ID for subsequent update/send steps, but does not explicitly state exclusions like 'use update_campaign_content for existing campaigns.' Context is clear enough for selection, but no explicit alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool returns metrics (opens, clicks, bounces, unsubscribes) and implies read-only behavior via 'Get', but it does not explicitly confirm side-effect-free operation, authentication requirements, or error handling for unsent campaigns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the core action and resource, followed by a list of report contents. No wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description adequately explains the purpose and gives a glimpse of return data. It lacks details on output structure and possible error states, but these are less critical given the tool's simplicity and the clarity of 'performance report'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for campaign_id, but the description adds meaningful constraint: the campaign must be 'sent'. This clarifies that only sent campaigns are valid inputs, which is not present in the schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('performance report for a sent campaign') and enumerates the report contents (opens, clicks, bounces, unsubscribes). It clearly distinguishes this reporting tool from sibling tools like list_campaigns or send_campaign.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (for performance reports on a sent campaign) but does not explicitly state alternatives, exclusions, or when not to use it. No comparison to sibling tools or prerequisite conditions beyond 'sent campaign' is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the burden. It discloses the default return format (compact confirmation) and how to get the full response (verbose=true). However, it does not mention potential side effects like overwriting an existing schedule, prerequisites, or cancellation 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main purpose and immediately followed by response behavior. No filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple scheduling tool with three parameters and no output schema, the description covers the action, default output, and how to get more detail. It lacks some context about prerequisites or effects on existing schedules, but is adequate for straightforward use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with detailed descriptions for all three parameters. The description adds no significant semantic meaning beyond the schema, though it does reiterate the verbose toggle behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Schedule a campaign to send at a specific time.' This uses a specific verb and resource, and distinguishes from sibling tools like send_campaign (immediate send) and create_campaign (creation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the use case: scheduling for a future time. It does not explicitly reference alternatives or for when not to use it, but the phrase 'at a specific time' contrasts with immediate sending.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the default compact response and the verbose option, which is useful. However, it does not explicitly state that this is an overwrite operation (destructive), any permission requirements, or what happens if both html and template_id are provided. Some behavioral traits are disclosed, but not the full safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, and includes both the core usage rule and the response format. Every sentence earns its place; there is no fluff or repetition. It is highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 parameters, no output schema, and no annotations. The description covers the main purpose, the either/or constraint, and the response behavior, which are the most critical aspects. It falls short of a perfect score because it omits edge-case behavior, such as validation rules or consequences of providing both parameters, and does not explicitly state that content is overwritten. Still, it is notably complete for a simple update tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, so all parameters already have descriptions. The description adds the mutual exclusivity constraint ('Provide either html OR template_id'), which is a semantic enhancement, but the schema's phrase 'instead of raw HTML' for template_id already hints at this. Overall, the description adds marginal value beyond the schema without fully compensating for any gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set the HTML content or template') and the target resource ('a campaign'), using a specific verb that distinguishes it from sibling tools like create_campaign, schedule_campaign, or send_campaign. It also indicates the key input choice (html vs template_id), making the purpose 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage guidance: 'Provide either html OR template_id' and explains the verbose parameter's effect on output. It implies the tool is for editing existing campaigns (as opposed to create_campaign, which is a sibling), though it does not explicitly name alternatives or when-not-to-use conditions. The context is clear enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does well: it discloses the prerequisite (content must be set), the immediate side effect of sending, and the return behavior (compact by default, full with verbose). This gives the agent a clear picture of what to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no filler. The first sentence states the action, the second adds a prerequisite and return behavior. All information is front-loaded and purpose-driven.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with no output schema and no annotations, the description covers the essential aspects: action, prerequisite, and response type. It does not fail to mention anything critical, though it could hint at error behavior if content is missing. Overall, it is complete enough for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema covers both parameters. The description repeats the verbose behavior ('compact confirmation', 'verbose=true') rather than adding new meaning, so it does not exceed the baseline for well-documented schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Send a campaign immediately.' The verb 'send' and resource 'campaign' are specific, and the word 'immediately' distinguishes it from sibling `schedule_campaign`. It also mentions the prerequisite of setting content, reinforcing its distinct role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage context: 'Send a campaign immediately' indicates immediate action, and 'must have content set first via update_campaign_content' gives a specific prerequisite and names an alternative tool. However, it does not explicitly contrast with `schedule_campaign`, leaving some room for interpretation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden. It transparently discloses the output format and the no-arguments behavior, which covers the essential behavioral traits for a non-mutating catalog search. However, it does not explicitly state it is read-only or mention any rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, immediately stating the action and resource, then providing output details and a usage tip. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple catalog search with full schema coverage and no output schema, the description sufficiently covers the tool's purpose, return contents, and invocation options. The optional parameters are all explained in the schema, and the description provides the remaining context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters have schema descriptions, so baseline is 3. The description adds value by explaining that calling with no arguments returns all categories, clarifying the optionality of parameters beyond individual schema entries.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches the Mailchimp Marketing API catalog to discover endpoints, specifying the returned fields (method, path, summary, parameter details). This distinguishes it from sibling tools like search_members which search for member data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides a clear usage context: discover endpoints and view categories. It explicitly mentions calling with no arguments to see all categories, but does not contrast itself with alternatives like search_members or explain when to prefer endpoint discovery over actual data search.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/livemau5/mailchimp-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server