check_price
Consulta o preço de um produto pelo índice (numérico) ou pelo nome.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cnpj | Yes | ||
| product_id | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |
Consulta o preço de um produto pelo índice (numérico) ou pelo nome.
| Name | Required | Description | Default |
|---|---|---|---|
| cnpj | Yes | ||
| product_id | Yes |
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It conveys only that a price is looked up, saying nothing about read-only safety, authentication/tenant requirements via cnpj, error behavior for unknown products, or rate limits. 'Consulta' weakly implies a read, but that is inference, not 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 with no filler, which is appropriate for a simple lookup. Brevity is not the problem here; the omitted content is.
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?
An output schema exists, so return values need not be explained, but two required parameters and the required cnpj tenant context go entirely unaddressed while the description references parameters that do not exist. For a two-required-parameter tool with zero schema descriptions and no annotations, this is materially incomplete.
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 both required parameters (cnpj, product_id) are left undocumented. Worse, the description describes lookups by 'índice (numérico)' or 'nome', neither of which matches a schema parameter, and it never mentions cnpj at all. Rather than compensating for the coverage gap, it points the agent at the wrong inputs.
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?
States a clear verb and resource: 'Consulta o preço de um produto' (query a product's price). It implies a lookup tool distinct from list_products or get_company_details, but never names a sibling or scoping condition to draw the boundary. The identification modes it lists ('índice' or 'nome') are also not the ones the schema requires, muddying what the tool actually operates on.
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?
No guidance on when to use this tool versus list_products, get_company_details, or search_companies. Nothing about prerequisites (a valid cnpj, an existing product) or when-not to call it. The agent must infer usage entirely from the name.
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.