← Back to blog

· Lex Hamilton

How Do You Check an AI Agent's Medication Claims Against the FDA Label?

Checking an AI agent's medication claims means comparing each dose, route and frequency it states with the FDA drug label, using fixed rules instead of another model. Here is what the free Orinyx MCP checks, what it does not, and how to try it.

Checking an AI agent's medication claims means comparing each dose, route and frequency it states with the text of the FDA drug label, using fixed rules instead of another language model, and reporting anything it could not check as its own result. The free Orinyx MCP does this for developers building healthcare AI agents. It uses synthetic data only.

Not for clinical use. Orinyx checks medication claims against cited FDA label text for testing and evaluation only. Do not use its results to diagnose, treat, prescribe or make patient care decisions. Use synthetic test data only.

Last reviewed: November 2026

Update, November 6, 2026. Version 0.1.4 of the open-source server is out. It is a documentation release: developer accounts can use the five FDA reference lookups, matching what the hosted service already did. No tool name, input schema or verdict changed.

What problem does this solve?

An agent that writes medication orders can state a dose, a route or a frequency that the drug's label does not support, and it will sound just as sure as when it is right. That is a medication hallucination: a confident claim with no label behind it. If the only check is the agent's own summary of what it did, nobody has checked anything.

The obvious fix is to ask a second model to grade the first. That repeats the problem. Published research finds that language-model evaluators recognize and favor their own outputs (Panickssery et al., 2024), so a model grading a model can approve a convincing answer that is wrong. This is the argument in why an AI system can't audit its own output.

A fixed rule over label text is different. It gives the same answer every time, and a developer can reproduce it.

What is an MCP server for FDA drug labels?

An MCP server for FDA drug labels is a tool an AI agent can call to check a medication claim against the label. The Model Context Protocol, or MCP, is a standard way for an AI application to connect to outside tools and data. The Orinyx MCP is a server that speaks it, so an agent calls Orinyx the way it calls any other tool.

The reference text is FDA drug labeling, read through openFDA, plus FDA's over-the-counter monographs for products such as acetaminophen. Each result names the label section it used and links to that label's page on DailyMed, the National Library of Medicine's label site, by its set ID. The DailyMed page is the authoritative copy. Because every result cites a section, a person can open it and read it.

What can the Orinyx MCP check, and what does it say back?

It checks the dose, route and frequency in an order against the cited label text. Two tools do most of the work. One takes an order exactly as written and splits it into claims with a fixed grammar. The other takes structured claims. The free plan includes 200 checks per calendar month (UTC).

Each claim gets one of four answers:

  • Supported: consistent with the cited label text. It is not a judgment that the order suits a patient.
  • Flagged: the label says otherwise, at a severity set by a fixed rule, with the section cited.
  • Unreadable: the order cannot be read as written, so nobody should act on it until it is clarified.
  • Not verified: Orinyx could not check the claim. That never means the claim is correct.

There is no "safe" answer. A zero-flag run is not a clearance. For the failure that taught me to lead with "not verified", see what changed at Orinyx.

What does it not do?

It makes no clinical decision. Orinyx flags; the clinician decides. It does not connect to an EHR, it accepts synthetic data only, and it does not certify any product. A supported claim agrees with the label text. It does not mean the order is right for a patient.

It also has gaps, including daily-total arithmetic for some schedules and orders that leave out a route or frequency. Each is listed in the known limits. Treat anything on that list the way you treat a not verified answer: unchecked, so your own review still applies.

How do you try it?

  • Sign up free with your email. A welcome email links you to set your password.
  • Connect a client by one of three routes, described below.
  • Run a first check and compare it with the expected output in the quickstart.
  • Read how to read results before you rely on any answer.

The three routes:

  • Hosted connector, nothing to install. Add https://orinyx-mcp.fly.dev/mcp (Streamable HTTP) in your MCP client and sign in with your Orinyx email and password. Steps for Claude Code are on the docs site, and the GitHub README also covers Claude Desktop as a custom connector.
  • Local (stdio). Run the open-source server on your own machine and keep your credential in your environment. This route needs an API key issued by Orinyx; ask at hello@orinyx.io.
  • Your own code. The same package includes a REST client for Python and a recipe for running checks in CI.

Claude Code through the hosted connector is the client I have tested. The other routes are documented, but I have not tested them with a free account, and I will add them to the docs once I have.

The server is open source under Apache-2.0 on GitHub, and releases are listed there.

What can you do with or without Orinyx?

Most of this applies to any agent that touches medications:

  • Keep the checker apart from the generator. Where a check can be a fixed rule, make it one.
  • Count "could not check" as a result. Show it, count it, and never let it render as success.
  • Pass orders through exactly as written. An agent that corrects an order before checking it has made a decision nobody reviewed.
  • Test the edges. Dose, frequency and unit combinations near a label's ceiling are where arithmetic and parsing fail.
  • Use synthetic data while you test.

If you are buying an ambient AI scribe rather than building an agent, the questions differ. See how to evaluate ambient AI vendors.

Frequently asked questions

What is an MCP server for FDA drug labels?

A tool an AI agent can call to check a medication claim against FDA label text. The free Orinyx MCP does this with fixed rules and cites the label section. No language model decides a verdict.

How do I verify an AI agent's medication answers?

Compare each stated dose, route and frequency with the cited label section, and keep "could not check" as a separate result. Orinyx returns supported, flagged, unreadable or not verified for each claim.

Does Orinyx say whether a medication order is safe?

No. Supported means the claim agrees with the label text. Not verified means unchecked. Orinyx flags; the clinician decides.

Do I need patient data?

No. Use synthetic data only. Never send real patient records, names, dates or record numbers.

Further reading