compare_tools
Compare 2 to 5 distinct approved tools by UUID or canonical slug with evidence-backed objective facts.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| locale | No | ||
| toolIds | Yes |
Compare 2 to 5 distinct approved tools by UUID or canonical slug with evidence-backed objective facts.
| Name | Required | Description | Default |
|---|---|---|---|
| locale | No | ||
| toolIds | Yes |
Changes observed during successful MCP inspections.
Input schema / properties / toolIds / items / formatRemoved value: -"uuid"Input schema / properties / toolIds / items / maxLengthAdded value: +200Input schema / properties / toolIds / items / minLengthAdded value: +1Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds 'evidence-backed objective facts' but does not elaborate on potential side effects, errors, or rate limits. It is consistent with annotations and adds minimal extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the primary action and key constraints. No superfluous words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains the purpose and constraints well but does not describe the output structure or format, nor does it mention error cases or edge conditions. Since there is no output schema, this leaves some ambiguity about the expected result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only hints at the format of toolIds ('UUID or canonical slug') but does not name either parameter or explain the 'locale' field. It fails to adequately compensate for the lack of schema-level descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (compare), the resource (tools), the constraints (2 to 5, approved, by UUID or slug), and the nature of the comparison (evidence-backed objective facts). It effectively differentiates from siblings like get_tool (single tool) and search_tools (discovery).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use this tool (comparing multiple approved tools when identifiers are known) but does not explicitly mention alternatives or when not to use it. The sibling tools are listed separately, but the description itself does not reference them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.