Get product
veeqo_get_productOne product by id with all sellables (variants), prices, weights, customs data and stock entries per warehouse. GET /products/{id}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | Veeqo product id. |
veeqo_get_productOne product by id with all sellables (variants), prices, weights, customs data and stock entries per warehouse. GET /products/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | Veeqo product id. |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds real value beyond that by disclosing exactly what the response contains (variants, prices, weights, customs data, per-warehouse stock entries), which for a tool with no output schema is meaningful behavioral context. It omits error/not-found behavior, keeping it from a 5.
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?
Two tightly written sentences with the resource and return scope front-loaded. The trailing 'GET /products/{id}' is mildly redundant with the tool name but is a short, harmless anchor.
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 and one parameter, the description carries the burden of describing return contents, and it does so thoroughly. What is missing is only edge-case behavior (invalid or non-existent product id) and whether the full payload is always returned or truncated.
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 100% and the single parameter (product_id, integer > 0) is fully documented in the schema itself. The description only restates 'by id', adding no format, range or sourcing detail beyond the schema, so the baseline 3 applies.
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 specific verb and resource with explicit scope: 'One product by id'. It also enumerates the returned payload (sellables, prices, weights, customs data, stock entries per warehouse), which cleanly distinguishes it from the sibling veeqo_list_products without the agent needing to open either schema.
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 'by id' implies this is the single-record lookup versus a list operation, but the description never explicitly says when to use this over veeqo_list_products or what happens on an unknown id. Usage is inferable but not stated.
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.