Skip to main content
Glama

Check an interaction

check_interaction
Read-onlyIdempotent

Point check of one pair, about 1-3 KB: a and b are each a supplement (name or canonical_id) or a medication (generic name; salt forms merged, brand names not matched). Supplement + supplement uses Aviado's verified pairs only (components and classes included); supplement + medication uses FDA drug-label rows only; two medications are not covered (no_match). Returns verdict {found, severity, direction, summary, recommendation, recorded_for, evidence_level, sources} and coverage (level none/sparse/moderate/broad). found:false is NOT a safety answer: an empty result is not evidence that there is no interaction, so read coverage.note and say so. Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.

Input Schema

NameRequiredDescriptionDefault
aYesFirst supplement (name or canonical id) or medication (generic name)
bYesSecond supplement (name or canonical id) or medication (generic name)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is fully covered. The description does add real value beyond that: it enumerates the returned verdict fields, the coverage scale (none/sparse/moderate/broad), and the found:false and needs_confirmation semantics. However, it doesn't cover pagination, rate limits, or response latency, so the extra context is useful but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The essential scoping rule is front-loaded, but the middle is a dense run-on that crams coverage rules, return fields, and caveats into one sentence. Every clause earns its place content-wise, yet the lack of structure makes it harder to scan than it should be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the burden of explaining return values and does so by naming the verdict fields and coverage levels. It also covers the failure statuses and the retry path. The main remaining gap is that it doesn't say what the sources array contains or whether evidence_level values are enumerated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, so baseline is 3. The description adds genuine semantics the schema lacks: salt forms are merged, brand names are not matched, canonical_id is accepted, and supplements vs medications resolve differently. This is meaningful input guidance beyond the two terse property descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action and scope: a point check of ONE pair, with explicit resolution rules for each argument (supplement name/canonical id vs generic medication name). The phrase 'Point check of one pair' implicitly separates it from the bulk-oriented sibling get_supplement_interactions, and the per-combination coverage rules make the tool's boundary unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use conditions (single pair, 1-3 KB) and when-not (two medications are not covered and return no_match). It also prescribes agent behavior: check status first, and treat found:false as not a safety answer by reading coverage.note. This is unusually actionable routing guidance for both the agent and its downstream phrasing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources