Skip to main content
Glama

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation3/5

    Most tools have distinct purposes, but there is some overlap between 'addContactToList' and 'addBulkContactToList', which could cause confusion for an agent deciding between single vs. bulk operations. Additionally, 'broadcastCampaignToList' and 'sendEmailToCampaign' both involve sending campaigns, though their descriptions differentiate one as broadcast and the other as personalized.

    Naming Consistency2/5

    The naming is inconsistent with mixed conventions: some tools use camelCase (e.g., 'addBulkContactToList'), others use PascalCase (e.g., 'MailmodoCampainReportTool'), and some use snake_case (e.g., 'currentDateTime'). There is no uniform verb_noun pattern, making the set less predictable.

    Tool Count4/5

    With 12 tools, the count is reasonable for an email marketing server, covering core operations like contact management and campaign handling. It's slightly on the higher side but well within an appropriate range for the domain.

    Completeness4/5

    The tool set covers key aspects of email marketing: contact CRUD (add, remove, archive, unsubscribe, resubscribe), campaign operations (send, broadcast, report), and event tracking. A minor gap is the lack of tools for creating or managing lists or campaigns directly, but agents can work around this with the provided tools.

  • Average 2.6/5 across 12 of 12 tools scored. Lowest: 1.3/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
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under GPL 3.0.

  • 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.json to 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

  • Behavior1/5

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

    With no annotations and no description of side effects, permission requirements, or behavior when a contact already exists, the tool is completely opaque. The agent cannot infer mutation or idempotency.

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

    Conciseness2/5

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

    The description is extremely short, but at the cost of necessary information. It fails to be concise in a meaningful way; it is under-specified and does not earn its place.

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

    Completeness1/5

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

    Given no annotations, no output schema, and an incomplete parameter set, the description is wholly inadequate. It fails to explain return values, error conditions, or when the operation succeeds.

    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?

    The description adds no meaning to the parameters. Although the input schema has descriptions for nested data fields, the top-level parameters (email, listName, created_at, etc.) remain undocumented. With 0% schema description coverage and 7 parameters, the lack of param information is a critical gap.

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

    Purpose1/5

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

    The description 'Add Contact to list' is a tautology that merely restates the tool name without adding specificity or clarifying what kind of list or what scope. It offers no distinction from sibling tools like addBulkContactToList.

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

    Usage Guidelines1/5

    Does 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 such as addBulkContactToList or other contact management tools. The description omits any context about prerequisites, typical use cases, or exclusions.

    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 exist. Description only says 'Add Many Contact' with no details on behavior such as error handling, idempotency, response format, or prerequisites (e.g., list existence). Lacks essential context beyond the action.

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

    Conciseness3/5

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

    One sentence is concise but omits critical details. The description is not well-structured to aid agent understanding; it lacks any structured breakdown of behavior or parameters.

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

    Completeness1/5

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

    Given the complex nested input schema, lack of annotations, and no output schema, the description fails to provide adequate context. It does not cover return values, error scenarios, or constraints, making it insufficient for correct tool selection and invocation.

    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% for top-level parameters. Description adds no information about 'listName' or 'values'. The nested schema has field descriptions, but the tool description does not clarify parameter purpose or usage.

    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?

    Description states 'Add Many Contact to a list in single API', clearly indicating bulk addition. The name and brief description imply bulk operation, but does not explicitly differentiate from the sibling 'addContactToList' which likely handles single contacts.

    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?

    No usage guidelines provided. Does not specify when to use this tool versus alternatives like 'addContactToList'. Sibling names hint at single vs bulk, but no explicit guidance.

    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 fully disclose behavior. It only states 'get' implying read-only, but does not specify authentication needs, rate limits, or whether the operation is destructive. The description is insufficient for behavioral transparency.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks structure. It would benefit from being broken into separate statements for clarity.

    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?

    Given the tool has three required parameters and no output schema, the description is incomplete. It does not explain what the tool returns, how the date range is applied, or any constraints. Missing essential context.

    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?

    Input schema has no descriptions for parameters and schema coverage is 0%. The description does not explain campaignId, fromDate, or toDate, despite mentioning campaign reports. It adds no meaning beyond the schema.

    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 states the tool retrieves campaign reports for a specific campaign, giving examples like open, click, submission count. This distinguishes it from sibling tools that send emails or manage contacts. However, it could be more precise about the exact metrics included.

    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?

    No guidance on when to use this tool versus alternatives, such as when to use broadcastCampaignToList or userDetails. The description lacks explicit context for usage.

    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?

    Without annotations, the description must carry behavioral disclosure. It only indicates a mutation (unsubscribe/suppress) but omits details like consequences, reversibility, or required permissions. This is insufficient for an agent to understand the tool's full impact.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise, but it sacrifices necessary detail. It earns its place as a minimal statement but does not fully leverage the space.

    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?

    Given the tool's simplicity (one param, no output schema), the description should at least explain the outcome of unsubscribing. It fails to provide enough context to distinguish from sibling tools or to set correct expectations.

    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?

    The sole parameter 'email' is described only by its type in the schema (0% schema description coverage). The description adds no explanation about format, validation, or role, forcing the agent to infer its meaning.

    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 states the action (unsubscribe or suppress) and the resource (contact in Mailmodo). The misspelling 'supress' is minor, but the purpose is unambiguous and distinguishes it from siblings like resubscribeContact.

    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?

    No guidance is provided on when to use this tool versus related siblings (e.g., archiveContact, removeContactFromList). The agent receives no context for decision-making among similar operations.

    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 exist, but the description provides minimal behavior details. It does not disclose authentication needs, rate limits, idempotency, or error handling. The action 'send' implies a mutation, but no confirmation or side effects are described.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but omits important details. It front-loads the purpose but lacks structure and fails to elaborate on parameters, usage, or behavior.

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

    Completeness1/5

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

    For a tool with 4 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain return values, error conditions, or the effect of sending an event, leaving the agent underinformed.

    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%. The description only lists email, event name, and event properties, omitting the 'ts' parameter. It adds no detail on types, constraints, or the complex structure of event_properties beyond the schema itself.

    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 states the tool sends custom events with email, event name, and event properties. It distinguishes from sibling tools (e.g., sendEmailToCampaign) by focusing on events rather than email sending.

    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?

    No guidance on when to use this tool versus alternatives. The description lacks context on when it is appropriate to send events, and no comparisons to sibling tools are made.

    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 provided, so the description must disclose behavior. It states 'permanently archive' but does not clarify whether the action is reversible, what effects it has on the contact's data, or if it triggers any side effects.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks structure. It is minimally acceptable for a one-parameter tool, but not well-fomatted.

    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?

    Given the simplicity (one parameter, no output schema), the description should explain the semantics of 'archive' (e.g., whether it deletes, suppresses, or hides the contact). The presence of sibling tools makes this gap more significant.

    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?

    The only parameter 'email' has no additional meaning beyond the schema type (string). The description does not provide format expectations, examples, or constraints, leaving the agent to guess.

    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 states the action (permanently archive contact) and the resource (contact in mailmodo). It distinguishes from siblings like removeContactFromList and unsubscribeContact, though the term 'permanently' could imply deletion, which may cause confusion.

    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?

    No guidance on when to use this tool over alternatives such as removeContactFromList or unsubscribeContact. The description does not specify context or conditions for archiving.

    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 present, and the description merely states the action without explaining behavioral traits—such as whether it overwrites subscription status or requires a prior unsubscribed state. This is insufficient for an agent to understand side effects.

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

    Conciseness3/5

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

    The description is extremely short (two words plus context), which is concise but lacks structure. It could be more informative without sacrificing brevity.

    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?

    Given the simple input schema and no output schema, the description should explain the action's effect, prerequisites, and possible return values. It only states 'Resubscribe contact in mailmodo', leaving many 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?

    The schema defines one parameter 'email' (required, string) with 0% documentation coverage in the schema description. The tool description adds no extra meaning—no format, example, or constraint beyond the schema field name.

    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 states 'Resubscribe contact in mailmodo', clearly indicating the action (resubscribe) and the resource (contact). However, it does not differentiate from sibling tools like 'unsubscribeContact' or 'addContactToList'.

    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?

    No guidance is provided on when to use resubscribeContact versus alternatives such as unsubscribeContact or addBulkContactToList. The description lacks context for appropriate usage.

    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 should disclose side-effects, permissions, error handling, or output format. It only says 'get all details', omitting critical behavioral context like what happens if email is invalid or not found.

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

    Conciseness4/5

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

    The description is a single, concise sentence with the verb first. It is efficient but could be slightly more descriptive without losing conciseness.

    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 simple tool with one parameter and no output schema, the description is lacking: no mention of return format, error states, or conditions. It fails to provide sufficient context for an agent to use it reliably.

    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%, yet the description adds no extra meaning to the 'email' parameter beyond its existence. No format, validation rules, or examples are provided.

    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 states the tool retrieves all details of a contact, with the input being an email from the schema. It is distinct from sibling tools which are mainly mutation operations, but lacks specificity about what 'details' include.

    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?

    No guidance on when to use this tool versus alternatives, no mention of prerequisites (e.g., email must exist), and no indication of context like read-only nature or when to prefer other tools.

    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 disclose behavioral traits. It describes the action as triggering campaigns but fails to mention mutation, rate limits, idempotency details (despite the idempotencyKey parameter), or the behavior of personalization parameters. The description is insufficient for an agent to understand all side effects.

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

    Conciseness3/5

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

    The description is a single sentence but includes redundant phrasing ('using a single API request' is implied by 'broadcast'). It is not optimally concise and lacks a title. It could be restructured to front-load key information.

    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?

    Given the tool has 5 parameters, a nested object, no output schema, and no annotations, the description is too minimal. It does not cover return values, errors, prerequisites (e.g., campaign must exist), or the full scope of behavior. The schema covers parameters well, but the description fails to provide broader 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 description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the schema; it only provides a high-level overview. The schema already explains each parameter, including the idempotencyKey and campaign_data object.

    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 states that the tool triggers campaigns to the entire contact list using a single API request. This distinguishes it from sibling tools like sendEmailToCampaign, though the mention of 'entire contact list' slightly conflicts with the possibility of using a segment via listId.

    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?

    The description does not provide guidance on when to use this tool versus alternatives. It mentions 'single API request' but offers no explicit when-to-use or when-not-to-use instructions, nor does it reference sibling tools or contexts.

    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?

    The description merely states 'remove', implying mutation, but with no annotations provided, it fails to disclose details such as side effects, irreversibility, or error handling (e.g., contact not found).

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

    Conciseness4/5

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

    The description is a single, concise sentence with no extraneous information. However, it could be expanded slightly to cover parameters without losing conciseness.

    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 simple removal tool with two required parameters and no output schema, the description provides the core purpose but omits details like expected parameter formats or return behavior. Adequate but not thorough.

    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?

    With 0% schema description coverage, the description must add meaning. It implicitly maps 'contact' to the email parameter and 'contact list' to listName, but does not explicitly link to the schema fields, reducing clarity.

    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 states the action ('Remove') and the resource ('a particular contact from the contact list'), clearly distinguishing from sibling add tools. However, it does not explicitly reference the 'listName' parameter, leaving room for ambiguity about which list.

    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?

    No guidance is provided on when to use this tool versus alternatives (e.g., addContactToList, unsubscribeContact). The context of sibling tools is not leveraged to clarify appropriate use cases.

    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?

    The description mentions personalization parameters but does not specify behavioral traits such as whether the email is sent immediately, if data is saved permanently, or if there are rate limits. Without annotations, more detail would be helpful, but the description provides some context.

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

    Conciseness3/5

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

    The description is a single sentence, but it is redundant and awkwardly phrased ('Trigger and email for email campaign trigger'). It could be more concise and clear without losing information.

    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 8 parameters, nested objects, and no output schema, the description is too short. It lacks information on return values, side effects, or how personalization and list addition work, leaving gaps for an AI agent.

    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?

    All parameters have schema descriptions, so the description adds minimal extra meaning. The phrase 'personalization parameter added' is already covered by the schema's campaign_data and data fields, yielding a baseline score of 3.

    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 states that the tool triggers an email campaign with personalization for a single contact, which distinguishes it from sibling tools like broadcastCampaignToList. However, the phrasing is awkward and could be clearer, earning a 4.

    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?

    No guidance is provided on when to use this tool versus alternatives. It does not mention that this is for individual triggering, nor does it explain when not to use it or how it relates to broadcasting or list management tools.

    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?

    No annotations provided, so description fully carries burden. It clearly indicates a read operation returning date/time for a given timezone, with default behavior. However, it omits response format details.

    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 concise sentences, front-loaded with purpose, no extraneous words. Every sentence adds value.

    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?

    Given the tool's simplicity (one optional param, no output schema), description covers core usage. Minor gap: no indication of response format, but agent can infer a datetime string.

    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?

    Input schema has 100% coverage with description for 'timezone'. Description adds value by stating default behavior not found in schema, providing meaningful context beyond the schema.

    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 clearly states the verb 'Get', the resource 'Current Date and time', and the scope 'for timezone'. No sibling tools perform similar function, making it easily distinguishable.

    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?

    Description explains default behavior when timezone is omitted ('default to UTC'), but does not provide explicit when-to-use or when-not-to-use guidance compared to sibling tools.

    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

mailmodo-mcp MCP server

Copy to your README.md:

Score Badge

mailmodo-mcp MCP server

Copy to your README.md:

Latest Blog Posts

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/mailmodo/mailmodo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server