Heor Agent
About
# HEORAgent MCP Server [](https://www.npmjs.com/package/heor-agent-mcp) [](./LICENSE) [](https://nodejs.org) [![Try in…
Details
- License
- MIT
Explore
- 45 MCP tools spanning HEOR, RWE, and pharmacovigilance
- Literature search across 44 data sources with PRISMA audit trail
- Risk of bias assessment (RoB 2, ROBINS-I, AMSTAR-2)
- Cost‑effectiveness modelling (Markov, PartSA, PSA, OWSA, CEAC, EVPI)
- HTA dossier drafting for NICE, EMA, FDA, IQWiG, HAS, EU JCA
- Persistent project knowledge base with Obsidian‑compatible wiki
- AI transparency disclosure aligned with ISPOR ELEVATE-GenAI
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Heor AgentCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Pick your MCP host:
- ChatGPT (Plus / Team): HEORAgent on ChatGPT — type /heor to use it; works on any conversation.
- Web UI (Claude, BYOK): web-michael-ns-projects.vercel.app — bring your Anthropic API key; runs the full v1.6.3 toolset.
---
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 protocol
- GET /health — health check
- GET /.well-known/mcp/server-card.json — Smithery discovery
---
literature_search
Search 44 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
evidence_network
Build treatment comparison network and assess NMA feasibility
evidence_indirect
Bucher and frequentist NMA with **automatic consistency check** vs direct h2h evidence (NICE DSU TSD 18)
population_adjusted_comparison
MAIC and STC for population-adjusted indirect comparisons
survival_fitting
Fit 5 parametric distributions to KM data (NICE DSU TSD 14)
itc_feasibility
Assess the 3-assumption ITC framework and recommend Bucher / NMA / MAIC / STC / ML-NMR
cost_effectiveness_model
Markov / PartSA / decision-tree CEA with PSA, OWSA, CEAC, EVPI, EVPPI; QALY + evLYG support
budget_impact_model
ISPOR-compliant BIA with year-by-year output and treatment-displacement modelling
hta_dossier
Draft submissions for NICE, EMA, FDA, IQWiG, HAS, and EU JCA — GRADE table uses structured RoB when `rob_results` passed; **inconsistency uses I² when `heterogeneity_per_outcome` passed**; **GRADE upgrading (Guyatt 2011) supported via `upgrading_per_outcome`**
utility_value_set
EQ-5D-3L / 5L value-set reference + **baseline-utility-aware** Biz 2026 ICER impact estimator (UK 5L transition)
validate_links
HTTP validation of citation URLs before presentation
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)
| Tool | Purpose |
|------|---------|
| literature_search | Search 44 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 |
| evidence_network | Build treatment comparison network and assess NMA feasibility |
| evidence_indirect | Bucher and frequentist NMA with automatic consistency check vs direct h2h evidence (NICE DSU TSD 18) |
| population_adjusted_comparison | MAIC and STC for population-adjusted indirect comparisons |
| survival_fitting | Fit 5 parametric distributions to KM data (NICE DSU TSD 14) |
| itc_feasibility | Assess the 3-assumption ITC framework and recommend Bucher / NMA / MAIC / STC / ML-NMR |
| cost_effectiveness_model | Markov / PartSA / decision-tree CEA with PSA, OWSA, CEAC, EVPI, EVPPI; QALY + evLYG support |
| budget_impact_model | ISPOR-compliant BIA with year-by-year output and treatment-displacement modelling |
| hta_dossier | Draft submissions for NICE, EMA, FDA, IQWiG, HAS, and EU JCA — GRADE table uses structured RoB when rob_results passed; inconsistency uses I² when heterogeneity_per_outcome passed; GRADE upgrading (Guyatt 2011) supported via upgrading_per_outcome |
| utility_value_set | EQ-5D-3L / 5L value-set reference + baseline-utility-aware Biz 2026 ICER impact estimator (UK 5L transition) |
| validate_links | HTTP validation of citation URLs before presentation |
| 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) |
Projects live at ~/.heor-agent/projects/{project-id}/ with:
- raw/literature/ — auto-populated literature search results
- raw/models/ — auto-populated model runs
- raw/dossiers/ — auto-populated dossier drafts
- reports/ — generated DOCX files
- wiki/ — manually curated, Obsidian-compatible markdown with [[wikilinks]]
Pass project: "project-id" to any tool and results are saved automatically.
---
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.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"heor agent": {
"heor-agent": {
"command": "npx",
"args": [
"heor-agent-mcp"
]
}
}
}
}
McpServers
{
"heor-agent": {
"command": "npx",
"args": [
"heor-agent-mcp"
]
}
}
AI-powered Health Economics and Outcomes Research (HEOR) agent as a Model Context Protocol server.
> Try it now → HEORAgent on ChatGPT (ChatGPT Plus / Team)
> · Web UI (Claude, BYOK)
> · npx heor-agent-mcp for Claude Desktop / Claude Code
Automates literature review across 44 data sources, risk of bias assessment (RoB 2 / ROBINS-I / AMSTAR-2), EQ-5D value set impact estimation, 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.
---
First 60 seconds
Verify your install works before wiring it into Claude / Cursor / Continue. Open two terminal tabs:
Tab 1 — start the server in HTTP mode:
MCP_HTTP_PORT=8080 npx heor-agent-mcp@latest
You should see:
HEORAgent MCP server running on HTTP port 8080
Tab 2 — confirm it responds:
curl -s http://localhost:8080/health
Expected output:
{"status":"ok","server":"heor-agent-mcp","version":"1.10.2"}
✅ If you see the JSON above, the npm package works on your machine. Any further issues are in your MCP client config (Claude Desktop / Cursor / Continue), not the server.
❌ If you see command not found, run node --version — you need Node ≥20. If you see a different error, file a quick issue at https://github.com/neptun2000/heor-agent-mcp/issues with the output.
Now stop Tab 1 (Ctrl+C) and pick your client below — you don't need the HTTP mode for the actual integration; Claude / Cursor / Continue all use stdio.
---
Quick Start (per client)
Pick your MCP host:
Claude Code
claude mcp add heor-agent -- npx heor-agent-mcp
Then restart Claude Code.
Claude Desktop / claude.ai Desktop
Edit your MCP config file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS) and add:
{
"mcpServers": {
"heor-agent": {
"command": "npx",
"args": ["heor-agent-mcp"]
}
}
}
Then restart Claude Desktop.
Cursor / Continue / Cline
Same config shape as Claude Desktop above; the file path differs by client:
- Cursor: Settings → MCP → Add new MCP server
- Continue: ~/.continue/config.json under the mcpServers key
- Cline: Settings → MCP Servers → Edit MCP Settings
Hosted (no install)
- ChatGPT (Plus / Team): HEORAgent on ChatGPT — type /heor to use it; works on any conversation.
- Web UI (Claude, BYOK): web-michael-ns-projects.vercel.app — bring your Anthropic API key; runs the full v1.6.3 toolset.
---
Your first prompt
Once your MCP host is configured, paste any of these to verify end-to-end:
Run a literature search for semaglutide cost-effectiveness in T2D
using PubMed, NICE TAs, and ICER reports. Set runs=2.
Run irb_review for an industry-funded interventional Phase 2 trial in
relapsed MM — multi-site US+EU, pseudonymized data, greater-than-minimal
risk. I need the review tier, GDPR/HIPAA DMP, SAE framework, and the
ready-to-paste cover letter.
Run jca_pico_scope for osimertinib in EGFR-mutant 2L NSCLC across
DE/FR/IT/ES/NL. Then prepare an EU JCA dossier draft using the picos.
The first prompt exercises literature_search + validate_links (free, no API keys needed). The second exercises irb_review (pure decision tree, instant). The third exercises jca_pico_scope → hta_dossier pipeline.
---
What's new
See CHANGELOG.md for full version history. Current: v1.23.0 (45 tools, 44 data sources).
v1.17.0–v1.23.0 — Living Evidence Intelligence (review → reimbursement)
A connected RWE + cross-deliverable layer (see docs/FEATURES.md for the full table):
- RWE & real-world safety: rwe.method_select (study-design selection), pv.comparative_safety (class-level FAERS-style AE ranking), evidence.triangulation (per-outcome RCT↔RWE concordance).
- Governed social listening: rwe.social_listening_protocol + pv.social_listening_triage (GVP Module VI ICSR triage — no scraping).
- One source of truth: evidence.claim_registry (author/auto-import a figure once), evidence.consistency_check (detect drift across dossier/publication/payer), publication.draft (reuse claims; CONSORT/STROBE/PRISMA/CHEERS + GPP2022/ICMJE).
- Living orchestration: evidence.gap_analysis (iEGP), workflow.living_evidence (SLR → living KB → JCA/HTA runbook), hta.living_gvd (regenerate only the GVD sections whose figures changed).
v1.13.0 — AI Transparency Disclosure (ISPOR ELEVATE-GenAI aligned)
16 tools now accept an ai_disclosure_level parameter:
| Value | Behaviour |
|-------|-----------|
| "off" | No disclosure block appended |
| "standard" | Model ID · tools called · data sources · date · human-review reminder |
| "submission" | Standard block + ISPOR ELEVATE-GenAI full citation |
Default by tool tier: HTA/regulatory tools (hta_dossier, hta_workflow, jca_pico_scope, pv_classify, etc.) default to "submission"; analysis tools (risk_of_bias, cost_effectiveness_model, etc.) default to "standard". Pass ai_disclosure_level: "off" to suppress.
Environment-level default: set HEORAGENT_DISCLOSURE_LEVEL=off|standard|submission to override the built-in per-tool defaults globally.
Web UI persona defaults: payer and HTA-reviewer personas always use "submission"; analyst personas default to "standard" and switch to "off" for scratch / exploratory prompts.
v1.0.4 highlights (still in v1.6.3)
Pharmacovigilance + workflow orchestration:
…
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



