Server data from the Official MCP Registry
HEOR MCP server: literature search, CEA, BIA, NMA/MAIC, HTA dossiers (NICE/FDA/EMA/JCA).
HEOR MCP server: literature search, CEA, BIA, NMA/MAIC, HTA dossiers (NICE/FDA/EMA/JCA).
Valid MCP server (1 strong, 1 medium validity signals). 2 known CVEs in dependencies (0 critical, 2 high severity) ⚠️ Package registry links to a different repository than scanned source. Imported from the Official MCP Registry. 1 finding(s) downgraded by scanner intelligence.
3 files analyzed · 3 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-neptun2000-heor-agent": {
"args": [
"-y",
"heor-agent-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
AI-powered Health Economics and Outcomes Research (HEOR) agent as a Model Context Protocol server.
Automates literature review across 42 data sources, risk of bias assessment (RoB 2 / ROBINS-I / AMSTAR-2), state-of-the-art cost-effectiveness modelling, HTA dossier preparation for NICE / EMA / FDA / IQWiG / HAS / EU JCA, and a persistent project knowledge base — all callable as MCP tools from Claude.ai, Claude Code, and any MCP-compatible host.
Built for pharmaceutical, biotech, CRO, and medical affairs teams who need rigorous, auditable HEOR workflows without building infrastructure from scratch.
claude mcp add heor-agent -- npx heor-agent-mcp
Then restart Claude Code.
Add to your MCP configuration:
{
"mcpServers": {
"heor-agent": {
"command": "npx",
"args": ["heor-agent-mcp"]
}
}
}
> Run a literature search for semaglutide cost-effectiveness in T2D using PubMed and NICE TAs
| Tool | Purpose |
|---|---|
literature_search | Search 42 data sources with a full PRISMA-style audit trail |
screen_abstracts | PICO-based relevance scoring and study design classification |
risk_of_bias | Cochrane RoB 2 / ROBINS-I / AMSTAR-2 with GRADE RoB domain summary |
cost_effectiveness_model | Markov / PartSA / decision-tree CEA with PSA, OWSA, CEAC, EVPI |
hta_dossier_prep | Draft submissions for NICE, EMA, FDA, IQWiG, HAS, and EU JCA — GRADE table uses structured RoB when rob_results passed |
project_create | Initialize a persistent project workspace |
knowledge_search | Full-text search across a project's raw/ and wiki/ trees |
knowledge_read | Read any file from a project's knowledge base |
knowledge_write | Write compiled evidence to the project wiki (Obsidian-compatible) |
literature_searchSearches across 42 sources in parallel. Every call returns a source selection table showing which of the 42 sources were used and why — essential for HTA audit trails.
Example call:
{
"query": "semaglutide cardiovascular outcomes type 2 diabetes",
"sources": ["pubmed", "clinicaltrials", "nice_ta", "cadth_reviews", "icer_reports"],
"max_results": 20,
"output_format": "text"
}
cost_effectiveness_modelMulti-state Markov model (default) or Partitioned Survival Analysis (oncology), following ISPOR good practice and NICE reference case (3.5% discount rate, half-cycle correction). Includes:
Example call:
{
"intervention": "Semaglutide 1mg SC weekly",
"comparator": "Sitagliptin 100mg daily",
"indication": "Type 2 Diabetes Mellitus",
"time_horizon": "lifetime",
"perspective": "nhs",
"model_type": "markov",
"clinical_inputs": { "efficacy_delta": 0.5, "mortality_reduction": 0.15 },
"cost_inputs": { "drug_cost_annual": 3200, "comparator_cost_annual": 480 },
"utility_inputs": { "qaly_on_treatment": 0.82, "qaly_comparator": 0.76 },
"run_psa": true,
"output_format": "docx"
}
hta_dossier_prepDrafts submission-ready sections for six HTA frameworks with gap analysis:
| Body | Country | Submission types |
|---|---|---|
| NICE | UK | STA, MTA, early_access |
| EMA | EU | STA, MTA |
| FDA | US | STA, MTA |
| IQWiG | Germany | STA, MTA |
| HAS | France | STA, MTA |
| JCA | EU (Reg. 2021/2282) | initial, renewal, variation (with PICOs) |
Accepts piped output from literature_search and cost_effectiveness_model.
risk_of_biasAssesses risk of bias using the appropriate Cochrane instrument, auto-detected from study_type:
| Study type | Instrument |
|---|---|
| RCT | RoB 2 (5 domains: randomization, deviations, missing data, measurement, reporting) |
| Observational | ROBINS-I (7 domains: confounding, selection, classification, deviations, missing data, measurement, reporting) |
| Systematic review | AMSTAR-2 (16 items, critical vs non-critical) |
Returns a rob_results object you can pass directly to hta_dossier_prep — this replaces the heuristic RoB estimate in the GRADE table with structured domain judgments.
Example call:
{
"studies": [{ "id": "pmid_1", "study_type": "RCT", "title": "...", "abstract": "..." }],
"output_format": "json"
}
Pipeline:
literature_search→screen_abstracts→risk_of_bias→hta_dossier_prep
Projects live at ~/.heor-agent/projects/{project-id}/ with:
raw/literature/ — auto-populated literature search resultsraw/models/ — auto-populated model runsraw/dossiers/ — auto-populated dossier draftsreports/ — generated DOCX fileswiki/ — manually curated, Obsidian-compatible markdown with [[wikilinks]]Pass project: "project-id" to any tool and results are saved automatically.
Copy-paste prompts to try in Claude Code, Claude Desktop, or the web UI.
Literature search
Search the literature for tirzepatide cardiovascular outcomes in type 2 diabetes. Use PubMed, ClinicalTrials.gov, and NICE TAs.
Survival curve fitting
Fit survival curves to this OS data from KEYNOTE-189: time 0 survival 1.0, time 6 survival 0.88, time 12 survival 0.72, time 18 survival 0.60, time 24 survival 0.51, time 36 survival 0.38. Use months.
Budget impact
Estimate the 5-year NHS budget impact of semaglutide for obesity. 200,000 eligible patients, drug cost £1,200/year, comparator (orlistat) £250/year, uptake 15% year 1 to 40% year 5.
Cost-effectiveness model
Build a CE model for semaglutide vs sitagliptin in T2D, NHS perspective, lifetime horizon, with PSA.
Indirect comparison (Bucher)
I have two trials: SUSTAIN-1 showed semaglutide vs placebo HR 0.74 (0.58-0.95) for HbA1c, and AWARD-5 showed dulaglutide vs placebo HR 0.78 (0.65-0.93). Run a Bucher indirect comparison between semaglutide and dulaglutide.
MAIC (population-adjusted comparison)
Run a MAIC between SUSTAIN-7 (N=300, semaglutide vs placebo, HR 0.74, CI 0.58-0.95, age 56±10, BMI 33±5) and AWARD-11 (N=600, dulaglutide vs placebo, HR 0.78, CI 0.65-0.93, age 58±9, BMI 35±6). Adjust for age and BMI.
Abstract screening workflow
Search PubMed for pembrolizumab in NSCLC, then screen the results with population adults with NSCLC, intervention pembrolizumab, comparator chemotherapy, outcomes overall survival and PFS.
Evidence network + NMA feasibility
Search for GLP-1 receptor agonists in T2D using PubMed, build an evidence network from the results, and assess NMA feasibility.
CE model with scenarios
Build a CE model for dapagliflozin vs placebo in heart failure, NHS perspective, lifetime horizon, with PSA. Add scenarios: "20% price reduction" with drug cost 400, "10-year horizon" with time_horizon 10yr.
Full dossier preparation
Create a project for semaglutide in obesity targeting NICE and ICER. Search literature for evidence, screen the results for adults with obesity comparing semaglutide to placebo for weight loss outcomes, assess risk of bias on the screened studies, then draft a NICE STA dossier using the screened results and rob_results.
This single prompt exercises: project_create → literature_search → screen_abstracts → risk_of_bias → hta_dossier_prep (GRADE RoB from structured assessment).
42 sources across 9 categories. Every literature_search call includes a source selection table showing used/not-used status and reason for each.
| Source | Env variable |
|---|---|
| Embase | ELSEVIER_API_KEY |
| ScienceDirect | ELSEVIER_API_KEY |
| Cochrane Library | COCHRANE_API_KEY |
| Citeline | CITELINE_API_KEY |
| Pharmapendium | PHARMAPENDIUM_API_KEY |
| Cortellis | CORTELLIS_API_KEY |
| Google Scholar | SERPAPI_KEY |
All tools support output_format:
text (default) — Markdown with formatted tables and headingsjson — Structured objects for downstream toolsdocx — Microsoft Word document, saved to disk, path returned in responseDOCX files are saved to ~/.heor-agent/projects/{project}/reports/ (when a project is set) or ~/.heor-agent/reports/ (global). The tool response contains the absolute path — ready to attach to submissions or share with stakeholders.
Every tool call returns a full audit record:
Suitable for inclusion in HTA submission appendices.
# Optional — enterprise data sources
ELSEVIER_API_KEY=... # Embase + ScienceDirect
COCHRANE_API_KEY=... # Cochrane Library
CITELINE_API_KEY=... # Citeline
PHARMAPENDIUM_API_KEY=... # Pharmapendium
CORTELLIS_API_KEY=... # Cortellis
SERPAPI_KEY=... # Google Scholar
# Optional — knowledge base location
HEOR_KB_ROOT=~/.heor-agent # Default
# Optional — localhost proxy for enterprise APIs behind corporate VPN
HEOR_PROXY_URL=http://localhost:8787
# Optional — hosted tier (future)
HEOR_API_KEY=...
A companion chat interface is available at:
https://web-michael-ns-projects.vercel.app
The web UI calls the hosted MCP server on Railway for tool execution. No setup required — just add your API key and start querying.
cd web
npm install
echo "ANTHROPIC_API_KEY=sk-ant-..." > .env.local # optional server-side fallback
npm run dev -- -p 3456
Set MCP_SERVER_URL to point to your own MCP server instance (default: the public Railway deployment).
The server supports both stdio (default, for local MCP clients) and Streamable HTTP (for hosted deployment).
# Stdio mode (default — for Claude Code, Claude Desktop)
npx heor-agent-mcp
# HTTP mode — for hosted deployment, Smithery, web UI backend
npx heor-agent-mcp --http # port 8787
MCP_HTTP_PORT=3000 npx heor-agent-mcp # custom port
HTTP endpoints:
POST/GET/DELETE /mcp — MCP Streamable HTTP protocolGET /health — health checkGET /.well-known/mcp/server-card.json — Smithery discoverygit clone https://github.com/neptun2000/heor-agent-mcp
cd heor-agent-mcp
npm install
npm test # 244 tests across 66 suites
npm run build # Compile TypeScript to dist/
npm run dev # Run with tsx (no build step)
Requires: Node.js ≥ 20.
┌────────────────────────────────────────────┐
│ MCP Host (Claude.ai / Claude Code / etc.) │
└────────────────┬───────────────────────────┘
│ stdio
┌────────────────▼──────────────────────────┐
│ heor-agent-mcp server │
│ ┌──────────────────────────────────────┐ │
│ │ 7 MCP tools (Zod-validated) │ │
│ ├──────────────────────────────────────┤ │
│ │ DirectProvider (default) │ │
│ │ ├─ 42 source fetchers │ │
│ │ ├─ Audit builder + PRISMA trail │ │
│ │ ├─ Markov / PartSA economic models │ │
│ │ ├─ Markdown + DOCX formatters │ │
│ │ └─ Knowledge base (YAML + MD) │ │
│ └──────────────────────────────────────┘ │
└───────────────────────────────────────────┘
│
┌────────────┴─────────────┐
▼ ▼
┌────────────┐ ┌──────────────────┐
│ ~/.heor- │ │ External APIs │
│ agent/ │ │ (PubMed, NICE, │
│ projects/ │ │ ICER, CADTH, …) │
└────────────┘ └──────────────────┘
MIT — see LICENSE.
All outputs are preliminary and for research orientation only. Results require validation by a qualified health economist before use in any HTA submission, payer negotiation, regulatory filing, or clinical decision. This tool does not replace professional HEOR expertise.
| Channel | How to use | Who pays |
|---|---|---|
| npm | npx heor-agent-mcp | User's Claude subscription |
| Smithery | smithery.ai/servers/neptun2000-70zu/heor-agent-mcp | User's Claude subscription |
| Web UI | web-michael-ns-projects.vercel.app | User's own Anthropic API key (BYOK) |
| Hosted MCP | https://heor-agent-mcp-production.up.railway.app | Free (tool execution only) |
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.