get_customer
Retrieve complete customer information by ID to view or verify customer details in your invoicing system.
Instructions
Get full details for a single customer by ID.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| customerId | Yes |
Retrieve complete customer information by ID to view or verify customer details in your invoicing system.
Get full details for a single customer by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| customerId | Yes |
Changes observed during successful MCP inspections.
v1.0.0Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description is consistent with that. The phrase 'full details' adds some indication of return richness, but the description does not disclose other behavioral traits like response shape, permissions, or edge cases. That is acceptable given the annotation, but the description itself contributes little beyond it.
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 sentence that front-loads the action and resource with no filler. Every word contributes meaning, and the structure makes the tool's purpose immediately scannable.
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?
For a one-parameter, read-only lookup tool, the description plus input schema provide enough to call it correctly. There is no output schema, and 'full details' is somewhat vague about what fields are returned, so a slightly more specific return description would make it fully complete.
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%, so the description partially compensates by saying 'by ID', which tells the agent customerId is the lookup key. However, it adds no detail about the ID format, uniqueness, or behavior when the customer is not found. With one obvious numeric parameter, this is minimally sufficient.
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 states a specific verb ('Get'), resource ('customer'), and scope ('single ... by ID'), which clearly distinguishes it from sibling tools like get_customers (plural) and get_customer_invoices. An agent can identify it as the targeted single-customer lookup without opening other schemas.
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 implies the use case: retrieve one customer when you have an ID. However, it never explicitly says when to prefer this over alternatives or mentions any exclusion, such as 'use get_customers to list customers'. The guidance is minimal but not misleading.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.