Agents / MCP

Let your agents place orders.

neolife speaks MCP. Your agents can draft an order, attach the data, and submit it — then read the status as it fills and ships. A licensed provider approves every order. Always.

Why agent-native

Most fulfillment software can't be driven by software.

The portal you dread was built for a person clicking through tabs. There's no clean way for an agent to act on it — so the agent screen-scrapes, or it doesn't run at all. neolife was built the other way around. The same actions a person takes in the dashboard are exposed as MCP tools, with the same rules behind them.

One surface

Agent and human hit the same order pipeline. No second system to keep in sync, no shadow workflow.

Same rules

Approval, flags, and audit don't change because the order came from an agent. The guardrails live in the rail, not the UI.

Status flows back

Your agent doesn't poll a dead end. State changes push back — approved, filled, shipped, tracking — as they happen.

The MCP tools

Four verbs. The order does the rest.

An agent connects over MCP and gets a small, honest tool set. Draft, attach, submit, read status. There is no tool to skip the provider, because that path doesn't exist.

orders.draft

Build an order

Assemble line items, sig, and shipping into a draft. Nothing is sent to the pharmacy yet — the draft sits in the queue.

orders.attach

Add the data

Attach intake answers, labs, or connected-device readings to the draft so the reviewing provider sees the full picture.

orders.submit

Send for approval

Route the draft to a licensed provider. The order does not reach the pharmacy until a human approves it.

orders.status

Read the status

Poll or subscribe for state changes — approved, filled, shipped, tracking number — pushed straight back to your agent.

orders.create

The agent gets a draft and a status — never a filled prescription. Compounded medications are prepared by a licensed compounding pharmacy and are not FDA-approved.

Guardrails for agents

An agent can move fast. It still can't approve a prescription.

Speed comes from letting agents do the assembly. Safety comes from keeping the decision with a person. Both are built in — neither is a setting you can turn off.

Approval is non-bypassable

No tool, no token, no scope lets an agent skip the provider. Every order routed by an agent stops at awaiting_provider_approval until a licensed provider taps approve.

Amber flags surface, not silence

Dose limits, interaction risks, and odd quantities raise an amber flag on the order. The provider sees it before they decide. Agents can read flags; they can't clear them.

Every call is on the record

Each agent action is logged with the tool, the arguments, the timestamp, and the identity behind the token. The audit trail reads the same whether a human or an agent placed the order.

Wire your agents into the rail.

Connect over MCP, draft real orders, and watch a licensed provider approve each one. Start with the docs, or see it run.