List conditions & medications
list_conditionsList all conditions and medications available through Appendix
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Filter by category name (case-insensitive, e.g. 'respiratory') |
list_conditionsList all conditions and medications available through Appendix
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Filter by category name (case-insensitive, e.g. 'respiratory') |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=true. The description merely restates the read-only nature ('List all...') and adds no additional behavioral details such as pagination, data format, or dynamic changes. No new context beyond the annotations is provided.
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, front-loaded sentence with no filler. It communicates the essential purpose immediately and earns its place without unnecessary detail.
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 simple nature of the tool (one optional parameter, no output schema, read-only annotations), the description is mostly complete. It states what is listed, and the schema handles filtering. However, it does not clarify what 'Appendix' refers to or describe the return structure, leaving slight room for ambiguity.
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?
The schema description covers the sole parameter 'category' with an example, achieving 100% coverage. The description does not add further parameter semantics, so the baseline score of 3 is appropriate based on schema coverage.
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 the verb 'List' and the resource 'conditions and medications', with a specifier 'available through Appendix'. This distinguishes it from siblings like search_knowledge_base and submit_encounter, which serve different purposes.
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 usage for retrieving the full list of conditions/medications, but does not explicitly mention when to prefer it over search_knowledge_base or any exclusions. The context is sufficient to infer intent but lacks explicit guidance.
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.
Each tool serves a distinct purpose: listing available conditions, searching clinical knowledge, and submitting an encounter. There is no overlap or ambiguity between them.
All tool names follow a consistent verb_noun pattern using snake_case: list_conditions, search_knowledge_base, submit_encounter. This is uniform and predictable.
With 3 tools, the server is well-scoped for its purpose. Each tool is essential to the workflow of describing, researching, and submitting a medical issue.
The tool surface covers the full workflow: discover what conditions are handled, gather supporting information, and submit an encounter for review. No critical operations are missing.