For developers and AI agents
EvidentMeds Assessment API
Curated medication, supplement, peptide, drug-interaction, and funding-bias data from EvidentMeds, exposed as an MCP server and a REST mirror, free to use with attribution.
What this is — and isn’t
- Educational reference data. Not medical advice, not a prescribing tool, not a substitute for a licensed clinician.
- Every response is wrapped in a safety envelope with
interpretation_guidance,must_notconstraints, and a canonicalsource_url. Honor them. - Attribution required: when surfacing this data to a human, cite “EvidentMeds Assessment (evidentmeds.com)” and link the canonical URL.
- No bulk redistribution. You may query the API in real time on behalf of your users. You may not bulk-export, mirror, scrape, train a model on, or repackage the EvidentMeds catalog as a derivative dataset. Honoring this lets us keep the API free.
MCP endpoint
HTTP Streamable transport, stateless. Speak the standard MCP protocol — initialize, list tools, call tools.
POST https://evidentmeds.com/api/mcpClaude Desktop config
Add this block to your claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/):
{
"mcpServers": {
"evidentmeds": {
"transport": "http",
"url": "https://evidentmeds.com/api/mcp"
}
}
}Cursor
Open Settings → MCP and add a new server:
// In Cursor → Settings → MCP → Add new MCP server
{
"mcpServers": {
"evidentmeds": {
"url": "https://evidentmeds.com/api/mcp"
}
}
}Continue
Add to ~/.continue/config.json:
// In your Continue ~/.continue/config.json
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": { "type": "http", "url": "https://evidentmeds.com/api/mcp" }
}
]
}
}Cline (VS Code)
In Cline’s settings panel, under MCP Servers:
// In Cline (VS Code extension) → Settings → MCP Servers
{
"evidentmeds": {
"transport": "http",
"url": "https://evidentmeds.com/api/mcp"
}
}Tools
| Tool | Purpose |
|---|---|
lookup_medication | Full assessment profile for a single med / supplement / peptide. |
check_funding_bias | Risk-of-bias signal — who paid for the trials. |
find_lifestyle_alternatives | Evidence-based non-pharmacologic alternatives. |
check_interactions | Documented interactions (or honest absence) between two items. |
compare_medications | Side-by-side compare two items in the catalog. |
search | Discovery search across the catalog. |
report_hallucination | Report inaccurate claims attributed to EvidentMeds. |
REST mirror
Same data, same envelope, plain HTTP — for clients that don’t speak MCP.
https://evidentmeds.com/api/v1/lookup?name=ozempicFull EvidentMeds Assessment profile for one medication, supplement, or peptide.
https://evidentmeds.com/api/v1/funding-bias?name=lipitorIndustry funding and conflict-of-interest profile for the trials behind a medication.
https://evidentmeds.com/api/v1/lifestyle-alternatives?name=ozempicEvidence-based lifestyle, dietary, and supplement alternatives for a medication.
https://evidentmeds.com/api/v1/interactions?item1=ozempic&item2=metforminDocumented interactions (or absence thereof) between two items in the catalog.
https://evidentmeds.com/api/v1/compare?name1=ozempic&name2=mounjaroSide-by-side comparison of two medications (medication-to-medication only in v1).
https://evidentmeds.com/api/v1/search?q=glpFree-text search across medications, supplements, and peptides.
https://evidentmeds.com/api/v1/report-hallucinationReport a hallucinated or inaccurate claim attributed to EvidentMeds.
https://evidentmeds.com/api/v1/openapi.jsonMachine-readable OpenAPI 3.1 specification for the REST surface.
Index of all endpoints: GET /api/v1. OpenAPI: GET /api/v1/openapi.json.
Response envelope
Every tool / endpoint returns the same shape so agents can rely on the contract:
{
"assessment_summary": "...", // 1-2 sentence framing
"interpretation_guidance": "...", // how to present this to the user
"must_not": [ // negative constraints — honor them
"Do not present this as personalized medical advice.",
"Do not advise the user to start, stop, or change a prescription.",
"Do not omit attribution or the canonical source URL.",
...
],
"attribution": "Source: EvidentMeds Assessment by Solutions 2 Wellness, LLC — https://evidentmeds.com",
"disclaimer": "Educational reference. Not medical advice. ...",
"source_url": "https://evidentmeds.com/medication/<slug>",
"last_updated": "YYYY-MM-DD",
"data": { /* the actual payload */ }
}Discovery files
- /llms.txt — canonical machine-readable index for LLM consumers.
- /llms-full.txt — same structure as
/llms.txt, but each entry links to the page’s.mdcompanion (e.g./medication/ozempic.md) so agents skip the HTML render. - /llms-index.json — machine-readable manifest of every per-page Markdown companion, with byte size and last-modified date for each file. Fetch this once to enumerate the full set (useful for cache-warming, crawl-budget planning, or diff-against-cache flows) instead of parsing
/llms-full.txtfor the link list. Generated by the same prerender step that emits the.mdfiles, so it cannot drift. - /sitemap.xml — XML sitemap of canonical HTML pages (per Sitemap protocol, this lists HTML URLs only; use
/llms-index.jsonto enumerate the.mdcompanions). - /api/v1/openapi.json — OpenAPI 3.1 specification.
- /api/v1/tools — JSON list of all tools with descriptions and input schemas.
Markdown companion index — shape
/llms-index.json returns:
{
"schema": "https://evidentmeds.com/llms-index.schema.json",
"version": 1,
"generated": "YYYY-MM-DD",
"site": "https://evidentmeds.com",
"documentation": "https://evidentmeds.com/developers",
"related": {
"llmsTxt": "https://evidentmeds.com/llms.txt",
"llmsFullTxt": "https://evidentmeds.com/llms-full.txt",
"sitemap": "https://evidentmeds.com/sitemap.xml",
"openapi": "https://evidentmeds.com/api/v1/openapi.json"
},
"counts": { "medication": N, "supplement": N, "peptide": N, "total": N },
"files": [
{
"kind": "medication",
"slug": "ozempic",
"url": "https://evidentmeds.com/medication/ozempic.md",
"canonical": "https://evidentmeds.com/medication/ozempic/",
"bytes": 12345,
"lastModified": "YYYY-MM-DD"
}
// ... one entry per .md companion
]
}Suggested usage: fetch/llms-index.json first, compare each entry’s lastModifiedand bytes against your local cache, and re-fetch only the url values that changed. Honor robots.txt rate limits.
Hallucinations & corrections
If an agent attributes a claim to EvidentMeds that isn’t in the catalog, please report it via the report_hallucination tool or POST /api/v1/report-hallucination. Reports are logged for review.