Recommend Capability
recommend_capabilityReturn the best matching real SqueezeOS capabilities for a natural-language need, including live endpoint/payment metadata and next actions.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
recommend_capabilityReturn the best matching real SqueezeOS capabilities for a natural-language need, including live endpoint/payment metadata and next actions.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive behavior; the description adds beyond this by promising live metadata and next actions, signaling dynamic or current data. It does not fully explain external-fetch behavior or output variability, but with strong annotation coverage, this is a reasonable level of disclosure.
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?
A single, front-loaded sentence states the core function first and then adds two specific output categories. Every phrase contributes meaning, and there is no repetition of the title or wasted words.
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?
With no output schema, the description gives some return details but leaves the structure and ranking of results vague. It also lacks any guidance on how this relates to sibling tools, so an agent must infer when this is the right recommendation vs. discovery/comparison tool.
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 descriptions are absent (0% coverage), so the description must compensate. It adds meaning to the required 'query' parameter by defining it as a natural-language need, but it never explains the optional 'limit' parameter beyond what its name/default already imply.
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 names a specific operation—returning best-matching real SqueezeOS capabilities for a natural-language need—with unique output elements (live endpoint/payment metadata, next actions). This distinguishes it from sibling tools like discover_capabilities or inspect_capability without requiring schema inspection.
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 phrase 'for a natural-language need' gives a clear usage context, implying this is the tool to choose when the user expresses intent in plain language. However, it does not explicitly say when not to use it or name alternatives such as discover_capabilities or compare_capabilities.
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.