Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool names a specific resource and action (e.g., users, roles, packages), making their purposes distinct. Even similar operations differ by target resource, so an agent can easily select the right tool.

    Naming Consistency5/5

    All tools follow a strict `whatsms_admin_` prefix with snake_case verb_noun (e.g., `create_user`, `delete_voucher`), ensuring a predictable and consistent pattern.

    Tool Count3/5

    At 27 tools, the set is large, but it covers seven distinct entities plus system operations (cache, languages, health). It's borderline heavy but each tool addresses a separate administrative need.

    Completeness4/5

    The CRUD coverage is solid for primary entities, with minor omissions like no update for subscriptions, no get-by-id endpoints, and transactions only supporting get/delete. These are workable gaps but not fatal.

  • Average 3.5/5 across 27 of 27 tools scored. Lowest: 2.7/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.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

  • 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 only says 'Create a new user,' which implies a mutation but does not mention required permissions, possible errors, or side effects. This is a significant transparency gap for a write operation.

    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, clear sentence with no unnecessary words. It is appropriately sized for a simple CRUD tool, though it adds little value beyond the tool name. It earns a 4 for being concise and well-structured.

    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 mutation nature and the absence of annotations and output schema, the description is severely underspecified. It does not explain prerequisites, side effects, or response behavior. The agent has no context beyond the basic action, making the description incomplete for practical use.

    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 input schema has no defined parameters but allows arbitrary properties, and the description does not hint at what parameters to provide (e.g., user details). Since the schema is empty, the baseline for 0 params is 4, but the open schema creates ambiguity, and the description adds no parameter information. The agent has no idea what fields to send, so this is a critical deficiency.

    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 ('Create') and the resource ('a new user in the WhatSMS system'), which matches the tool name and distinguishes it from sibling update/delete/get tools. However, it does not provide any unique scope or differentiating details beyond the basic action, so it is clear but not exceptional.

    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 use this tool versus alternatives, no prerequisites, and no exclusions. The description merely states the action, leaving the agent to infer usage. This is no guidance at all, so it earns a low score.

    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 the burden of behavioral disclosure. It only says 'create a new voucher', which implies a mutation but does not explain side effects, required authorization, potential failures, or what happens to existing vouchers. This is insufficient for a create operation.

    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 wasted words. It clearly states the verb and resource. While it could be more detailed, it is appropriately short for a simple create action, though slightly under-specified.

    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 there are no annotations and no output schema, the description is too sparse. It does not explain what a voucher is, what fields or values are expected, or any behavioral outcomes. The complexity is low due to zero parameters, but a create operation typically needs more context to be useful to an agent.

    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 is empty with additionalProperties true, meaning there are zero defined parameters. Per the baseline for 0 parameters, the description does not need to explain individual parameters. However, the description does not clarify that the schema accepts arbitrary properties, but since no parameters exist, a baseline of 4 is appropriate.

    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 a specific action (create) on a specific resource (voucher) in the WhatSMS system. It distinguishes from sibling tools like delete_voucher, get_vouchers, and redeem_voucher by implying the creation action. However, it lacks additional scope details such as what kind of voucher or any constraints.

    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 given on when to use this tool versus alternatives. There is no mention of prerequisites, differences from create_package/create_role, or any context that would help an agent decide to use this tool. The description is a bare statement without usage context.

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

  • Behavior1/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 disclosing behavioral traits. It only states 'create a new subscription' without any details about side effects, authentication requirements, required fields, return behavior, or potential errors. This is a significant lack of transparency 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.

    Conciseness4/5

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

    The description is a single, clear sentence that is front-loaded and free of superfluous words. Although it is minimal, it effectively states the core purpose without padding, which is appropriate for a simple create operation.

    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 mutation tool with no annotations, no output schema, and zero documented parameters, the description is insufficiently complete. It fails to mention prerequisites, expected input structure, return values, or error scenarios, leaving the AI agent without critical context for invocation.

    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?

    There are zero defined parameters, so the baseline score of 4 applies per the instructions. The description adds no parameter details, but none are required since the schema is open (additionalProperties) and no specific parameters are documented.

    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 ('Create') and the resource ('subscription'), distinguishing it from sibling get/delete subscription tools and other create_* tools. It is specific and unambiguous.

    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 provides no guidance on when to use this tool versus alternatives, no prerequisites, and no context about subscription creation flows. It simply states what it does without usage conditions.

    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 the behavioral disclosure burden. It states 'Delete', implying destructive action, but does not reveal whether deletion is permanent, whether confirmation is required, or what downstream effects may occur. This is insufficient 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/5

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

    The description is a single, direct sentence with no unnecessary words. It is front-loaded and efficient, though it lacks broader context.

    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 no output schema, no annotations, and no parameter details, the description leaves critical gaps: how to specify the API key, what response to expect, and what error conditions exist. The tool is under-specified for reliable use.

    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 input schema is an empty object with additionalProperties true, so no parameters are defined. However, a delete operation logically requires an identifier to specify which API key to remove. The description fails to mention any required input, leaving the agent without a way to target the correct key.

    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 ('Delete') and the resource ('an API key from the WhatSMS system'). This distinguishes the tool from siblings like get_apikeys and create_apikey.

    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?

    No explicit usage guidance is provided, but the name and sibling context imply the tool is for removing API keys. There is no mention of alternatives or exclusions, so usage is 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.

  • Behavior1/5

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

    No annotations are provided, so the description carries the full burden for behavioral disclosure. It fails to mention that deletion is likely permanent, whether it cascades to related entities, requires authentication, or has any side effects. For a destructive operation, this is a significant omission.

    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 clear sentence with no wasted words, which is appropriate for a simple delete operation. However, it lacks any structured warnings or additional context, so it is concise but not maximally informative.

    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 destructive nature, the description is too sparse. It does not address what happens after deletion, the return value, or any potential impacts, and there is no output schema or annotations to compensate. The description is a minimum viable statement but falls short of providing complete context.

    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 is an empty object with additionalProperties true, and the context signals report zero parameters. With no parameters to document, the description need not explain parameter semantics; the baseline of 4 applies.

    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 'Delete a user from the WhatSMS system' uses a specific verb and resource, clearly distinguishing it from sibling tools like create_user or update_user. It immediately states the tool's core function 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 Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It only states what the tool does, leaving the agent to infer usage from the name and verb.

    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 provided, the description carries full responsibility for behavioral disclosure. It only states that a role/function is deleted, without mentioning irreversibility, potential impacts on users or permissions, or any failure conditions. For a destructive mutation tool, this leaves the agent unprepared for 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.

    Conciseness5/5

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

    The description is a single, concise sentence that directly states the tool's purpose. No filler or irrelevant information, and it is appropriately sized for the simple operation.

    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 that this is a destruction tool with no annotations, no output schema, and an empty input schema, the description is too sparse. It omits crucial information such as how to specify the role, what response to expect, and any prerequisites or side effects. The sibling tool list provides some context, but the description itself is not self-contained.

    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?

    The tool has zero defined parameters and an open schema (additionalProperties: true), which is unusual for a delete operation. The description does not clarify how to identify which role/function to delete (e.g., by ID, name), so the agent must infer this. The baseline for zero parameters is 4, but the lack of clarity about how to specify the target drops it to 3, as the description fails to compensate for the schema's emptiness.

    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 (delete) and the target resource (a role/function) within the WhatSMS system, which is specific and distinguishes it from sibling tools like create_role or update_role. The verb-resource pairing leaves no ambiguity about the tool's primary function.

    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 provides no guidance on when to use this tool versus alternatives, such as when a role should be deleted, prerequisites (e.g., whether the role must be unused), or consequences. It merely states the action itself without any usage context or exclusions.

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

  • Behavior1/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 only says 'Delete a subscription' with no indication that deletion is permanent, irreversible, or may fail for non-existent subscriptions. No side effects or confirmation requirements are mentioned, making the tool's behavior opaque.

    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, concise sentence with no wasted words. It is front-loaded with the verb and resource, achieving maximum clarity in minimal 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?

    While the tool is simple (no parameters, no output schema), the description lacks critical contextual details such as irreversibility, potential cascading effects, or what happens on success/failure. This is a significant gap for a delete operation, making the description minimally 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?

    The input schema has zero parameters, so there are no parameter semantics to explain. The description adds no parameter detail, but the baseline for 0 params is 4, as the tool requires no input beyond the tool name itself.

    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's action ('Delete') and resource ('a subscription'), making its purpose unambiguous. It naturally distinguishes itself from sibling tools that operate on other resources like users, roles, or vouchers.

    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 offers no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. While the name implies a straightforward delete operation, the description does not specify contexts such as 'when a subscription is inactive' or warn against deleting subscriptions with active dependencies.

    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, so the description carries full behavioral disclosure burden. It only states the action without noting side effects, idempotency, permission requirements, or consequences of redeeming. This is a significant gap for a 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?

    The description is a single, focused sentence with no wasted words. It front-loads the verb and resource, making it appropriately concise for the conveyed 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?

    This is an admin mutation tool with likely side effects, yet there is no output schema, no annotations, and no parameter details. The description is too thin to be considered complete for safe invocation.

    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?

    The schema defines zero parameters, so baseline is 4. However, the description implies a voucher and user are involved without specifying how they are passed. Given the schema is empty with additionalProperties:true, the description should clarify expected inputs but does not fully compensate.

    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 uses the specific verb 'redeem' with the resource 'voucher' and target 'user', clearly distinguishing it from sibling tools like create_voucher, delete_voucher, and get_vouchers. The action is unambiguous.

    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. There is no mention of prerequisites, conditions for redemption, or when to prefer this over create/delete voucher 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It indicates a destructive action ('clear') but does not disclose side effects, permission requirements, system impact, or whether the cache is rebuilt automatically. This is insufficient for an admin operation, though it at least signals a mutating action.

    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 short sentence with no unnecessary words or repetition, making it concise and easy to parse. However, it is also under-specified, which slightly limits its usefulness, but for conciseness it is well-structured.

    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?

    Although the tool is simple with no parameters or output schema, the description is too sparse for complete understanding. It does not explain what 'system cache' encompasses, when clearing is appropriate, or whether the operation has disruptive effects. For a mutating admin tool, this lacks essential context.

    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, and the schema coverage is 100%, meaning the schema fully defines the parameter space. The description adds no parameter information, but none is needed. Baseline for zero-parameter tools is 4, which applies here.

    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 'Clear the system cache' clearly identifies the action (clear) and the resource (system cache), distinguishing it from the sibling admin tools that manage users, roles, packages, and other entities. It uses a specific verb+resource construction, leaving 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 Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternative approaches, nor does it mention any prerequisites, exclusions, or alternatives. It simply states the action without context on when it is appropriate to invoke. This is a lack of guidance, scoring 2 per the rubric.

    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 disclose behavioral traits. It only states the creation action without mentioning required permissions, side effects, idempotency, or response format. The description adds little beyond the tool name.

    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 concise sentence that immediately states the purpose. Every word earns its place and it is front-loaded with the action.

    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 mutation tool with no annotations, no output schema, and an open input schema, the description is too minimal. It lacks information about required inputs, return values, and operational context, making the tool difficult to use correctly without additional assumptions.

    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 input schema is an empty object with additionalProperties true, meaning parameters are accepted but none are defined. The description provides no guidance on what fields (e.g., role name, permissions) should be provided, leaving the agent without sufficient semantic grounding.

    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 uses a specific verb 'Create' and names the resource 'new role/function' in the WhatSMS system, making the action unambiguous. It clearly distinguishes from sibling tools like update_role and delete_role.

    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 for creating roles from the verb 'Create', but it does not explicitly state when to use versus alternatives or mention exclusions. No guidance is given for situations where the role already exists or for modifying roles.

    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?

    There are no annotations to provide safety or mutation hints, so the description carries the full burden. It discloses that the operation mutates an existing package, but omits any details about error behavior, validation, or side effects. This is insufficient 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/5

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

    The description is a single concise sentence, front-loaded with the verb, and contains no filler. It is appropriately compact, though it sacrifices informational value for 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?

    For a mutation tool with no annotations, no output schema, and an open schema, this description provides minimal actionable context. It lacks information about required package identifiers, updatable fields, or consequences, making it incomplete for an agent to use confidently.

    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 input schema defines no properties and allows additional properties, so the agent receives no parameter guidance. The description mentions 'package' but does not specify which identifiers or fields are expected, leaving the agent to guess.

    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 uses a specific verb 'update' and identifies the resource 'package' within the WhatSMS system, clearly distinguishing it from sibling tools like create_package or delete_package. It states what the tool does in a straightforward manner.

    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 the tool is used to modify existing packages, but it does not provide explicit guidance on when to prefer it over alternatives, prerequisites, or exclusions. No sibling comparisons or conditions are mentioned.

    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 carries full responsibility for behavioral disclosure. It only states the action without mentioning side effects, permission requirements, idempotency, or validation behavior, which is a significant gap for a create operation.

    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 with no wasted words. It is appropriately sized and easily scannable.

    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?

    Despite being a simple create operation, the description is under-informative for real use. With no annotations, no output schema, and an open parameter schema, it does not explain what a 'package' is, what fields are needed, or what the API expects, leaving the agent to guess.

    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 schema defines zero parameters and allows additional properties, so there are no parameters to describe. The baseline for 0 params is 4, and the description is not required to detail individual fields, though it could have hinted at typical package attributes.

    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 uses the verb 'create' with the resource 'new package', distinguishing it from siblings like update_package, delete_package, and get_packages. It precisely conveys the tool's function.

    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 lacks mentions of prerequisites, related tools, or scenarios, leaving the agent without context for selection.

    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?

    There are no annotations, so the description carries the full burden of behavioral disclosure. It states the tool deletes a package, which implies a destructive action, but it does not disclose whether deletion is permanent, any cascading effects, or other behavioral traits such as reversibility or 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.

    Conciseness5/5

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

    The description is a single sentence with no filler or redundant information. It is concise and gets straight to the point.

    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?

    The description is minimal and does not clarify which package is being deleted, especially given there are no parameters. It also lacks information about side effects or return behavior, leaving significant gaps for a delete operation in an admin context.

    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 description does not need to explain parameter semantics. The schema is empty, and the baseline for 0 params is 4, with no additional information needing to be conveyed.

    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 uses a specific verb ('Delete') and a specific resource ('package'), clearly stating the tool's function. It distinguishes itself from sibling tools like create, update, or get packages by indicating the delete action.

    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 vs alternatives, nor are there any prerequisites or exclusions. The name and description imply it is for removing packages, but no explicit context or alternative options are mentioned.

    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 fully disclose behavioral traits. It only states the action 'Delete' with no mention of permanence, side effects, reversibility, or authorization requirements. This is insufficient for a destructive operation.

    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?

    A single, front-loaded sentence with no extraneous information. It efficiently states the core purpose.

    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?

    The description is too sparse for a destructive admin tool. No output schema or annotations exist, and the description lacks details on how the target transaction is identified, what happens after deletion, and any consequences.

    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 has zero defined parameters (additionalProperties allowed), so the baseline is 4. The description adds no parameter semantics, but with no parameters to clarify, no further detail is expected.

    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 is specific: 'Delete a transaction from the WhatSMS system' clearly identifies the verb (delete), resource (transaction), and system (WhatSMS). It distinguishes this from sibling delete tools like delete_user and delete_role.

    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 given on when to use this tool, what preconditions exist, or how it compares to related tools like get_transactions. The description provides no context for selecting this tool over alternatives.

    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, so the description carries the full burden. It only says 'Delete' without disclosing permanence, required permissions, side effects, or what happens to associated data. This is a significant gap for a destructive operation.

    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 sentence, direct and free of unnecessary words. It is appropriately concise and gets straight to the point.

    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?

    The tool has no output schema or annotations, and the schema is an open object with no documented parameters. The description fails to explain how the voucher to delete is identified or what the deletion scope is, leaving the agent without enough context to invoke the 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?

    The input schema is empty (0 parameters) and schema coverage is 100%. The description adds no parameter details, but with 0 parameters the baseline score of 4 applies.

    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 'Delete a voucher from the WhatSMS system', using a specific verb and resource. It distinguishes the tool from siblings like 'create_voucher' and 'redeem_voucher'.

    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 about when to use this tool versus alternatives. The description does not mention any prerequisites, exclusions, or reference any sibling 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 carries the full burden. It only says 'update' without disclosing permissions, side effects, how roles are identified, or whether updates are reversible. This is insufficient 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/5

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

    The description is a single, clear sentence with no wasted words, front-loading the verb and object.

    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 mutation tool with no annotations, no output schema, and an open input schema, this description is too sparse. It does not tell the agent what fields to provide, what the response looks like, or any safety considerations.

    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?

    The schema has zero explicit parameters (though additionalProperties is true), and the description adds no parameter-level meaning. With 100% schema coverage, baseline 3 is appropriate, but the open schema remains unexplained.

    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 a specific action (update) on a specific resource (existing role/function) within the WhatSMS system. It is easily distinguished from sibling tools like create_role or delete_role.

    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 use of 'existing' implies this tool is for modifying roles already present, as opposed to creating new ones, but it does not explicitly state when to use it over alternatives or mention any 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'List all subscriptions' which implies a read-only operation, but it does not disclose potential auth requirements, pagination parameter details, or return format. The mention of 'optional pagination' is a hint but lacks specifics.

    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 sentence with no wasted words. It conveys the essential purpose and a key behavior (pagination) efficiently, earning full marks for 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?

    The tool is a simple list operation with low complexity, and the empty schema/sibling names provide some context. However, the absence of an output schema and annotations means the description should clarify pagination syntax and response structure. The current description is minimally adequate but lacks completeness for advanced use.

    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?

    The input schema is empty (with additionalProperties true), so the description adds some meaning by mentioning 'optional pagination'. However, it does not specify the exact parameter names or types, leaving the agent to guess how to pass pagination details. Since there are no documented params in the schema, this is a baseline score with limited added value.

    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 a specific verb ('List'), resource ('subscriptions'), and scope ('all'), which distinguishes it from sibling tools like whatsms_admin_get_users or whatsms_admin_get_roles. This makes the tool's purpose immediately clear.

    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 when to use the tool (when you need a list of subscriptions) but does not explicitly mention alternatives or exclusions. Sibling tool names like create_subscription and delete_subscription suggest non-list operations, but the description itself provides no direct guidance on when not to use it.

    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 provided, the description carries the full burden of behavioral disclosure. It mentions 'performance metrics' but does not indicate whether the check is read-only, whether it has side effects, what specific checks are performed, or what format the results take. This lack of detail leaves the agent uncertain about the tool's operational impact.

    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, concise sentence that efficiently conveys the core action and a key aspect ('performance metrics'). Every word earns its place, and there is no redundant or irrelevant information.

    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?

    Given the simplicity (zero parameters, no output schema), the description is minimally adequate but lacks detail about what the health check covers and what the agent should expect in return. For a tool that likely returns a status report, this omission could hinder correct invocation or result interpretation. It is not misleading, but it leaves gaps.

    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 fully specifies that no input is required. The description adds the context that the operation is a broad health check, which is useful but not necessary for parameter understanding. The baseline of 4 applies here because the schema already covers everything.

    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's function: 'Perform comprehensive system health check with performance metrics.' It uses a specific verb ('Perform') and resource ('system health check'), and it distinguishes itself from sibling CRUD and cache-clearing tools by focusing on system diagnostics.

    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 provides no explicit guidance on when to use this tool versus alternatives. It does not mention prerequisites, typical scenarios, or situations where other tools (e.g., clear_cache, get_languages) would be more appropriate. The purpose is implied but not stated as a directive.

    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, and the description only states the action without disclosing side effects, access requirements, or return behavior. For a mutation operation, this is a significant gap.

    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 with no wasted words. It effectively communicates the tool's core purpose.

    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?

    The description is too thin for an agent to invoke correctly. It does not explain what input the tool expects (e.g., user ID or API key name), especially given the schema has no required properties and allows arbitrary properties. No output schema or behavioral details are provided.

    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?

    There are zero defined parameters (schema allows any additional properties), so the baseline per rubric is 4. The description adds no parameter details, but no parameters exist to describe.

    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 an API key for a user in the WhatSMS system, using a specific verb and resource. It is distinct from sibling tools like get_apikeys or delete_apikey.

    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 action is obvious from the description (use when creating an API key), but there is no explicit guidance on prerequisites, alternatives, or when not to use. No mention of required user context or comparison to 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 carries the full burden of behavioral disclosure. It only states the update action, without revealing whether the user must exist, whether it's a partial or full update, what security context is needed, or any side effects. This is a significant gap 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/5

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

    The description is a single, front-loaded sentence with no unnecessary words. It gets straight to the point, making it highly concise and well-structured.

    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 an admin CRUD operation with no annotations, output schema, or parameter definitions, this minimal description is insufficient. It does not explain the update semantics, required permissions, or response behavior, leaving the agent under-informed about how to invoke the 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?

    The input schema has zero defined parameters but additionalProperties allows arbitrary fields. The description adds no information about expected fields, identifiers, or update format. Per the baseline for 0 parameters, a score of 4 is appropriate, though the open schema could benefit from clarification.

    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 ('Update') and the target resource ('an existing user in the WhatSMS system'), providing a specific verb+resource pair. It distinguishes itself from sibling create/delete user tools by specifying 'existing' user.

    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?

    No explicit guidance on when to use this tool versus create or delete user tools. The name and description imply it is for modifying an existing user, but no conditions, exclusions, or alternatives are mentioned.

    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 must convey safety and side effects. 'List' implies a read-only operation, and the mention of optional pagination adds behavioral detail, but it does not explicitly state that the tool has no side effects, nor does it disclose any permissions, response format, or rate limits. The behavior is adequately implied but not fully transparent.

    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, clear sentence that front-loads the core purpose and includes the only additional detail (pagination). No unnecessary words or repetition, making it highly concise and well-structured.

    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 list tool with no output schema or annotations, the description covers the essential aspects: what it lists and a key optional feature. It lacks explicit mention of the return shape or any filters, but given the simplicity and sibling context, it is sufficiently complete for an agent to understand the tool's primary function.

    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 schema has no defined parameters, but the description mentions 'optional pagination,' which adds meaningful guidance beyond the empty schema. Since there are zero parameters, the baseline is 4, and the description earns that by hinting at a potential pagination parameter without naming it.

    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's action ('List') and target resource ('all packages in the WhatSMS system'), making its purpose unambiguous. It distinguishes itself from sibling tools like get_users or create_package by focusing specifically on packages and a read operation.

    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 the usage context (listing packages) but does not explicitly mention when not to use it or provide alternatives. Sibling tool names suggest the context, but the description itself offers no guidance on choosing this over related tools such as get_subscriptions or update_package.

    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 of behavioral disclosure. It notes 'optional pagination', which suggests large result handling, but omits details like authentication requirements, sorting, defaults, or whether the operation is strictly read-only (though 'List' strongly implies so). It is not misleading but lacks depth.

    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, clear sentence that is immediately understandable and front-loaded. Every word adds 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/5

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

    For a simple list tool with no output schema and no annotations, the description adequately communicates the core purpose and hints at a pagination feature. It could mention expected return fields or authentication context, but given the low complexity, it is largely 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 input schema is empty with zero parameters, so the baseline is 4. The description adds 'optional pagination' but does not define parameter names or formats, which is acceptable given no parameters are formally declared, but leaves practical invocation details unspecified.

    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 uses the specific verb 'List' with the resource 'users in the WhatSMS system', clearly distinguishing it from sibling write tools like whatsms_admin_create_user and whatsms_admin_update_user. Mention of 'all users' and 'optional pagination' further clarifies scope.

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

    Usage Guidelines3/5

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

    Usage context is implied rather than explicit: it is the 'get/list' counterpart to user management CRUD operations. No exclusions or alternative tools are mentioned, and there is no guidance on when to use pagination versus not.

    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 adds behavioral context by specifying that the operation is a 'List' (implying read-only) and mentions 'optional pagination', which is useful. However, it does not disclose pagination mechanics, response format, or any safety guarantees beyond the verb.

    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 states the action and resource immediately. Every word is informative, with no redundancy or filler.

    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 list tool with no output schema or annotations, the description adequately covers the core behavior ('List all vouchers') and notes the existence of pagination. It lacks deeper details like return structure or default page size, but these are not critical for a basic admin listing operation.

    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 zero defined parameters in the schema, the baseline is 4. The description adds a meaningful hint by referencing 'optional pagination', indicating that a pagination parameter may exist, even though it doesn't name the parameter or describe its format.

    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 all') and the resource ('vouchers in the WhatSMS system'), making it specific and distinct from sibling tools like get_users or get_packages. This 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 Guidelines3/5

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

    The intended usage is implied by the verb 'List' and the resource 'vouchers', but the description offers no explicit guidance on when to prefer this over alternatives or how to handle pagination. No exclusions or alternative tool references are 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 provided, so the description carries the full burden of behavioral disclosure. It indicates a read-only operation via the verb 'List' and discloses optional pagination. However, it does not mention authentication requirements, rate limits, or response format. For a simple read-only list tool, this is minimal but adequate.

    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, concise sentence: 'List all roles/functions in the WhatSMS system with optional pagination'. It is front-loaded with the primary action and resource, and every word contributes meaning. No redundant or vague language is present.

    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 tool has no output schema and no annotations, so the description should clarify what the agent can expect from the response. While 'List' implies the return of roles, it does not describe the structure (e.g., array of role objects) or how pagination is controlled or returned. Given the simplicity of the tool, this is adequate but leaves gaps.

    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 is empty (no defined parameters), so the description adds value by mentioning 'optional pagination', which hints that the tool supports pagination parameters despite the schema not defining them. It does not specify exact parameter names or types, but it provides meaning beyond the empty 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?

    The description clearly states the tool's function: 'List all roles/functions in the WhatSMS system'. It uses a specific verb ('List') and resource ('roles/functions'), and the scope ('all') is explicit. This distinguishes it from sibling tools that create, update, or delete roles.

    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 provides clear context for when to use the tool: when you need to retrieve all roles/functions. It mentions optional pagination, which indicates a use case for large result sets. While it doesn't explicitly mention alternatives or exclusions, it is clear that this is the canonical read operation for roles, and no sibling tool serves this exact purpose.

    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 burden of behavioral disclosure. It mentions 'optional pagination', which is a behavioral trait, and the read-only nature of 'List' is implicit. However, it does not elaborate on auth requirements, return format, or behavior when no keys exist, leaving some 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/5

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

    The description is a single, focused sentence that conveys purpose and scope without any redundant words or filler. It is exactly as concise as needed.

    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?

    As a simple admin list tool, the description covers the essential purpose and hints at pagination. It lacks details about return values or filtering options, but for a basic list operation with no params and no output schema, it is sufficiently complete. A bit more context would push it to a 5.

    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 schema defines zero parameters and has 100% coverage, so the baseline is 4. The description adds 'optional pagination' as a hint that some parameters may exist, but it does not specify names or structure. Since there are no formal parameters, the description adds a useful hint without creating confusion.

    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 uses the specific verb 'List' with the resource 'all API keys', clearly distinguishing it from sibling tools like create_apikey and delete_apikey. It also specifies the context 'in the WhatSMS system', making the tool's scope unmistakable.

    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 phrase 'List all API keys' clearly implies the use case—when you need to retrieve all API keys. While it does not explicitly mention alternatives or exclusions, the sibling tool set shows no other listing tool for API keys, so the context is unambiguous enough.

    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. The verb 'Get' implies a read-only operation, which is useful, but the description does not mention authentication requirements, return format, or any limitations. For a simple list retrieval this is adequate but not rich.

    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 sentence of 9 words, front-loaded with the action and resource. Every word earns its place with no redundancy or filler.

    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 tool with zero parameters, no output schema, and simple semantics, the description adequately conveys what the tool does. It could mention the return shape (e.g., 'returns a list of language codes'), but the phrase 'Get all available languages' already implies a list of languages, making it sufficiently 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 0 parameters and schema description coverage is 100% (vacuously). The description adds no parameter details because none exist; baseline 4 is appropriate for a no-parameter tool.

    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 uses the specific verb 'Get' with the resource 'all available languages' and clearly states the scope ('from the WhatSMS platform'). This unambiguously distinguishes it from sibling tools like get_users or get_roles, which target 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 Guidelines4/5

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

    The description clearly indicates when to use this tool (whenever the list of languages is needed) and implicitly distinguishes it from siblings by resource name. However, it does not explicitly mention alternatives or when-not-to-use, though no true alternatives exist among siblings for this resource.

    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 of indicating behavior. 'List' implies a read-only operation, but the description does not disclose auth requirements, pagination behavior, or response format. This is a clear gap but acceptable for a simple list 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/5

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

    The description is a single, front-loaded sentence that directly states the tool's purpose and primary options. No wasted words.

    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 list tool with no output schema, the description conveys the core function and optional capabilities. It could mention return fields or more detail about filters, but the current wording is sufficient for selecting and invoking this tool at a basic level.

    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 zero declared parameters in the schema, the baseline is 4. The description adds useful context by mentioning optional pagination and filtering, though it does not specify parameter names or formats. It adds some meaning beyond the empty schema but is vague.

    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 uses the specific verb 'List' with the resource 'transactions' and scope 'in the WhatSMS system', clearly distinguishing this tool from sibling tools that operate on users, roles, packages, and other entities.

    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?

    It clearly indicates that this tool is for listing transactions and mentions optional pagination/filtering, but it does not explicitly state when to avoid it or name alternative tools for transaction operations, aside from the obvious sibling delete_transaction.

    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

mcp-whatsms-admin MCP server

Copy to your README.md:

Score Badge

mcp-whatsms-admin 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/Descomplicar-Marketing-e-Tecnologia/mcp-whatsms-admin'

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