Get lab test
vital_get_lab_testGet a single lab test by id. Vital API: GET /v3/lab_tests/{lab_test_id}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lab_test_id | Yes | The lab test id (UUID). |
vital_get_lab_testGet a single lab test by id. Vital API: GET /v3/lab_tests/{lab_test_id}.
| Name | Required | Description | Default |
|---|---|---|---|
| lab_test_id | Yes | The lab test id (UUID). |
Changes observed during successful MCP inspections.
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already conveys that this is a safe read, so the bar is lower. The description adds the underlying REST endpoint (GET /v3/lab_tests/{lab_test_id}), which is useful context not in the structured fields, but says nothing about error behavior (unknown id) or result shape.
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 short sentences, zero filler, with the core purpose front-loaded before the API reference detail. Every clause earns its place.
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 tool with annotations covering the safety profile and full schema coverage, the description is nearly sufficient. The lack of an output schema leaves return shape unexplained, though that is a minor concern for a simple getter.
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 coverage is 100% and the single parameter is fully documented as a UUID in the schema itself. The description adds no syntax, format, or sourcing hints beyond what the schema already provides, 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 (Get) and resource (lab test) with the scope qualifier 'by id', which implicitly distinguishes it from the sibling list_lab_tests. It stops short of naming that alternative, but the singleton-vs-list distinction is inferable from 'single ... by id'.
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 says to fetch one lab test by id but gives no when-to-use guidance, no exclusion against vital_list_lab_tests, and no prerequisites. An agent must infer that this is for a known id versus browsing with the list tool.
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.