get_patient_invoices
Retrieve all invoices for a specific patient by providing their patient ID.
Instructions
Get invoices for a specific patient (READ-ONLY)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| patient_id | Yes | Patient ID |
Retrieve all invoices for a specific patient by providing their patient ID.
Get invoices for a specific patient (READ-ONLY)
| Name | Required | Description | Default |
|---|---|---|---|
| patient_id | Yes | Patient ID |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It explicitly marks the operation as READ-ONLY, which is good for transparency. However, beyond that, it does not disclose any other behavioral traits (e.g., no pagination, ordering, or data format details). For a read-only list tool, this is adequate but not rich.
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 sentence with five words plus a parenthetical. It is extremely concise with no redundant information, earning its place without wasting tokens.
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?
Given the tool's simplicity (one parameter, no output schema, read-only), the description is adequate but lacks context on what the returned invoices contain or any filtering capabilities. There is no mention of return format or how it differs from similar siblings like 'get_appointment_invoices' or 'list_invoices', leaving some gaps.
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% as the input schema documents the only parameter 'patient_id' with a brief description. The tool description does not add any extra meaning or context beyond what the schema already provides (e.g., format or source of patient_id). 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?
The description clearly states 'Get invoices for a specific patient' with a verb ('Get'), resource ('invoices'), and scope ('for a specific patient'). The '(READ-ONLY)' qualifier further clarifies the operation's nature, and it implicitly distinguishes from sibling tools like 'get_appointment_invoices' or 'list_invoices'.
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 does not explicitly specify when to use this tool over alternatives such as 'get_invoice' (single invoice) or 'list_invoices' (all invoices). While it is implied that this tool filters by patient, no explicit when-to-use or when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/andymillar84-cyber/mcp-cliniko'
If you have feedback or need assistance with the MCP directory API, please join our Discord server