Skip to main content
Glama
SMS-Masivos

SMS Masivos MCP Server

Official
by SMS-Masivos

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a distinct purpose: contact management, agenda operations, loyalty, wallets, SMS sending, verification, reporting, webhooks, etc. No two tools appear to do the same thing, even within verification (initiate, check, resend, reset are clearly differentiated).

    Naming Consistency5/5

    All tools use a consistent verb_noun pattern with snake_case (e.g., add_contact, list_agendas, send_sms, verify_phone). No mixing of styles like camelCase or inconsistent verb choices.

    Tool Count4/5

    30 tools is on the higher side but each serves a concrete feature of the SMS platform (contacts, loyalty, wallets, sending, reporting, verification, webhooks, metrics). The scope justifies the count, though it could be slightly trimmed.

    Completeness5/5

    The tool surface covers nearly every aspect of the SMS Masivos platform: complete CRUD for contacts and agendas, sending with campaign stats, detailed reports, loyalty and wallet management, phone verification, webhook configuration, balance checking, and usage metrics. No obvious gaps for the stated domain.

  • Average 3.9/5 across 30 of 30 tools scored. Lowest: 2.9/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 2 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 carry the full burden. It only states the basic operation and required fields, but lacks details on idempotency, error handling, authentication requirements, or what happens on duplicate additions. This is insufficient for behavioral understanding.

    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 that is front-loaded with the main action. It is concise but could benefit from a brief structure (e.g., separate requirement info).

    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 no output schema and no annotations, the description should provide more context about behavior, error cases, or return value. It only covers the most basic usage, leaving agents underinformed for robust execution.

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

    Parameters2/5

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

    Schema coverage is 100%, so the schema already describes all parameters. The description adds that loyalty_key comes from list_loyalty_cards (already in schema) and phone format (already in schema). However, it omits the required customer_name parameter, which could mislead an agent into thinking only two parameters are needed.

    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 (adds a contact to a loyalty card) and mentions required inputs (loyalty_key and phone). It distinguishes from sibling tools like add_contact and add_wallet_contact by specifying the loyalty card context.

    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 (adding a contact to a loyalty card) but does not provide explicit guidance on when not to use or alternatives. Sibling tool names give context, but no direct comparison is 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 description must bear full burden. Only states it 'verifies', missing details like whether the code is consumed, allowed attempts, or error handling. No output schema to clarify return behavior.

    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?

    Two sentences, front-loaded with purpose and immediate context. Efficient for the information provided.

    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 no output schema and a simple verification flow, the description lacks critical information about tool behavior (e.g., output on success/failure, whether it invalidates the code). Incomplete for an agent to invoke correctly without guessing.

    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 descriptions cover parameters (100% coverage). The description adds that the same number and country code must match those used in verify_phone, marginally adding context beyond schema. Baseline of 3 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?

    Clearly states the tool verifies an OTP code sent to a phone number. References the companion tool 'verify_phone', distinguishing it as the post-send verification step. However, could be more explicit about the result of verification.

    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?

    Implies usage after verify_phone by mentioning 'previamente enviado... con verify_phone', but does not explicitly state when to use this tool versus alternatives like resend_verification or reset_verification.

    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 burden for behavioral disclosure. It only lists required parameters and does not mention side effects, idempotency, permissions, or error conditions, leaving significant 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 extremely concise with two sentences: the first states the purpose, the second lists requirements. No unnecessary words, and critical information is front-loaded.

    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 no output schema and no annotations, the description lacks behavioral and outcome details (e.g., what happens on success, duplicate handling, return data). This undermines the agent's ability to fully understand the tool's effect.

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

    Parameters3/5

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

    Schema coverage is 100%, so the schema already documents each parameter. The description adds a usage hint to obtain wallet_key and usertool_id from list_wallets, which provides minor added context but does not substantially enhance semantic understanding 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 'agrega un contacto a un monedero electrónico' (add a contact to an electronic wallet), specifying the verb and resource. It distinguishes from sibling tools like 'add_contact' or 'add_loyalty_contact' by mentioning the wallet context, but does not explicitly contrast them.

    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 (requires wallet_key and usertool_id from list_wallets), but does not provide explicit guidance on when not to use it or how it compares to alternatives like add_contact or add_loyalty_contact.

    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 burden. It describes that the client receives an SMS with a short link, but lacks details on error handling (e.g., missing template, invalid number) or side effects. The behavior is partially transparent but not comprehensive.

    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 two sentences, front-loading the action and prerequisite. It is clear and concise, though it could be slightly more compressed without losing meaning.

    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 no output schema, the description does not explain return values or success/error responses. It provides enough to understand the client experience, but misses details on what the API returns, which is important for a payment tool.

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

    Parameters3/5

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

    Schema coverage is 100%, so the schema already documents all parameters. The description does not add extra context beyond what is in the schema descriptions, meeting the baseline for high coverage.

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

    Purpose5/5

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

    The description clearly states the action (sends a payment request via SMS), the target (client), and the prerequisite (configured template). It distinguishes from siblings like send_sms by specifying it's for payment requests.

    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 mentions the template must exist and be active, providing a precondition. However, it does not explicitly state when to use this tool over alternatives like send_sms, nor does it give 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, the description carries full burden. It discloses the conditional behavior (returning all contacts if phone omitted) but does not explicitly state that the tool is read-only, does not modify data, or require any specific authentication. It also lacks details on response format or potential errors.

    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 with no unnecessary words. The primary action is stated first, followed by the conditional behavior. Every sentence adds relevant information.

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

    Completeness4/5

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

    Given no output schema, the description adequately explains the tool's return behavior (balance for a specific contact or list of contacts with balances). It covers the main functionality but could be improved by mentioning the output structure or format. It is complete for a simple query tool.

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

    Parameters4/5

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

    Schema coverage is 100% with parameter descriptions. The tool description adds value by explaining the effect of omitting 'phone' (returns all contacts with balances), which goes beyond the schema's mention of its optionality. This clarifies the functional difference in invocation.

    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 consults a contact's balance in an electronic wallet, and distinguishes behavior when phone is omitted (returns all contacts with balances). It uses a specific verb 'consulta' and resource 'saldo de un contacto'. However, it does not explicitly differentiate from sibling tools like 'check_balance' or 'get_contacts'.

    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 provides guidance on when to omit the phone parameter to get all contacts with balances. It does not mention when not to use the tool or suggest alternatives among sibling tools, but the conditional behavior is clearly explained.

    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. It reveals the upsert behavior (updates if number exists). But it does not disclose authorization requirements, rate limits, or error conditions. The behavioral info is minimal beyond the basic functionality.

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

    Conciseness5/5

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

    Two sentences, front-loaded with the core purpose, followed by key behavior (upsert). No wasted words. All sentences are necessary.

    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 10 parameters, no output schema, and no annotations. The description is too sparse to fully inform an agent. It lacks details about return values, error handling, and the behavior of optional fields. More context is needed for an agent to use it confidently.

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

    Parameters3/5

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

    Schema coverage is 100%, so baseline 3. The description does not add new meaning to any parameter beyond what the schema already provides. It only reiterates that list_key and number are required.

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

    Purpose5/5

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

    The description clearly states the action: adds a new contact to an existing agenda. It specifies the verb 'agrega' and the resource 'contacto a una agenda'. Also mentions update behavior if number exists, distinguishing it from mere insertion.

    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 lists required fields (list_key and number), which is a basic prerequisite. However, it does not provide guidance on when to use this tool versus siblings like add_loyalty_contact or add_wallet_contact, nor does it mention 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?

    No annotations provided, so description carries burden. Only states mutation (rename) without disclosing side effects, auth needs, or reversibility. Minimal detail.

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

    Conciseness5/5

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

    Single sentence, front-loaded with action, no waste. Ideal 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?

    No output schema, no behavioral details beyond basic action. Adequate for a simple rename but missing return value explanation and constraints.

    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 covers both parameters fully (100%). Description repeats schema's list_key instruction but adds no new meaning beyond the schema. Baseline 3 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?

    Description clearly states 'Cambia el nombre de una agenda existente', a specific verb+resource. It distinguishes from siblings like create_agenda and delete_agenda.

    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?

    Explicitly requires list_key obtained via list_agendas, a clear prerequisite. Does not explicitly exclude other tools but context with siblings implies appropriate usage.

    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 disclose behavioral traits. It explains that transaction_type '1' adds and '2' subtracts, and requires specific fields. However, it omits details such as whether the operation is reversible, authorization requirements, or error behavior, which are important for a financial 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?

    Two sentences, front-loaded with the action, followed by key detail on transaction_type and required fields. No extraneous text.

    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 5 required params and no output schema, the description covers the basic purpose and transaction type logic. However, it lacks information on return values, error conditions, or validation rules beyond the schema constraints, which is minimally adequate.

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

    Parameters4/5

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

    Schema coverage is 100% (each parameter has a description). The description adds value by summarizing required params and explaining transaction_type values ('1' for add, '2' for subtract) and noting that amount (monto) is positive. This goes beyond the schema descriptions.

    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 explicitly states the tool adds or subtracts balance from a contact's wallet, using a clear verb and resource. It distinguishes from sibling tools like check_balance (read-only) and list_wallets (list operation).

    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 like send_payment_request or get_wallet_contact. The description only lists required parameters but does not specify use cases, prerequisites, or when to avoid.

    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 full burden. It only says it lists cards, missing details like whether it requires authentication, pagination, ordering, or if it returns all cards. The behavior is simple, so a 3 is appropriate.

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

    Conciseness5/5

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

    Two sentences, both essential, front-loaded with the action and a key insight about the result's use. No wasted words.

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

    Completeness5/5

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

    For a simple list tool with no parameters and no output schema, the description is complete. It explains the purpose and the value of the output (loyalty_key) for subsequent operations.

    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 parameters, so baseline is 4. The description does not need to add parameter info, and it correctly implies no input needed.

    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 it lists all loyalty cards ('Lista todas las tarjetas de lealtad'), which is a specific verb and resource. While it does not explicitly distinguish from sibling tools, the context of listing vs adding/managing contacts is implicit.

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

    Usage Guidelines3/5

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

    The description implies usage by stating the loyalty_key is needed for managing contacts and recording sales, suggesting this tool is a prerequisite. However, it does not explicitly state when to use this tool over alternatives or provide conditions for use.

    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, and the description does not disclose any behavioral traits such as pagination, sorting, or side effects. It only states the basic functionality.

    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 with no fluff. Action verb 'Lista' is front-loaded, and every sentence provides useful information.

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

    Completeness4/5

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

    For a parameterless list tool with no output schema, the description adequately explains purpose and output fields. Could mention error scenarios or empty list behavior, but overall complete enough.

    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?

    No parameters exist, so schema coverage is 100%. The description adds value by explaining the output structure (wallet_key, usertool_id), which is helpful given no output 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 it lists all wallets of your account, and mentions the key fields (wallet_key, usertool_id) that are essential for other operations. This distinguishes it from sibling tools like list_agendas.

    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?

    Implicitly suggests the tool is a prerequisite for managing contacts/balances, but does not explicitly state when to use vs alternatives. No exclusion criteria or context 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?

    The description warns about irreversibility ('OPERACIÓN IRREVERSIBLE — el contacto se elimina permanentemente'), which is critical behavioral info. However, it does not cover other behavioral aspects like authentication requirements, side effects, or error handling. With no annotations, the description partially fulfills the transparency burden.

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

    Conciseness5/5

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

    Two sentences, each earning its place: first states the action, second highlights irreversibility and required inputs. No fluff, front-loaded essential 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 no output schema, the description is silent on return values or success/failure indicators. It also does not mention idempotency or behavior for non-existent contacts. For a delete tool, basic completeness is adequate but could be expanded.

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

    Parameters3/5

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

    Schema coverage is 100%, so the schema already documents all parameters. The description mentions only the two required parameters (list_key and number), which matches the schema but adds no extra meaning beyond what the schema provides. The optional email parameter is omitted from the description.

    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 'Elimina un contacto de una agenda' (deletes a contact from an agenda), providing a specific verb and resource. It distinguishes this tool from siblings like add_contact or update_contact by emphasizing deletion and irreversibility.

    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 explicitly states when to use the tool (to delete a contact) and lists required inputs (list_key and phone number). It does not explicitly exclude alternative scenarios, but the context from sibling tools makes the usage clear.

    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?

    Despite no annotations, the description discloses pagination behavior: default page=1, limit=20 (max 100), and response fields has_more and next_page for iterative fetching. This goes beyond the schema and aids agent decision-making.

    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 efficient sentences in Spanish. First sentence states the core purpose, second covers pagination. No redundant words; every sentence earns its place.

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

    Completeness3/5

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

    Covers pagination and defaults adequately, but lacks description of the response format (e.g., what fields each agenda object contains). Without an output schema, the description should include this to be fully complete.

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

    Parameters4/5

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

    Schema already documents all three parameters with descriptions, so baseline is 3. The description adds default values and pagination logic (next_page) that are not in the schema, providing meaningful usage context.

    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 tool searches agendas by name with partial, case-insensitive matching. The verb 'Busca' combined with the resource 'agendas' and qualifiers makes the purpose unambiguous and distinct from sibling tools like list_agendas.

    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 explicit guidance on when to use this tool versus siblings like list_agendas or other search tools. The description focuses on pagination internals but does not help an agent choose between 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 provided, so description must fully disclose behavior. It only mentions update action and identification, but lacks details on whether updates are partial or full, what happens to omitted fields, authorization needs, or idempotency. Minimal transparency beyond the action itself.

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

    Conciseness5/5

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

    Two sentences, efficient and front-loaded with the core action. No unnecessary words or repetition.

    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?

    With 10 parameters and no output schema, the description is brief. It covers identification and fallback but lacks information on partial updates, response behavior, or required permissions. Adequate for a simple tool but could be more complete.

    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 baseline is 3. Description adds no extra meaning beyond what the schema already provides for each parameter; it only reiterates list_key and number for identification.

    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 it updates existing contact data, identifies the contact by list_key + number, and differentiates from add_contact by suggesting its use when the contact does not exist.

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

    Usage Guidelines5/5

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

    Explicitly says when to use (update existing contact) and when not to (contact does not exist, use add_contact instead). Provides clear alternative.

    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. It discloses that the tool creates a new agenda and returns a key, but it does not mention potential side effects (e.g., whether duplicate names are allowed, idempotency, or any limits). For a creation operation, 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?

    Two sentences: the first states the purpose, the second explains the output and its usage with a sibling tool. No superfluous information, front-loaded with key action.

    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?

    The description covers the core function and links to the next step (add_contact). It does not detail error conditions or edge cases, but for a simple creation tool with a clear output, it is reasonably complete. The lack of an output schema is compensated by the explicit mention of list_key.

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

    Parameters3/5

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

    Schema coverage is 100% as all parameters have descriptions in the input schema. The description does not add any additional meaning beyond what the schema already provides; it only references the returned key. Baseline of 3 is appropriate.

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

    Purpose5/5

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

    Description clearly states it creates an agenda (contact list) and returns a list_key needed for adding contacts via add_contact. The verb 'crear' and resource 'agenda' are specific, and the mention of returning the key distinguishes it from sibling tools like list_agendas or add_contact.

    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 implies that this tool should be used before add_contact by linking the returned list_key to that operation. It provides context on the workflow but does not explicitly state when not to use this tool or compare it to alternatives like rename_agenda or delete_agenda.

    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 full burden. It discloses the tool copies a contact and the required conditions, but does not mention side effects, permissions, rate limits, or error behavior. For a mutation tool, more behavioral details would be beneficial, but the description provides the core logic.

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

    Conciseness5/5

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

    The description is two concise sentences in Spanish, each earning its place. The first sentence states the core action, and the second adds the precondition and use case. No redundancy or fluff.

    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 3 required parameters, full schema coverage, and no output schema, the description adequately explains the purpose and precondition. However, it lacks information about the return value (e.g., success indicator or duplicated contact ID) and error handling, which would make it more complete for an agent invoking the tool.

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

    Parameters3/5

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

    The input schema already provides 100% coverage with descriptions for all three parameters. The description adds context about the precondition and use case but does not add new semantics for individual parameters beyond what the schema offers. Baseline is 3, and this meets 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 verb 'copiar' and the resource 'contacto de una agenda a otra', specifying the source and destination lists. It distinguishes itself from siblings by highlighting its specific use case of moving qualified prospects between lists without re-typing data, which differs from other contact-related tools like 'add_contact' or 'update_contact'.

    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 explicitly states the precondition that the contact must exist in the source list and must not exist in the destination list. It also provides a clear use case ('mover prospectos calificados'), implying when to use the tool. However, it does not explicitly name alternative tools or state when not to use, which prevents a perfect score.

    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 provided, so description carries full burden. It mentions ordering and filtering but omits pagination, rate limits, or default behavior beyond what the schema covers.

    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-loading the core purpose and adding a practical next step. No redundant information.

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

    Completeness4/5

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

    For a list tool with 4 optional params and no output schema, the description covers the main functionality, sorting, filtering, and a use case. Could mention sandbox filtering or pagination limits, but schema covers those.

    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 baseline is 3. The description adds no significant meaning beyond the schema; it only reiterates date filtering.

    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 lists SMS campaigns sorted by most recent, with optional date filtering. It distinguishes from siblings like get_campaign_stats by focusing on listing.

    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 guides the user to use campaign IDs with get_campaign_stats for delivery statistics, providing context for subsequent actions. It doesn't explicitly exclude other uses, but the guidance is clear.

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

  • Behavior3/5

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

    With no annotations, the description carries the behavioral disclosure burden. It mentions sandbox mode behavior (no real send, no credit consumption) and character limits. But it does not discuss error handling, return values, or potential side effects like billing for real sends.

    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 paragraph but remains concise and covers key points. It could be more structured (e.g., bullet points), but it is not verbose and front-loads the essential 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?

    The tool has no output schema, but the description does not explain what the tool returns (e.g., success status, message ID). Given the complexity of 8 parameters and no output description, it lacks completeness for a sending tool.

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

    Parameters4/5

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

    Schema coverage is 100%, so baseline is 3. The description adds value by explaining that numbers should be without country code, clarifying the message length context (1600 chars = 10 segments), and detailing the date format (Mexico time) and flash/SMS semantics.

    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 sends SMS messages via SMS Masivos, specifying required elements (phone numbers, message, country code). It differentiates from siblings like send_payment_request and get_contacts by its specific focus on SMS sending.

    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 guidance on using sandbox='1' for testing without real sending and notes the default country code (52 for Mexico). However, it does not explicitly list when to avoid using the tool or alternatives among siblings.

    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 carries full burden. Discloses non-obvious behaviors: max 7 days, operation can take up to 5 minutes, API has usage limit of 4 reports per user. Does not explicitly state read-only, but report generation implies no mutation.

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

    Conciseness4/5

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

    Description is a single paragraph with four sentences. First sentence states core purpose, then alternative, then caveats. No redundancy, but could be slightly trimmed. For a report tool, length is acceptable.

    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 no output schema, description explains return format (individual message with recipient, status, operator, reference). Covers parameter constraints and limitations. Missing error handling details, but sufficient for typical 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?

    Schema coverage is 100% (all parameters described). Description adds value by re-emphasizing max 7-day range and explaining 'sandbox' parameter purpose. Not significantly beyond schema, so baseline 3 is appropriate.

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

    Purpose5/5

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

    Description uses specific verb 'Genera' (generates) and noun 'reporte detallado de mensajes' with scope 'en un rango de fechas (MÁXIMO 7 DÍAS)'. It distinguishes from sibling 'get_report_details' by stating returns individual messages vs. aggregates.

    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?

    Explicitly states when to use this tool (for detailed individual messages) and when to use alternative 'get_report_details' (for quick aggregates). Provides constraints: max 7 days, API limit of 4 reports per user, and potential 5-minute wait. No explicit 'when not to use' but alternative covers it.

    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 full burden. It discloses the data returned and phone condition, but lacks details on authentication, error handling, or edge cases.

    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 with no wasted words, front-loading the core purpose and a key usage condition.

    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 no output schema, the description outlines return content but lacks structure details, error info, or performance notes. Adequate for a simple query tool but not exhaustive.

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

    Parameters4/5

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

    Schema coverage is 100% with descriptions. The tool description adds context by explaining the return data and the conditional effect of the phone parameter beyond what the schema provides.

    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 queries loyalty contact data (sellos, canjes) and specifies the conditional behavior when phone is omitted, distinguishing it from siblings like get_contacts or add_loyalty_contact.

    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 a usage hint about the phone parameter's effect, but does not explicitly compare to alternative tools or state 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.

  • Behavior3/5

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

    No annotations provided, so the description carries the full burden. It describes the output metrics but does not explicitly state the tool is read-only or non-destructive. The implication is clear, but without annotations, more explicit disclosure would improve transparency.

    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 a clear list, no fluff. Every word contributes to understanding the tool's purpose and output.

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

    Completeness5/5

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

    For a tool with no parameters, no output schema, and low complexity, the description is complete. It explains exactly what metrics are returned, making it self-contained for an agent to invoke.

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

    Parameters4/5

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

    With 0 parameters and 100% schema coverage, the description does not need to add parameter info. It adds value by explaining the output, which is sufficient for a parameterless 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 clearly states the tool shows MCP usage metrics for the current session, listing specific metrics (calls, errors, latency, sandbox vs production). It distinguishes from siblings which focus on individual resources (contacts, campaigns, etc.).

    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 viewing session-level metrics, but lacks explicit guidance on when to use this tool versus alternatives (e.g., for debugging vs. getting entity-specific stats). No when-not-to-use or alternative references.

    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 must bear full burden. It mentions resetting state and optional code generation but does not disclose return values, success/failure conditions, or any side effects beyond what is stated. For a simple mutation, it's 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 two sentences, front-loaded with the core purpose, and every sentence adds value. No fluff.

    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?

    No output schema is provided, and the description does not mention return values. For a mutation tool, this leaves some uncertainty about what the agent will receive. However, the context of usage and parameters is well covered.

    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 has 100% description coverage, so each parameter is already documented. The description adds little beyond the schema, except for the mention of optional code generation. Baseline 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the verb (reset), the resource (phone verification state), and what it does (clear failed attempts, optionally generate new code). It also distinguishes from the sibling verify_phone by explicitly mentioning it avoids creating a new verification.

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

    Usage Guidelines5/5

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

    The description provides explicit when-to-use guidance: when the user exceeded attempts or code expired, and you want to allow retry without creating a new verification. It also names the alternative tool verify_phone.

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

  • Behavior4/5

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

    With no annotations, the description takes full burden. It discloses optional channels (voice, WhatsApp), sandbox mode, and implies expiration through a parameter. No contradictions or hidden behaviors.

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

    Conciseness5/5

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

    Two sentences, no filler. Front-loaded with main action and optional methods, then subsequent step. Perfectly concise.

    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?

    Tool has 8 parameters and no output schema, but description covers the overall flow. Could include response format or error conditions, but sufficient given sibling tools support the process.

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

    Parameters3/5

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

    Schema coverage is 100%, so all parameters are documented in the schema. Description adds only high-level context (e.g., optional delivery methods) but no extra semantics beyond what schema provides.

    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 uses specific verb 'Inicia una verificación de número de teléfono' and specifies resource (phone number), distinguishing it from siblings like check_verification or send_sms. It clearly states the action and optional delivery methods.

    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?

    Explicitly directs to use check_verification afterward, establishing the workflow. Lacks explicit exclusions or alternatives but clear enough for the specific task.

    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 carries full burden. It discloses the read-only nature, auto-detection of sandbox mode, and the list of returned metrics. Lacks mention of permissions or side effects, but for a read operation the transparency is adequate.

    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?

    Two sentences plus a bullet list showing metrics. Front-loaded with purpose. Could be more structured but is concise and to the point without fluff.

    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?

    Covers input parameters well and lists output fields despite no output schema. Does not mention error handling or performance, but for a simple stats retrieval tool it provides sufficient context for correct 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?

    Schema coverage is 100%, baseline 3. Description adds value by instructing to get campaign_id from send_sms result and noting auto-detection of sandbox, though the sandbox parameter's necessity is ambiguous. Overall adds meaningful guidance beyond 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 starts with a clear verb ('Obtiene') and specific resource ('estadísticas de entrega de una campaña SMS'), listing the exact metrics. It clearly distinguishes itself from sibling tools like send_sms or list_campaigns by focusing on post-delivery statistics.

    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?

    States it works for 'campañas enviadas o completadas', providing clear context on when to use. Does not explicitly state when not to use or name alternatives, but the context is sufficient for an agent to infer appropriate usage.

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

  • Behavior4/5

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

    With no annotations, the description carries full burden. It discloses destructive delete with human confirmation, URL restrictions (https, no private IPs), and that the webhook receives SMS delivery events. It could mention error handling or what happens if no webhook exists, but overall strong.

    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 concise with no wasted sentences. It front-loads the purpose, lists actions with explanations, and adds important constraints. Every sentence earns its place.

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

    Completeness3/5

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

    The description lacks any mention of return values or output, which would be helpful given no output schema. It covers the tool's behavior well but misses what the agent can expect back from actions like 'list' or 'add'. Adequate but incomplete.

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

    Parameters4/5

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

    Schema coverage is 100%, so baseline is 3. The description adds value by noting that URL must be https and rejects private IPs/localhost, which is not in the schema. This extra constraint justifies a 4.

    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 it manages a webhook (one per user) with specific actions (list, add, toggle, delete). It distinguishes from sibling tools as no other tool manages webhooks, making its purpose unique and well-defined.

    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 explains the actions and constraints (one webhook per user, destructive delete with human confirmation) but does not explicitly state when not to use this tool or compare to alternatives. Since no alternative exists, the guidance is sufficient.

    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?

    The description notes each SMS consumes 1 credit, adding behavioral context beyond the tool name. Without annotations, it provides relevant safety information (read-only, non-destructive) and explains the credit consumption model.

    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 convey purpose, consumption relationship, and usage recommendation with no wasted words. The key action is front-loaded.

    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 parameterless tool with no output schema, the description covers the core functionality and usage context. It could mention the return format (e.g., number of credits) but remains adequate for selection and 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?

    With no parameters and 100% schema coverage, the description adds no param details but doesn't need to. The baseline of 4 is appropriate as the description sufficiently clarifies the tool's purpose.

    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 checks the balance of available SMS credits, specifying the resource (SMS credits) and the action (consulta). It distinguishes itself from sibling tools like send_sms or verify_phone, which have different purposes.

    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 explicitly advises using this tool before sending messages to verify balance, providing clear when-to-use guidance. It does not exclude alternative uses, but no sibling tool duplicates this functionality.

    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. It states the tool retrieves all contacts, implying a read-only operation, but does not explicitly confirm it has no side effects or describe the output format. The description is adequate but minimally 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 only two sentences, both front-loaded with the primary purpose and usage hint. Every word serves a purpose, with zero redundancy or unnecessary detail.

    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 a single parameter, no output schema, and a clear context from sibling tools, the description is mostly complete. It explains what the tool does and a prerequisite, but lacks details about the return format or any limitations (e.g., no pagination). It meets the needs for a simple retrieval tool.

    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 already describes the list_key parameter with 100% coverage. The description adds value by specifying that this key is obtained via list_agendas, which provides context beyond the schema definition.

    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 verb 'Obtiene' (gets) and specifically identifies the resource as 'todos los contactos de una agenda específica' (all contacts of a specific agenda). This clearly distinguishes it from sibling tools like add_contact, delete_contact, etc., which perform other operations.

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

    Usage Guidelines5/5

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

    The description explicitly instructs to use list_agendas first to obtain the list_key, providing clear prerequisite guidance. This helps the agent understand the correct invocation order and use case for this tool.

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

  • Behavior4/5

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

    With no annotations, the description must convey behavior. It indicates a read-only list operation and explains the importance of the list_key in the output. It does not detail pagination or exact output structure, but for a zero-parameter list tool, this is sufficient and adds value beyond a minimal description.

    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 concise with two sentences. It front-loads the core action ('Lista todas las agendas') and immediately adds valuable context about the list_key. Every word serves a purpose, with no repetition 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?

    Given the tool's simplicity (no parameters, no output schema, many siblings), the description covers the essential: listing all agendas and the critical role of the list_key. It could mention output fields or pagination, but it provides enough context for an agent to use the tool effectively.

    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 the baseline is 4. The description does not need to add parameter semantics, and it correctly refers to the schema's coverage (trivially 100%). No additional parameter information is necessary.

    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 verb 'Lista' (Lists) and specifies the resource 'agendas (listas de contactos)', clearly stating what the tool does. It distinguishes from sibling tools like create/delete/find by focusing on listing all items, and adds context about the list_key for further operations.

    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 on when to use this tool (to obtain the list_key needed for adding contacts or retrieving contacts). However, it does not explicitly mention when not to use it or name alternative tools for specific needs like searching, so it slightly misses the full 'exclusions' criterion.

    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 are provided, so the description bears full responsibility. It discloses key behaviors: resending OTP, default same code, option to regenerate with reset_code, and channels like voice and WhatsApp. It could mention prerequisites (active verification) or side effects, but overall it is sufficiently 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 concise with four sentences in Spanish. It is front-loaded with the core action and uses no unnecessary words. Every sentence contributes meaningful information.

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

    Completeness4/5

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

    Given the tool has 8 parameters (2 required), no output schema, and no annotations, the description covers the main use case and key parameter behavior. It could be more complete by mentioning that the verification must be active or what happens on failure, but it is adequate for most scenarios.

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

    Parameters4/5

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

    Schema coverage is 100%, so baseline is 3. The description adds value by explaining the default behavior of reusing the same code and the effect of reset_code='1' to generate a new one. This contextualizes the parameters beyond their schema descriptions.

    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 verb 'Reenvía' (resends) and the resource 'código OTP a un número que ya tenía una verificación activa con verify_phone'. It distinguishes from siblings by referencing the prerequisite verify_phone, making its purpose unambiguous.

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

    Usage Guidelines4/5

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

    The description provides clear context: it is useful when the user reports not receiving the SMS, and it explains the default behavior versus using reset_code='1'. However, it does not explicitly state when not to use this tool or mention alternatives like reset_verification, which is a sibling tool.

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

  • Behavior4/5

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

    Without annotations, the description bears full burden. It indicates the tool is a fast, read-only query. No contradictions; discloses that it returns aggregates. Could mention idempotency or safety, but for a simple retrieval tool this is sufficient.

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

    Conciseness5/5

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

    Three concise sentences: first declares function, second provides use-case guidance, third specifies prerequisite. No wasted words, all value-adding.

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

    Completeness5/5

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

    Given no output schema, the description lists all returned fields. It provides speed comparison, prerequisite hints, and context about sibling tool. Complete for a simple query tool with two parameters.

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

    Parameters3/5

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

    Schema coverage is 100%, so the schema already describes both parameters. The description adds only the source for campaign_id, which is helpful but not essential beyond schema. Baseline 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states it returns quick aggregates (total sent, delivered, etc.) by campaign. It distinguishes from the sibling 'generate_report' by emphasizing speed and KPI focus, making the purpose unambiguous.

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

    Usage Guidelines5/5

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

    Explicitly states when to use this tool: 'Much faster than generate_report when you only need KPIs'. Also instructs where to obtain the required campaign_id ('from list_campaigns or send_sms'), providing clear usage context.

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

  • Behavior5/5

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

    No annotations are provided, so the description bears full responsibility. It clearly communicates that the operation is destructive and irreversible, requires human confirmation, and may be rejected under certain conditions. This fully discloses the tool's behavioral traits.

    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 consists of two short sentences, front-loading the core action and consequence, then adding necessary warnings and conditions with no superfluous words.

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

    Completeness5/5

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

    For a destructive tool with one parameter and no output schema, the description is complete: it states the action, all-side effects, required human confirmation, and a failure condition. No gaps.

    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 has 100% description coverage for the single parameter 'list_key', describing it as 'Clave única de la agenda a eliminar'. The description does not add additional meaning beyond the schema, so a baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the tool deletes an agenda and all its contacts permanently. It uses a specific verb ('eliminar') and resource ('agenda y TODOS sus contactos'), distinguishing it from siblings like delete_contact.

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

    Usage Guidelines5/5

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

    The description explicitly advises when to use this tool (to permanently delete an agenda) and provides strong caution: 'OPERACIÓN DESTRUCTIVA E IRREVERSIBLE — pide confirmación explícita al humano antes de invocar.' It also notes a condition when the API rejects the operation (linked to loyalty cards or wallets), giving clear usage guidance.

    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-server MCP server

Copy to your README.md:

Score Badge

mcp-server 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/SMS-Masivos/mcp-server'

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