Skip to main content
Glama
DerechoVirtual

centralita-vpbx-mcp

Server Quality Checklist

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

  • Disambiguation4/5

    Most tools have clear, distinct purposes (e.g., originate_call vs click_to_call_external), but several call initiation and transfer tools are quite similar and could confuse an agent without careful reading of descriptions.

    Naming Consistency5/5

    All tools follow a consistent 'pbx_verb_noun' pattern, with descriptive names like pbx_list_extensions, pbx_get_call, pbx_hangup. Naming is uniform and predictable.

    Tool Count3/5

    52 tools is high, potentially overwhelming for an agent. However, they are organized by function (calls, queues, agents, etc.) and serve a complex domain, so it is borderline appropriate.

    Completeness3/5

    The set covers core PBX operations (calls, queues, agents, voicemails, etc.) well, but lacks management tools for queues, announcements, and surveys (only list/get available). Notable gaps in CRUD lifecycle.

  • Average 3.6/5 across 52 of 52 tools scored. Lowest: 2.2/5.

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

    • No community issues in the last 6 months
    • 1 commit 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

  • Behavior3/5

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

    Annotations provide readOnlyHint=false, destructiveHint=false, and openWorldHint=true. The description adds the note '⚠️ Real call,' indicating that the tool makes an actual phone call. This is minimal additional context, but sufficient given the annotation coverage.

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

    Conciseness3/5

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

    The description is extremely concise (one sentence plus emoji). While it is front-loaded with the key concept, it sacrifices clarity and completeness. Every sentence is short, but collectively insufficient.

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

    Completeness2/5

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

    With 4 parameters, no output schema, and no nested objects, the description is highly incomplete. It omits any information about return values, side effects, prerequisites, or usage examples, leaving gaps for an AI agent to correctly invoke the tool.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description only loosely references 'to' and 'queue name' without explaining any parameter meaning, format, or constraints. No value added over the bare schema.

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

    Purpose2/5

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

    Description is vague: 'inverse variant: dials 'to' in the name of the queue.' It does not clearly state that the tool initiates a call, nor does it distinguish from sibling tools like pbx_click_to_call_queue. The warning about 'real call' adds some context but purpose remains unclear.

    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 vs alternatives. The sibling tools include pbx_click_to_call_queue and pbx_click_to_call_external, but the description provides no differentiation or context for selection.

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

  • Behavior2/5

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

    Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds no behavioral context beyond what annotations provide. It does not explain that this tool lists all agents (read operation).

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

    Conciseness2/5

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

    Extremely sparse: a single phrase with no structure. It is under-specified rather than concise. Could easily include 'List all agents' for clarity.

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

    Completeness2/5

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

    Given the tool's simplicity (no params, no output schema), the description should state that it returns a list of all agents. It fails to do so, leaving the agent uncertain about what the tool produces.

    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, and schema coverage is 100%. The description does not need to explain params. The baseline for zero-param tools is 4.

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

    Purpose2/5

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

    The description 'Agentes del call center' is too vague. It names the resource (agents) but does not specify the action ('list'). It fails to distinguish from siblings like 'pbx_get_agent' or 'pbx_agent_status'.

    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. Siblings exist for specific agent queries (e.g., pbx_get_agent), but no comparison is provided.

    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?

    Annotations already indicate mutation (readOnlyHint=false) and destructiveness (destructiveHint=true). The description adds no behavioral details beyond the name. The destructive hint may be slightly misleading for a state-change operation, but no clear contradiction.

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

    Conciseness3/5

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

    Single sentence is concise but excessively minimal; lacks structure (e.g., no line breaks, no examples). Could be expanded slightly without losing brevity.

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

    Completeness2/5

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

    For a mutation tool with destructive hint and no output schema, the description should at least mention side effects or return value. It provides no context beyond the basic action, leaving gaps.

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

    Parameters1/5

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

    Schema coverage is 0% with no parameter descriptions. The description does not explain what extensionId or voicemailId represent or how to obtain them, leaving the agent without necessary context.

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

    Purpose4/5

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

    Description clearly states the action (marks a voicemail as unlistened) matching the tool name. However, it does not explicitly distinguish from the sibling tool 'pbx_mark_voicemail_read', though the opposite intent is implied.

    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 (e.g., after listening to a voicemail) or when to avoid it. No alternatives or conditions provided, relying solely on the tool name to convey context.

    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?

    Annotations already declare readOnlyHint=true and openWorldHint=true, indicating this is a read-only, open-world operation. The description adds no additional behavioral context about what data is aggregated, how it is scoped, or any limitations.

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

    Conciseness3/5

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

    The description is very brief (one short sentence), which is concise but at the expense of informativeness. Every word should add value, but 'agregado' and 'cambios' do not significantly clarify the output.

    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 parameters, the description should thoroughly explain what the tool returns and how it can be used. It fails to do so, leaving the agent to guess the exact output format or field meanings.

    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, and the schema coverage is 100% (implicitly empty). The description does not need to explain parameters. Baseline score 4 is appropriate.

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

    Purpose3/5

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

    The description states it provides an aggregate count of agent state changes, but it's not explicitly clear what the output represents (e.g., counts per state, per agent). The title suggests a count of agent states, but the description adds 'changes', which is ambiguous. A more specific verb and resource description would improve clarity.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like pbx_agent_status (which likely gives current status) or pbx_list_agents. The description does not mention context or exclusions.

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

  • Behavior1/5

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

    Annotations declare readOnlyHint=true, but the description indicates the tool saves audio to disk, a clear write operation. This is an annotation contradiction. Additionally, no other behavioral traits (like file overwrite rules or size limits) are disclosed. The openWorldHint does not resolve the inconsistency.

    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 and no filler. However, it could include more detail without becoming verbose. For a simple tool, this is acceptable but not perfect.

    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 3 parameters, no output schema, and contradictory annotations, the description lacks critical details: exact output format, error cases, auth requirements, and disk location. Sibling tools suggest a recordings ecosystem, but the description does not leverage that context.

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

    Parameters2/5

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

    With 0% schema description coverage, the description must explain parameters. It does not mention extensionId, voicemailId, or filename. Only the purpose of the tool implies voicemailId identifies the message, but no explicit semantics are added. The filename parameter's role is unclear.

    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 downloads voicemail audio and saves it to a folder, returning the local path. It distinguishes from siblings like pbx_get_recording_url (which returns a URL) and pbx_get_voicemail (which gets metadata). The verb 'descarga' and resource 'audio de buzón' are specific.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like pbx_get_recording_url or pbx_download_recording. No prerequisites or when-not-to-use conditions are mentioned. The description assumes the agent already knows the context.

    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?

    Annotations already declare readOnlyHint=true and openWorldHint=true, covering safety and variability. The description adds no further behavioral context (e.g., return format, ordering). Baseline 3 due to annotation coverage, but no extra value.

    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 extremely concise, using only 3 words. It is front-loaded with the subject, but could be more explicit ('list all configured call queues') without adding bulk. Still efficient.

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

    Completeness3/5

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

    Given no output schema and no parameters, the description is minimal. It does not clarify what the list contains (names, IDs, objects). Annotations provide safety context, but the return format is ambiguous, leaving the agent without full guidance.

    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, schema coverage is 100% and no param info is needed. The description does not add meaning beyond the schema, but baseline is 4 for zero-parameter tools. No additional explanation is required.

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

    Purpose2/5

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

    The description 'Colas de llamadas configuradas' is a noun phrase defining queues, not an action phrase stating what the tool does. It relies on the title 'Listar colas' to convey the list action, but the description itself lacks a verb, making it unclear that it retrieves a list.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool vs. alternatives like pbx_get_queue or pbx_queue_state. The description does not differentiate from siblings or suggest appropriate contexts.

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

  • Behavior2/5

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

    The annotations already indicate destructiveHint=true, and the description adds only that it updates or creates. It does not disclose what happens on update (e.g., overwrite behavior, required fields beyond name/number, or response). Minimal added value.

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

    Conciseness5/5

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

    The description is a single concise sentence with no redundant information. It is front-loaded and efficiently conveys the tool's action and key fields.

    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 low schema coverage, the description lacks critical context: it does not clarify whether the tool creates a new contact or updates an existing one based on name or other criteria, nor does it describe return values or error conditions. Incomplete for agent decision-making.

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

    Parameters2/5

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

    Schema description coverage is only 33% (only speedDial has a description). The description lists all three parameters but adds no additional meaning about format, constraints, or behavior for name and number. It fails to compensate for the low schema coverage.

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

    Purpose4/5

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

    The description clearly states the tool creates or updates a contact (verb+resource) and lists the fields (name, number, speed dial). It distinguishes from read tools like pbx_list_contacts and pbx_get_contact due to the verb, but lacks explicit differentiation.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool vs. alternatives, such as whether to use it for creating vs. updating, or prerequisites like existence of a contact. No when-not conditions are mentioned.

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

  • Behavior2/5

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

    Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds no behavioral context beyond claiming 'detail'—it does not specify what fields are returned, permissions required, or any side effects. No contradiction with annotations.

    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, efficient sentence with no wasted words. However, it could be slightly expanded to include parameter detail without losing conciseness.

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

    Completeness2/5

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

    Given the simplicity (one param, no output schema) and available annotations, the description is still incomplete: it omits return value information and usage context relative to sibling tools, leaving the agent needing additional inference.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the description only references 'id' indirectly ('por su id') without explaining what the ID represents (e.g., agent identifier). It fails to add meaningful semantics beyond the schema's parameter name.

    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 retrieves agent details by ID ('Detalle de un agente por su id.'). This directly communicates the verb (get), resource (agent), and identifier (id), and distinguishes it from list or status tools among siblings.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like pbx_list_agents or pbx_agent_status. It only implies usage when an agent ID is known, but does not exclude other tools or state conditions.

    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?

    Annotations already provide readOnlyHint=true and openWorldHint=true, indicating a read-only operation. The description adds no additional behavioral context beyond what annotations offer, so a score of 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.

    Conciseness3/5

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

    The description is a single short sentence, which is concise but too brief. It could be expanded to include parameter context or usage hints without redundancy.

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

    Completeness2/5

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

    Given the simplicity of the tool and the presence of annotations, the description is incomplete. It does not specify what details are returned, nor does it mention that IDs are required. The openWorldHint suggests variable response, but no further context is provided.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain the meaning of extensionId or voicemailId. The description fails to compensate for the lack of schema descriptions, leaving the agent without clarity on parameter 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 'Detalle de un mensaje de voz concreto' clearly indicates the tool retrieves details of a specific voicemail. It distinguishes itself from sibling tools like pbx_list_voicemails (list), pbx_download_voicemail_audio (download audio), and pbx_mark_voicemail_read/unread (mark).

    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. It does not mention prerequisites (e.g., using pbx_list_voicemails to obtain IDs) or scenarios where this tool is appropriate.

    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?

    Annotations indicate readOnlyHint and openWorldHint, which the description does not expand upon. No additional behavioral traits (e.g., pagination, authorization) are disclosed beyond the annotations.

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

    Conciseness3/5

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

    The description is extremely concise (one sentence) but too brief to provide sufficient context. It is not verbose, but could be more informative without being long.

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

    Completeness2/5

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

    Given the simple list operation and lack of output schema, the description does not clarify what data is returned (e.g., survey IDs, names). The agent may lack full context for correct usage.

    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 the schema fully covers the input. The description does not need to add parameter details, and the base score of 4 applies due to 100% schema coverage.

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

    Purpose4/5

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

    The description clearly states the tool lists configured satisfaction surveys ("Encuestas de satisfacción configuradas.") and is distinct from sibling tools since no other survey-related tool exists.

    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 alternatives is provided. Since there are no sibling survey tools, it is implicitly the only choice, but the description lacks context such as prerequisites or typical use cases.

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

  • Behavior3/5

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

    Annotations already declare readOnlyHint=true and openWorldHint=true, indicating safe read operation. The description adds 'live status' which implies real-time nature, but doesn't disclose specific behaviors or data returned.

    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?

    One short sentence with no waste. It is front-loaded with the core function. However, it could be more informative while remaining concise.

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

    Completeness2/5

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

    With no output schema and one parameter, the description fails to specify what 'live status' includes (e.g., waiting calls, agents, etc.). The tool lacks sufficient context for an agent to understand the return value.

    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 0% for the single parameter queueNumber. Description says 'by its number' but adds no extra meaning beyond the parameter name. No format, constraints, or examples provided.

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

    Purpose4/5

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

    The description 'Live status of a queue by its number' clearly states the tool returns live status for a queue given its number. It distinguishes from siblings like pbx_get_queue (static details) and pbx_queue_waittime (specific metric), though not explicitly.

    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 pbx_queue_callers, pbx_queue_waittime, or pbx_live_status. The description provides no context for selection.

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

  • Behavior2/5

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

    Annotations indicate this is not read-only (readOnlyHint=false) and not destructive (destructiveHint=false), but description does not add any behavioral traits such as permissions required, side effects, or what happens if the call is not recording. OpenWorldHint=true suggests unforeseen side effects, but no clarification is given.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise, but it lacks necessary detail. It could be more informative without becoming verbose. It is front-loaded but too minimal.

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

    Completeness2/5

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

    Given the simplicity (1 param, no output schema), the description still misses essential context: prerequisites (call must be in recording state), error cases, and return behavior. Compares poorly to siblings like pbx_start_recording.

    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 0%, and the description does not explain the callId parameter beyond 'indicated active call'. No format, source, or validation information is provided. The description should compensate but fails to add value.

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

    Purpose5/5

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

    The description clearly states it stops recording of an active call. The verb 'detiene' (stops) and resource 'grabación de la llamada activa' (recording of the active call) are specific. It distinguishes from siblings like pbx_start_recording and pbx_hangup.

    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 vs alternatives like pbx_hangup or pbx_start_recording. No context about prerequisites (call must be recording). The description does not help the agent decide between this and other call-modifying tools.

    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?

    Annotations already indicate destructiveHint=true, so the description does not need to restate that. However, it adds no additional behavioral context beyond the literal action. The description is adequate given annotation coverage.

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

    Conciseness4/5

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

    The description is a single concise sentence with no unnecessary words. However, it could be slightly improved by front-loading the purpose more explicitly (though it already does).

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

    Completeness2/5

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

    The description lacks detail on return values, potential errors, or side effects. Given the tool is destructive (as per annotations) and has no output schema, the description should provide more behavioral context. It is only barely adequate.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description provides no explanation of the two parameters (extensionId, voicemailId). For a tool with only two required parameters, the description should clarify them (e.g., which extension the voicemail belongs to).

    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: marking a voicemail as read. It uses a specific verb ('Marca') and resource ('mensaje de voz'), and it implicitly differentiates from sibling tools like pbx_mark_voicemail_unread and pbx_delete_voicemail.

    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. There is no mention of context, prerequisites, or when not to use it (e.g., for marking unread or deleting).

    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?

    Annotations already indicate destructiveHint=true and readOnlyHint=false. The description adds '⚠️ Acción irreversible' (irreversible action), reinforcing the destructive nature. However, it does not disclose auth requirements, rate limits, or detailed side effects beyond deletion.

    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 sentence with a warning emoji, concise and front-loaded. It effectively communicates the action and irreversibility without extra verbiage.

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

    Completeness3/5

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

    The description covers the action and irreversibility, but does not mention expected output (e.g., success confirmation), prerequisites (e.g., voicemail must exist), or error conditions. For a simple delete tool with no output schema, this is minimally adequate.

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

    Parameters1/5

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

    The input schema has two string parameters (extensionId, voicemailId) with 0% schema description coverage, meaning the schema provides no semantic help. The description does not mention or explain these parameters, leaving agents without guidance on what values to provide.

    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 mensaje de voz del buzón de una extensión' (Deletes a voicemail message from an extension's mailbox), specifying the verb and resource. Among sibling tools, pbx_delete_voicemail is the only delete operation for voicemails, distinguishing it from list, get, download, and mark tools.

    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 delete versus other actions (e.g., marking as read/unread). The description only warns of irreversibility but does not provide context for appropriate use or mention alternatives.

    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 adds the warning 'Real call', consistent with openWorldHint=true. However, it does not disclose potential side effects, authentication requirements, or what happens to the caller after queueing. Annotations already indicate it's not read-only and not destructive, but the description minimally extends transparency.

    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 very short and to the point, consisting of one sentence and a warning. It is concise but could benefit from more detail on parameters without becoming verbose.

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

    Completeness2/5

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

    Given the complexity (5 parameters, no output schema, no param descriptions), the description is insufficient for an agent to invoke the tool correctly. Key details about optional parameters and return behavior are missing.

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

    Parameters2/5

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

    With 0% schema description coverage and 5 parameters, the description only implicitly covers 'to' and 'queueNumber'. It does not explain the purpose of outboundId, maxWaitingCallers, forcedCallerIdNumber, leaving the agent unable to use optional parameters correctly.

    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 'calls' and resource 'to' and the action 'queues it in the indicated queue'. It differentiates from siblings like pbx_click_to_call_external and pbx_click_to_call_inverse_queue by specifically targeting queue operations.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when-not to use, or compare with similar tools like pbx_click_to_call_external.

    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?

    Annotations already declare readOnlyHint and openWorldHint. The description adds that base64 audio is omitted unless includeAudio=true, which is useful but doesn't cover other behavioral aspects like permissions.

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

    Conciseness5/5

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

    One sentence with no unnecessary words. Front-loaded with core purpose.

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

    Completeness2/5

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

    Description lacks details about the output structure beyond the audio field. No output schema exists, so the description should explain what 'Detalle' includes. Incomplete.

    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 0%, so description provides meaning for includeAudio by explaining its effect. However, the id parameter is not elaborated beyond being the identifier.

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

    Purpose4/5

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

    Description clearly states it gets the detail of an announcement by ID, distinguishing it from pbx_list_announcements. The title and name align. However, it doesn't explicitly say 'single announcement' but it's implied.

    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 vs alternatives like pbx_list_announcements. No exclusions or prerequisites mentioned.

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

  • Behavior2/5

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

    Annotations already signal readOnlyHint=true, so the description adds no further behavioral context such as side effects, auth requirements, or response details. It misses opportunity to clarify that it returns a single queue object.

    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?

    Extremely concise – one short sentence that conveys the core purpose without wasted words. Front-loaded with the action.

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

    Completeness2/5

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

    No output schema, and the description does not explain what 'detalle' includes (e.g., name, member count, settings). Given the tool's simplicity, it's still incomplete for an agent to predict the response.

    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 only parameter queueId has no schema description (0% coverage). The description 'por su id' minimally indicates it is the queue identifier, adding some meaning but lacking format or example.

    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 'Detalle de una cola por su id.' clearly states the tool retrieves details of a queue by its ID. It is specific and distinguishes from list or state tools among siblings.

    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 pbx_list_queues or pbx_queue_state. The description only states what it does, not when 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?

    Annotations already declare destructiveHint=true, so agent knows it's destructive. Description adds a warning but no further behavioral details (e.g., whether seconds=0 is immediate, if call must be active, or if cancellation is possible).

    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 concise sentences front-load the action and warning. However, the brevity sacrifices important parameter details.

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

    Completeness2/5

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

    For a simple destructive tool with two params and no output schema, description covers the core action but omits parameter semantics, error handling, and scenario context. Fails to fully equip the agent given low schema coverage.

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

    Parameters1/5

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

    Schema coverage is 0%, and description offers no explanation of callId (format, required state) or seconds (range, behavior). Agent must infer parameter meaning from names alone, which is insufficient.

    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 hangs up a call after N seconds ('Cuelga la llamada indicada dentro de N segundos') and emphasizes its destructive nature ('Cortará una llamada real'). This distinguishes it from pbx_hangup (immediate hangup) and other call control tools.

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

    Usage Guidelines3/5

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

    No explicit guidelines on when to use vs alternatives, such as pbx_hangup for immediate hangs. The description implies scheduled hangup usage but lacks exclusion criteria (e.g., cannot be undone).

    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?

    Annotations already declare readOnlyHint=true, so the description only adds that it retrieves details by callId. No additional behavioral traits (e.g., return format) are disclosed, but the annotations sufficiently cover the safety profile.

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

    Conciseness5/5

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

    Extremely concise, one sentence. Front-loaded with essential information. No wasted words.

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

    Completeness3/5

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

    Given the tool's simplicity (one parameter, no output schema, annotations present), the description is minimally adequate. However, it does not explain what details are returned, which could be helpful.

    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% with a clear description for callId. The description adds no extra meaning beyond what the schema provides.

    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 retrieves details of a specific call using its callId. It implicitly distinguishes from siblings like pbx_list_calls, but does not explicitly differentiate.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives such as pbx_list_calls or pbx_calls_in_range. The description does not provide context or exclusions.

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

  • Behavior2/5

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

    Annotations already indicate destructiveHint=true, but the description adds no details on side effects (e.g., impact on calls, reversibility). It only restates that the tool changes status, without behavioral context beyond annotations.

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

    Conciseness5/5

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

    Two short sentences, no fluff. First sentence states purpose with examples, second clarifies the parameter. Highly efficient.

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

    Completeness3/5

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

    The tool is simple (2 string params, no output schema). Description is adequate but lacks details on status codes (no enum, openWorldHint), potential destructive effects, or error handling. 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 coverage is 100% but schema descriptions are minimal. The description adds that 'newStatus' is a platform status code and gives examples (login/logout/pausa), adding some semantic value beyond bare schema.

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

    Purpose5/5

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

    The description clearly states the verb 'Cambia' (changes) and the resource 'estado de un agente' (agent status), with examples (login/logout/pausa). It is distinct from sibling tools like pbx_list_agents or pbx_get_agent, which are read-only.

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

    Usage Guidelines2/5

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

    The description gives no explicit guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use, or how to obtain valid status codes.

    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 adds the warning '⚠️ Hace sonar teléfonos reales', indicating real phones will ring. This goes beyond the annotations (readOnlyHint false, destructiveHint false) to explain the real-world impact. It also implies the tool initiates calls, which is not fully captured by annotations.

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

    Conciseness5/5

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

    The description is extremely concise: two sentences that state the action and a key warning. No filler, and the most important information is front-loaded.

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

    Completeness3/5

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

    For a simple action like connecting two numbers via callback, the description is adequate but minimal. It lacks details about return values (no output schema), error conditions, or what happens after the call connects. Given the complexity (6 parameters), more context could be beneficial.

    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 50% (3 of 6 parameters have descriptions). The tool description does not add additional meaning to parameters beyond what is in the schema. For example, it mentions 'from' and 'to' but not their roles in more detail. Baseline 3 is appropriate given moderate coverage.

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

    Purpose4/5

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

    The description clearly states the verb 'conecta' (connects) and the resource (two numbers via PBX callback). It specifies 'cualesquiera from y to' indicating any numbers. However, it does not explicitly distinguish from sibling tools like pbx_originate_call or pbx_click_to_call_queue, which might have similar functionality.

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

    Usage Guidelines2/5

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

    There is no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use it, or provide any context for selection. The description only states what it does, not when to choose 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?

    Annotations already mark it as read-only (readOnlyHint=true), so the safety profile is covered. However, the description adds no new behavioral traits such as error handling, uniqueness assumptions, or return format. It merely restates the input parameter.

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

    Conciseness5/5

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

    The description is a single sentence with no waste. It is front-loaded and efficient, fitting the tool's simplicity.

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

    Completeness3/5

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

    Given the simple tool and annotations, the description is adequate but incomplete. It does not specify what is returned (e.g., full contact details) or behavior when no contact is found, which would help the agent fully understand the tool's context.

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

    Parameters3/5

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

    Schema description coverage is 0%, so the description must compensate. It explains that 'number' refers to a phone number, which clarifies the purpose. However, it lacks details on required format (e.g., E.164) or constraints, limiting semantic value.

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

    Purpose5/5

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

    The description clearly states the tool searches for a contact by phone number, using a specific verb ('busca') and resource ('contacto de la agenda'). It differentiates from siblings like pbx_list_contacts, which lists all 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 implies usage for finding a contact by number, but lacks explicit guidance on when to use it versus alternatives like pbx_list_contacts. No when-not-to-use or prerequisites are mentioned.

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

  • Behavior3/5

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

    Annotations indicate non-readOnly and non-destructive; description adds a legal notice about consent but does not detail behavior for invalid states (e.g., call not active or already recording).

    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?

    Very concise: one sentence for purpose plus a legal notice. No wasted words.

    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?

    Lacks return type, error handling, and prerequisites (e.g., call must be active). The legal notice is a good addition but does not compensate for missing operational details.

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

    Parameters2/5

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

    The only parameter callId has 0% schema description coverage; the tool description does not explain its format or source, relying solely on the parameter name and 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?

    The description clearly states the action 'activa la grabación' (activates recording) and the resource 'llamada activa' (active call), distinguishing it from its sibling pbx_stop_recording.

    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 use on active calls but does not explicitly state when to use or when not to use, nor does it reference alternatives like pbx_stop_recording for stopping.

    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?

    Annotations declare readOnlyHint=true and openWorldHint=true, indicating a safe read operation. The description adds context (aggregation, name resolution) but does not disclose potential limitations (e.g., data freshness, output format, or time zone handling). With annotations covering safety, the description adds some value.

    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: first summarizes the report metrics, second adds name resolution. No redundancy, perfectly 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?

    Despite annotations and 100% schema coverage, the description omits critical details: required parameter combinations for a day vs. range, output format (e.g., list of extensions with stats), and whether pagination or limits apply. As a report tool, this leaves the agent uncertain about usage.

    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% with basic descriptions for all 5 parameters. The description adds that the tool works for a day or range, but does not explain parameter combinations (e.g., whether 'date' conflicts with 'from'/'to'). 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's a productivity report per extension for a day or range, specifying metrics (outbound calls made/answered, inbound answered, minutes online) and name resolution. This differentiates it from list tools like pbx_list_calls and pbx_calls_in_range.

    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 use for aggregated productivity reports, but does not explicitly state when to use it over siblings like pbx_list_calls or pbx_calls_in_range. No when-not or alternative guidance is provided.

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

  • Behavior3/5

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

    Annotations already declare readOnlyHint and openWorldHint. The description adds 'estimated/current' but does not detail the response format or behavior beyond what is obvious. No contradictions with annotations.

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

    Conciseness5/5

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

    A single, concise sentence that communicates the core functionality without unnecessary words. Front-loaded with the key action.

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

    Completeness3/5

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

    For a simple read tool with one parameter and no output schema, the description covers the essential purpose. However, it lacks details on the return format (e.g., numeric value with units) and does not link to other tools for queue enumeration.

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

    Parameters2/5

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

    The parameter queueNumber is not described in the schema (0% coverage) and the description only says 'by its number' without explaining what a valid queue number is or where to obtain it. The description adds minimal value for the parameter.

    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 retrieves estimated/current wait time for a queue by its number. It uses a specific verb and resource, and it distinguishes itself from sibling tools like pbx_queue_state which may provide more general queue information.

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

    Usage Guidelines3/5

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

    No explicit guidance on when to use this tool versus alternatives. The read-only nature is implied by annotations, but the description does not mention prerequisites or that queue numbers can be obtained from pbx_list_queues.

    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?

    Annotations indicate readOnlyHint=false (mutation) and destructiveHint=false (non-destructive), and the description confirms the tool cancels a transfer and recovers the call, aligning with the annotations. However, no additional behavioral context is given (e.g., requirements, side effects on the other party).

    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 that conveys the purpose concisely with no wasted words. It is front-loaded with the 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?

    For a simple tool with one parameter and no output schema, the description covers the core functionality adequately. It explains the action and result, though it omits explaining the parameter explicitly.

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

    Parameters2/5

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

    The schema has one parameter (callId) with 0% description coverage. While the parameter name is self-explanatory, the description does not explicitly explain its role (e.g., 'callId of the ongoing transfer'). With low schema coverage, the description should compensate, but it does not.

    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 'cancela' (cancels) and the resource 'transferencia atendida' (attended transfer), and specifies the outcome 'recupera la llamada original' (recovers the original call). This distinguishes it from sibling tools like pbx_attended_transfer_start and pbx_attended_transfer_complete.

    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 when an attended transfer is in progress and should be canceled, but it does not explicitly state when to use this tool versus alternatives like pbx_attended_transfer_complete or pbx_blind_transfer. No when-not guidance is provided.

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

  • Behavior1/5

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

    Contradicts annotations: readOnlyHint=true implies no side effects, but description says it saves a file to disk, which is a mutation. openWorldHint is not leveraged to explain cross-system behavior.

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

    Conciseness5/5

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

    Two sentences, no fluff, each phrase adds value (downloads MP3, saves to specific dir, returns path).

    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, but description mentions local path. Lacks details on overwrite behavior, directory existence, or permission checks. Adequate but not thorough.

    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%, and description adds meaning: filename uses default <callId>.mp3, and the return path is for transcription. Adds value 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 clearly states it downloads the MP3 of a call recording and saves it to a server directory, specifying the return value. This distinguishes it from siblings like pbx_get_recording_url, which likely returns a URL instead of saving to disk.

    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 usage for server-side processing (e.g., transcription) by mentioning the local path is 'ready to transcribe'. However, it does not explicitly state when to use this over pbx_get_recording_url or exclude cases.

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

  • Behavior3/5

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

    The description adds that the tool returns no passwords, which is useful, and annotations already indicate it is read-only. However, it does not disclose potential pagination, ordering, or whether all extensions are always returned, which would be helpful for a complete behavioral picture.

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

    Conciseness5/5

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

    The description is extremely concise, consisting of two short sentences that contain all essential information without any filler. Every word serves a purpose.

    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 adequately covers what is returned (four fields), the purpose, and what is excluded (passwords). It lacks some details like ordering or scope, but is largely complete for its simplicity.

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

    Parameters4/5

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

    The tool has no parameters, and schema coverage is 100%. The description does not need to elaborate on parameters, but it adds no additional semantic value beyond confirming the simple listing nature.

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

    Purpose4/5

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

    Description clearly states it provides a compact listing of extensions mapping number to name, email, and id, with the purpose of identifying who is who. It distinguishes itself from sibling tools like pbx_list_extensions by specifying a compact format and excluding passwords, but doesn't explicitly differentiate further.

    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 quick identification ('para resolver quién es quién'), but does not explicitly state when to use this tool over alternatives like pbx_list_extensions or pbx_get_extension, 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.

  • Behavior4/5

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

    Annotations already indicate readOnlyHint=true (safe read). The description adds valuable information: audio base64 is omitted by default to avoid saturation, and how to include it. This is a meaningful behavioral trait beyond the annotation.

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

    Conciseness5/5

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

    Two sentences: first defines purpose, second explains a key parameter behavior. No redundant words; every sentence adds value. Efficient and 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?

    Despite the tool's simplicity (one optional param, no output schema), the description fails to mention output fields (e.g., IDs, names) which are likely needed for subsequent operations like pbx_get_announcement. The openWorldHint suggests variability, but the description should still outline typical response content.

    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 0% (no descriptions in schema). The description briefly explains the includeAudio parameter ('pásalo con includeAudio=true'), but lacks detail about its exact effect (include base64-encoded audio). With low coverage, the description should compensate more fully.

    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 recordings/announcements (Locuciones/anuncios) with specific verb and resource, and the title 'Listar locuciones' reinforces that. It implicitly distinguishes from pbx_get_announcement (singular) by being a 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 Guidelines3/5

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

    The description provides context (listing announcements) and a condition (includeAudio parameter), but does not explicitly state when not to use this tool or mention alternatives like pbx_get_announcement for individual retrieval. Usage is implied but not fully guided.

    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?

    Annotations already indicate destructiveHint=true. The description adds the warning '⚠️ Desvía una llamada real.' which emphasizes the real-world impact, providing extra behavioral context.

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

    Conciseness3/5

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

    The description is very short (one sentence plus emoji), but it lacks detail on parameters or usage context. It is terse but not optimally informative.

    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 does not cover prerequisites (e.g., call must be active), failure conditions, or return values. Given no output schema, more context would be beneficial.

    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 50% (one parameter has a description). The description does not elaborate on 'callId' and only mentions 'destination' without adding detail beyond the schema. The description fails to compensate for the missing parameter 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 action: 'Transfiere la llamada en curso' (transfers the current call) and specifies 'sin consulta previa' (without prior consultation), distinguishing it from attended transfer.

    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 implicitly suggests when to use (blind transfer) vs. alternatives (attended transfer) by mentioning 'sin consulta previa'. However, it does not explicitly state exclusions or provide direct sibling differentiation.

    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?

    Annotations already indicate it is not read-only, open-world, and not destructive. The description adds a warning ('⚠️ Audio en una llamada real') that emphasizes real-world side effects, providing additional context beyond the structured annotations.

    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 concise and front-loaded, stating the core action first. The warning is placed appropriately. However, it could be slightly more structured by separately explaining each parameter.

    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 and simple parameters, the description captures the essential purpose but omits details like return behavior, error conditions, or how to obtain the announcementId (though siblings like pbx_list_announcements exist). It is adequate but not fully 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?

    The description explains 'announcementId' as the locución to inject, partially compensating for the 0% schema coverage. However, 'callId' is not explicitly described (only implied by 'llamada en curso'), leaving ambiguity about its format or 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 action ('Inyecta/reproduce una locución') and the resource ('dentro de la llamada en curso'). It distinguishes from sibling call manipulation tools by specifying audio injection, and the warning about live calls adds specificity.

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

    Usage Guidelines3/5

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

    The description implies the tool is for active calls ('llamada en curso', 'Audio en una llamada real') but does not explicitly state when to use it over alternatives, nor does it provide usage exclusions or prerequisites.

    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?

    Annotations already indicate read-only and open-world hints. Description adds context about fields returned and filter mechanics (substring search, limit). No contradictions; adds value beyond annotations.

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

    Conciseness5/5

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

    Single sentence that immediately conveys purpose and key capabilities. No wasted words; efficient and 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?

    Lacks output format details (e.g., JSON structure, fields beyond name/number/speed dial) and pagination behavior. With no output schema, description should provide more guidance on return shape.

    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% with detailed parameter descriptions. Description merely summarizes the schema without adding new information. 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 the resource (agenda/contacts) and verb (list), mentions included fields (name, number, speed dial), and filtering options. Distinct from sibling list tools like pbx_list_calls or pbx_list_extensions.

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

    Usage Guidelines3/5

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

    Description implies usage for listing contacts with optional filters, but does not explicitly state when to use vs. alternatives like pbx_get_contact for single contact or pbx_update_contact for mutations. No when-not-to-use guidance.

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

  • Behavior3/5

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

    Annotations already provide readOnlyHint=true and openWorldHint=true, so the description's mention of 'voicemails of an extension' adds minimal behavioral context beyond the safe read nature. No contradictions.

    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, focused sentence with no wasted words. Front-loaded with the main action and resource.

    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 (1 param, readOnly, no output schema), the description adequately covers the core functionality. Missing output format details but acceptable for a list operation with sibling tools for details.

    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 0%, but description adds 'por su id interno' clarifying that extensionId is the internal ID. However, no details on format or how to obtain it. Partially compensates for lack of schema 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 it lists voicemail messages for an extension by its internal ID, using specific verb 'Listar' and resource 'buzones de voz' (voicemails). It distinguishes from siblings like pbx_get_voicemail (single) and pbx_delete_voicemail (delete).

    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 when needing all voicemails for an extension, but does not explicitly state when to use versus alternatives like pbx_get_voicemail or pbx_mark_voicemail_read. No 'when not to use' or alternative naming.

    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?

    Annotations declare destructiveHint=true. The description adds a specific behavioral consequence: the phone/softphone will stop registering until reconfigured. This provides useful context beyond the annotation.

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

    Conciseness5/5

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

    The description is extremely concise, with only two sentences. The first sentence states the main action, and the second (with a warning emoji) highlights critical fallout. No superfluous 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?

    For a simple tool with one parameter and no output schema, the description explains the purpose and a key side-effect. However, it does not mention what the tool returns (e.g., the new password) or how to retrieve it, leaving the agent without complete operational context.

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

    Parameters2/5

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

    The parameter 'extensionId' is not described in the text, and schema description coverage is 0%. The tool name implies it is the extension's ID, but the description adds no explicit meaning or usage guidance for the parameter.

    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 generates a new SIP password for the extension, using a specific verb and resource. It distinguishes the tool from siblings like pbx_update_extension by focusing on password reset.

    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 when a SIP password needs to be reset, but provides no explicit guidance on when to use this tool versus alternatives (e.g., pbx_update_extension) or any prerequisites.

    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 adds minimal behavioral context beyond annotations. It clarifies the meaning of 'break types' with 'pausa/descanso', but does not disclose return format or pagination. Annotations already cover read-only and open-world nature, so the added value is limited.

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

    Conciseness5/5

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

    A single sentence that is front-loaded and contains no extraneous information. Every word adds value.

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

    Completeness4/5

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

    Given the simplicity (no parameters, annotations present), the description is mostly complete. It could optionally specify output format, but for a catalog tool, it is 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?

    The tool has no parameters, so schema coverage is 100%. Description adds no parameter details, which is acceptable since none exist. Baseline for zero parameters is 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 is a catalog of agent break/rest types. The verb 'Catálogo' implies listing, and 'tipos de pausa/descanso de agentes' specifies the resource. This distinguishes it from sibling tools like pbx_agent_status which deals with statuses.

    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 does not explicitly state when to use this tool or when to avoid it. However, the readOnlyHint and openWorldHint annotations imply it is safe to call at any time, but no alternatives or exclusions are mentioned.

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

  • Behavior3/5

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

    Annotations already declare readOnlyHint=true, so the description adds minimal new behavioral context beyond listing it as a historical view. No mention of potential size or pagination.

    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 description is highly concise and immediately conveys purpose. No wasted words.

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

    Completeness4/5

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

    For a zero-parameter read operation with annotations, the description is adequate. Some detail about result set limits or ordering could improve completeness but is not critical.

    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; schema coverage is 100%. The description correctly implies no filters are needed. A baseline of 4 is appropriate since it doesn't need to explain parameter meaning.

    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 returns a history/list of agent status changes. It distinguishes itself from siblings like pbx_set_agent_status (write) and pbx_agent_statuscount (aggregation).

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

    Usage Guidelines3/5

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

    No explicit when-to-use or when-not-to-use guidance is provided. Usage is implied by the name and description but not explicitly contrasted with alternatives.

    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 discloses that the tool joins the two parties and exits, adding behavioral context beyond the annotations (readOnlyHint=false, destructiveHint=false). It does not contradict annotations. It could mention prerequisites or failure states.

    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?

    One efficient sentence, no redundancy, front-loaded with key action. Every word 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?

    Given no output schema and one parameter, the description minimally explains the outcome (joins and exits) but lacks details on return values, success/failure indications, or the need for prior initiation. Adequate but with gaps.

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

    Parameters2/5

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

    Schema coverage is 0% (description mentions no parameters). The single required parameter callId is self-explanatory by name, but the description adds no additional meaning, failing to compensate for low 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 it completes an attended transfer previously initiated, using specific verb 'Completa' and resource 'transferencia atendida'. It distinguishes from siblings like pbx_attended_transfer_start and pbx_attended_transfer_cancel.

    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 it must be used after starting an attended transfer, but does not explicitly mention that pbx_attended_transfer_cancel exists for cancellation or provide when-not-to-use scenarios.

    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?

    Annotations already indicate readOnlyHint and openWorldHint, so the description adds value by disclosing pagination behavior (50 per request), deduplication, and the return of a summary. No contradictions with annotations.

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

    Conciseness5/5

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

    Two sentences, no wasted words. The first sentence explains the primary behavior, the second describes the return value. Front-loaded and efficient.

    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 complexity (pagination, deduplication, summary) and no output schema, the description covers the key return elements (list and summary with categories). Minor gaps exist (e.g., parameter relationship not clarified), but overall sufficient.

    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% with descriptions for each parameter. The tool description does not add extra meaning beyond the schema, so 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?

    The description clearly states the verb 'recupera' (retrieves) and resource 'llamadas' (calls) with a specific scope 'de un día o rango' (day or range). It distinguishes from sibling tools by explicitly mentioning automatic pagination and deduplication, which is unique to this tool.

    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 use when needing all calls in a range, but does not provide explicit when-to-use or when-not-to-use guidance. It does not mention alternatives such as pbx_list_calls or pbx_count_calls, leaving the agent to infer context from sibling names.

    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?

    Annotations already declare readOnlyHint=true and openWorldHint=true, so the description does not need to emphasize safety. It adds that the tool returns a count, but does not detail the exact return format or any limitations beyond the range. This is minimal added value given the annotations.

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

    Conciseness5/5

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

    A single sentence that is complete, front-loaded with key information, and contains no waste. It efficiently conveys the tool's purpose and optional filtering capability.

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

    Completeness4/5

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

    For a simple counting tool with no output schema, the description is adequately complete. It identifies the resource (calls) and optional range. The input schema fully documents parameters, and annotations cover behavioral traits. A small improvement could be specifying that the return value is a single integer.

    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% coverage with descriptions for all 5 parameters (e.g., 'to': 'Fin en epoch milisegundos'). The tool description only generically mentions 'within a range', adding no new meaning beyond what the schema already provides. Baseline of 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the tool returns the total number of registered calls, optionally filtered by a date range. It uses a specific verb-contar (count) and resource (llamadas), and distinguishes from sibling tools like pbx_list_calls that return detailed call records.

    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 notes the optional range filtering, implying use when a total count is needed rather than detailed call logs. However, it does not explicitly state when not to use it or name alternatives, though sibling tool names provide context.

    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?

    Annotations already provide readOnlyHint and openWorldHint. Description adds that it does not download itself, which is consistent. However, it does not address the openWorldHint implications (e.g., incomplete results) or other behavioral traits like pagination.

    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 that are efficient and front-loaded: first states the core functionality, second adds key constraint (no download) and use case. No redundant or unnecessary words.

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

    Completeness4/5

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

    Given 5 parameters and no output schema, the description covers what the tool returns (metadata and MP3 URL) and its read-only nature. It omits details about response structure (e.g., array) and does not mention openWorldHint implications, but is largely sufficient for a listing 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% with parameter descriptions, so baseline is 3. Description does not add significant detail beyond the schema; it only implies that 'date' is for a single day while range parameters are for intervals. No additional semantics for parameter format or constraints.

    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 lists calls with recordings for a day/range, including metadata and download URL. It distinguishes itself from sibling tools like pbx_download_recording by noting it does not download anything, and from pbx_calls_in_range by specifying recording=true.

    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?

    Description implies usage as a starting point for downloading and transcribing, but does not explicitly compare to alternatives or state when not to use. It provides clear context but lacks direct exclusion criteria.

    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?

    Annotations already declare destructiveHint=true and readOnlyHint=false, so the description's mention of 'escribe' (writes) adds minimal value. The description does not detail that previous values are overwritten or that the operation is irreversible, which would provide useful context beyond annotations.

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

    Conciseness5/5

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

    The description consists of two concise sentences with no wasted words. It front-loads the action and adds a utility statement, making it easy to scan and understand.

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

    Completeness4/5

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

    For a tool with two parameters, one nested, and no output schema, the description is reasonably complete. It covers purpose, typical use, and parameter examples. However, it lacks details on the impact of the operation (e.g., whether variables are appended or replaced) and does not describe the 'callId' parameter in depth.

    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 50% (only 'vars' is described). The description adds context for 'vars' (e.g., 'var1…var5 u otras') but does not explain 'callId' beyond its type. An example is given for 'vars', but semantic details for 'callId' (e.g., format, source) are missing.

    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 'escribe' (writes) and the resource 'variables/etiquetas sobre el registro de una llamada' (variables/labels on a call record). It also provides a concrete use case for classifying calls, which distinguishes it from sibling tools that update different resources (e.g., extensions, contacts).

    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 indicates when to use the tool ('útil para clasificar llamadas') but does not explicitly mention when not to use it or provide alternatives. However, the context is clear and no conflicting sibling tools exist for the same purpose.

    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?

    Annotations already declare readOnlyHint and openWorldHint. The description adds that it returns the internal ID, which is the key behavioral output. No additional traits (errors, performance) are disclosed, but for a simple lookup with strong annotations, this 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.

    Conciseness5/5

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

    The description is a single concise sentence with an example, no wasted words. It is front-loaded with the core action 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?

    Given the tool's simplicity (1 parameter, no output schema, no nested objects), the description fully covers what the agent needs: what it does, what it returns, and how to specify the input. 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?

    Schema description coverage is 100%, and the parameter 'username' is already described in the schema as 'Número de extensión, ej. 1003'. The tool description merely restates this, adding no new semantic value beyond the example.

    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 returns the internal ID of an extension given its username/number, with an example. This distinguishes it from sibling tools like pbx_get_extension (returns full details) and pbx_list_extensions (lists all).

    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 (lookup by username), but does not explicitly state when to use this vs. alternatives like pbx_get_extension or pbx_list_extensions. No exclusions or prerequisites are mentioned.

    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 adds behavioral context beyond annotations: it explains the call flow (rings from, then dials to) and warns with an emoji that it rings real phones. Annotations already indicate non-read-only and open-world, but the description provides actionable detail without contradicting annotations.

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

    Conciseness5/5

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

    The description is extremely concise: two sentences plus a warning emoji. Every word earns its place, and the key information is front-loaded.

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

    Completeness3/5

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

    For a 6-parameter tool with no output schema, the description covers the core action but omits details like return values, error conditions, or side effects (openWorldHint=true). Adequate but incomplete for complex scenarios.

    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 fully describes parameters. The description does not add extra semantic meaning beyond naming 'from' and 'to'. 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 launches a call, rings the 'from' extension first, then dials 'to'. It explicitly calls it the classic click-to-call for workers, distinguishing from sibling click-to-call variants like pbx_click_to_call_external.

    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 usage context: it is for an internal worker to call a number (click-to-call). However, it does not explicitly exclude alternative tools or state when not to use it, though sibling names imply differentiation.

    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?

    Annotations already declare readOnlyHint=true and openWorldHint=true, covering safety and dynamic nature. The description adds real-time context and scoping behavior, but does not mention error handling, rate limits, or pagination. With annotations present, the description adds moderate value.

    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, efficient sentence that front-loads the purpose. Every word earns its place; no wasted text.

    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 simplicity (one optional parameter, no output schema, good annotations), the description covers the essential behavior and scoping. However, it does not mention output format, limits, or error conditions. Still, it is largely complete for this tool.

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

    Parameters5/5

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

    Schema coverage is 0%, so the description fully compensates by explaining the effect of the optional queueId parameter: without it, returns all queues; with it, only that specific queue. This adds meaning beyond the raw schema type.

    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 returns people waiting in queue(s) right now. It distinguishes from siblings like pbx_queue_state and pbx_queue_waittime by focusing on callers, not queue state or wait times. The scoping behavior (with/without queueId) is explicitly described.

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

    Usage Guidelines3/5

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

    The description explains scoping (using queueId vs all queues) but does not provide explicit guidance on when to use this tool versus alternatives like pbx_queue_state or pbx_queue_waittime. It lacks when-not-to-use or prerequisites.

    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?

    Annotations (readOnlyHint=false, destructiveHint=false) indicate mutation but not destruction. Description adds that the tool puts the call on hold, dials destination, and warns '⚠️ Real call', indicating actual phone interaction. No mention of failure modes or prerequisites, but sufficient for basic 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?

    Two short sentences, no redundancy. The warning symbol adds emphasis without extra words. Each piece of information earns its place.

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

    Completeness4/5

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

    Tool is simple (2 required params, no output schema) and description explains the basic flow. It could mention that this is the first step of a multi-step attended transfer process (use with complete/cancel), but overall it's adequate for a single-action 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 0%: description mentions 'destination' in context ('marca a destination'), giving meaning to that parameter. However, 'callId' is not described at all. The description partially compensates for missing schema descriptions but not fully.

    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 initiates an attended transfer: puts call on hold and dials destination to consult before completing. Uses specific verb 'inicia' and resource 'transferencia con consulta', distinguishing it from blind transfer and from the complete/cancel siblings.

    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?

    Description implies usage when wanting to consult before transferring, but does not explicitly state when not to use or provide alternatives like blind transfer. However, the context of attended transfer is clear and sibling tools exist for complete/cancel.

    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?

    Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds a key behavioral trait: passwords are redacted unless CENTRALITA_ALLOW_SECRETS=true. This goes beyond annotations. No contradiction.

    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: two sentences front-loaded with the purpose. No wasted words, every sentence earns its place.

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

    Completeness4/5

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

    Given no output schema, the description is fairly complete for a simple get operation. It covers purpose, key behavioral note, and parameter semantics. Could optionally mention return fields, but not necessary for clarity.

    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 one parameter described. The description adds emphasis that the ID is internal (hex) and not the extension number, which is useful context. This slightly exceeds the schema's own 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 the tool retrieves extension details by internal ID, not by extension number. It distinguishes from sibling tools like pbx_list_extensions and pbx_find_extension_by_username, 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 Guidelines3/5

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

    The description implies usage for fetching a specific extension by internal ID, but does not explicitly state when to use this tool versus alternatives like pbx_list_extensions or pbx_find_extension_by_username. No guidance on exclusions or prerequisites.

    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?

    Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds valuable behavioral detail: SIP/web passwords are redacted unless the environment variable CENTRALITA_ALLOW_SECRETS is set. This provides transparency beyond the annotations.

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

    Conciseness5/5

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

    The description is a single sentence that conveys all essential information without unnecessary words. It is front-loaded with the main action and resource, then adds details and a behavioral note.

    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?

    Although no output schema is provided, the description specifies the fields returned (number, name, email, domain, status). It also covers the password redaction behavior. For a simple list tool with no parameters, this is sufficient context for correct use.

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

    Parameters4/5

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

    Input schema has zero parameters, so schema description coverage is 100% by default. Per guidelines, baseline is 4. No additional parameter info is needed, and the description does not over-specify.

    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 'lista' (list) and the resource 'extensiones (usuarios SIP)', and specifies the included fields (número, nombre, email, dominio, estado). It distinguishes itself from sibling tools like pbx_list_calls or pbx_list_queues by focusing on extensions.

    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 does not provide explicit guidance on when to use this tool versus alternatives (e.g., pbx_get_extension for a single extension or pbx_find_extension_by_username for search). Usage is implied as a simple list-all operation, but no exclusions or context are given.

    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?

    Annotations already set destructiveHint=true and readOnlyHint=false, so the description adds limited behavioral info beyond stating it modifies fields. The advice to consult first adds safety context, but no details on side effects, permissions, or invalid input handling.

    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, front-loaded with purpose and example fields, followed by a crucial usage tip. No wasted words.

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

    Completeness4/5

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

    For a simple update tool with 2 parameters and no output schema, the description covers input semantics and prerequisite action (consult before). It doesn't describe return values or error handling, but the missing info is not critical given the tool's simplicity.

    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%, but the description adds value by clarifying that 'fields' should contain only the fields to change, with examples (name, email, dnd, cw), which is not obvious from the schema alone.

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

    Purpose5/5

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

    The description uses a specific verb 'Modifica' (modifies) with the resource 'campos de una extensión' (fields of an extension) and lists example fields. It differentiates from the sibling tool pbx_get_extension by advising to consult it first, clarifying its update purpose.

    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 instructs to pass only fields to change in 'fields' and to consult pbx_get_extension first, providing clear context on when to use. It lacks explicit when-not-to-use or alternatives among other update tools but is adequate.

    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?

    Annotations already declare readOnlyHint and openWorldHint, so the agent knows it's safe and non-deterministic. The description adds valuable behavioral details beyond the annotations: the max 50 records, ordering by most recent, and the requirement of a time range. No contradictions exist.

    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, front-loaded with the core purpose, followed by a key limitation and an alternative. Every sentence adds value without waste. This is a model of efficient documentation.

    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 is read-only with 5 parameters and no output schema, the description covers purpose, limitation, and usage guidance well. However, it omits any indication of what fields the returned CDR records contain (e.g., caller, direction, duration). Since there is no output schema, this lack of output description slightly reduces completeness for an agent that needs to interpret results.

    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 context about the effect of parameters (max 50, ordering, range) but does not enhance understanding of individual parameter syntax or types. The schema descriptions are already clear. Thus, the description adds only marginal value beyond the schema.

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

    Purpose5/5

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

    The description clearly states that the tool returns CDR (Call Detail Records), with a limit of 50 per request, most recent first, within a range. It distinguishes itself from the sibling tool 'pbx_calls_in_range' by noting that the sibling handles pagination for larger periods. This specificity in verb ('list') and resource ('calls') with scope ('max 50, recent, range') earns a 5.

    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 tells when not to use this tool (for whole day/period scanning) and directs to 'pbx_calls_in_range' as an alternative that paginates. It implicitly suggests this tool is for getting the most recent or top results within a range. However, it does not mention when to use other siblings like 'pbx_get_call' for a single call, which is a minor omission.

    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?

    Annotations already indicate destructiveHint=true, but the description adds emphasis with the warning emoji and clarifies that it cuts a real call, providing additional behavioral context beyond the annotation.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with a warning, containing no filler words and front-loading the essential information.

    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 the simple single-parameter tool with destructiveHint annotations and no output schema, the description is fully adequate, specifying the required input and its source.

    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 callId parameter with 100% coverage, but the description adds valuable context by indicating that the callId is obtained from pbx_live_status, enhancing understanding for the agent.

    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 hangs up an active call by callId/uuid, and specifies that the callId comes from pbx_live_status, differentiating it from scheduled hangup (pbx_schedule_hangup) and other call manipulation tools.

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

    Usage Guidelines4/5

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

    The description provides clear context for when to use the tool (to hang up an active call) and specifies the source of the callId. However, it does not explicitly mention when not to use it or compare it to alternatives like pbx_schedule_hangup.

    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?

    Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds value by specifying the returned data (uuid, caller, destination, state) and explaining that uuid can be used for hangup/transfer/record, beyond what annotations provide.

    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, front-loading the main purpose and then adding detail. Every word adds value without redundancy.

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

    Completeness5/5

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

    Given no parameters, existing annotations, and no output schema, the description is complete. It covers the return data and usage of uuid for further actions, fitting the complexity of this read-only snapshot 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 tool has zero parameters, so baseline 4 is appropriate. The description does not need to add parameter information as the input schema is empty.

    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 returns live status of the PBX, including busy/free extensions and active calls with specific fields (uuid, caller, destination, state). It distinguishes from siblings by emphasizing real-time data and including extension status.

    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 usage for real-time monitoring ('Estado en vivo'). While it doesn't explicitly state when not to use or list alternatives, the context of siblings and the tool's name provide sufficient guidance.

    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?

    Discloses the need for an API key header beyond the readOnlyHint annotation. No contradictions; behavior is well described, though error handling is not covered.

    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 redundant information. The main purpose is front-loaded, followed by essential usage details.

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

    Completeness5/5

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

    With one parameter, no output schema, and annotations present, the description sufficiently covers functionality, auth, and alternatives, making it complete for agent decision-making.

    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 covers 100% of parameters, and the description adds context that callId must correspond to calls with recording=true in CDR, enhancing parameter understanding.

    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 a direct download URL for a call recording in audio/mpeg format. It names the sibling tool for an alternative action, distinguishing its purpose.

    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 mentions the X-Api-Key header requirement for download and directs to use 'pbx_download_recording' for saving to disk, providing clear when and when-not to use this tool.

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

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

centralita-vpbx-mcp MCP server

Copy to your README.md:

Score Badge

centralita-vpbx-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/DerechoVirtual/centralita-vpbx-mcp'

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