medical-mcp

medical-mcp

This MCP server provides authoritative medical data from FDA, WHO, PubMed, RxNorm, and Google Scholar, enabling drug information lookup, health statistics retrieval, medical literature searching, and clinical guidelines access directly in AI workflows.

Category
访问服务器

README

🩺 Medical MCP Server

Bring trusted medical data directly into your AI workflow. A local server for private, free access to FDA, WHO, PubMed, RxNorm, and Google Scholar. No API keys. No data leaks.

An MCP (Model Context Protocol) server that brings authoritative medical information into AI coding environments like Cursor and Claude Desktop.

<a href="https://glama.ai/mcp/servers/@JamesANZ/medical-mcp"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@JamesANZ/medical-mcp/badge" alt="medical-mcp MCP server" /> </a>

Trust Score

Why Use Medical MCP?

  • 🔒 Your Data Never Leaves – Runs 100% locally; no tracking, no logs, no cloud
  • 🆓 No API Keys – Works out of the box, zero configuration
  • 🏥 Authoritative Sources – FDA, WHO, PubMed, RxNorm, Google Scholar, AAP, pediatric journals
  • Easy Setup – One-click install in Cursor or simple manual setup
  • 🔬 Comprehensive – Drug info, health stats, medical literature, clinical guidelines, pediatric sources

Quick Start

Ready to bring medical intelligence into your AI workflow? Install in seconds:

Install in Cursor (Recommended):

🔗 Install in Cursor

Or install manually:

npm install -g medical-mcp
# Or from source:
git clone https://github.com/JamesANZ/medical-mcp.git
cd medical-mcp && npm install && npm run build

Features

💊 Drug Information

  • search-drugs – Search FDA database by brand or generic name
  • get-drug-details – Get comprehensive drug info by NDC code
  • search-drug-nomenclature – Standardized drug names via RxNorm

📊 Health Statistics

  • get-health-statistics – WHO Global Health Observatory data (life expectancy, mortality, disease prevalence)

🔬 Medical Literature

  • search-medical-literature – Search 30M+ PubMed articles
  • get-article-details – Detailed article info by PMID
  • search-google-scholar – Academic research with citations
  • search-medical-databases – Multi-database search (PubMed, Scholar, Cochrane, ClinicalTrials.gov)
  • search-medical-journals – Top journals (NEJM, JAMA, Lancet, BMJ, Nature Medicine)

🏥 Clinical Tools

  • search-clinical-guidelines – Practice recommendations from medical organizations

👶 Pediatric Sources

  • search-pediatric-guidelines – AAP guidelines and Bright Futures preventive care
  • search-pediatric-literature – Research from major pediatric journals (Pediatrics, JAMA Pediatrics, etc.)
  • get-child-health-statistics – Pediatric health indicators from WHO (mortality, immunization, nutrition)
  • search-pediatric-drugs – Drugs with pediatric labeling and dosing information
  • search-aap-guidelines – Comprehensive AAP guideline search (Bright Futures + Policy Statements)

📊 Cache Management

  • get-cache-stats – View cache statistics (hit rate, memory usage, entry count)

Installation

Cursor (One-Click)

Click the install link above or use:

cursor://anysphere.cursor-deeplink/mcp/install?name=medical-mcp&config=eyJtZWRpY2FsLW1jcCI6eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIm1lZGljYWwtbWNwIl19fQ==

Manual Installation

Requirements: Node.js 18+ and npm

# Clone and build
git clone https://github.com/JamesANZ/medical-mcp.git
cd medical-mcp
npm install
npm run build

# Run server
npm start

Claude Desktop

Add to claude_desktop_config.json:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "medical-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/medical-mcp/build/index.js"]
    }
  }
}

Restart Claude Desktop after configuration.

Usage Examples

Search for Drug Information

Ask about a medication's uses, dosage, and safety information:

{
  "tool": "search-drugs",
  "arguments": { "query": "Tylenol", "limit": 5 }
}

Get Health Statistics

Retrieve global health indicators like life expectancy or mortality rates:

{
  "tool": "get-health-statistics",
  "arguments": {
    "indicator": "Life expectancy at birth (years)",
    "country": "USA"
  }
}

Search Medical Literature

Find peer-reviewed research articles on any medical topic:

{
  "tool": "search-medical-literature",
  "arguments": { "query": "COVID-19 treatment", "max_results": 10 }
}

Data Sources

Source Coverage Update Frequency
FDA All FDA-approved drugs (US) Real-time
WHO Global health stats (194 countries) Annual
PubMed 30M+ medical citations Daily
RxNorm Standardized drug nomenclature (US) Weekly
Google Scholar Academic papers across disciplines Real-time
AAP Bright Futures guidelines & policy statements Periodic
Pediatric Journals Major pediatric journals (Pediatrics, JAMA Pediatrics, etc.) Daily

Security & Privacy

  • Localhost-only – Server runs locally, no external access
  • No data storage – All queries are real-time, nothing saved
  • Process isolation – Medical data stays on your machine
  • No API keys – No credentials to manage or leak

Use Cases

  • Medical Researchers – Quick literature reviews without paywalls
  • Healthcare Developers – Build prototypes with real medical data
  • Students – Access drug information and research papers
  • Clinicians – Reference tool for drug details and health statistics
  • Pediatricians – AAP guidelines, Bright Futures, pediatric literature, and child health data

Caching

The server includes an in-memory caching layer to improve response times and reduce API calls:

  • Automatic Caching: All API responses are cached with source-specific TTL policies
  • TTL Policies:
    • FDA data: 24 hours
    • PubMed articles: 1 hour
    • WHO statistics: 7 days
    • RxNorm nomenclature: 30 days
    • Clinical guidelines: 7 days
    • Google Scholar: 1 hour
    • Bright Futures: 30 days
    • AAP Policy: 7 days
    • Pediatric journals: 1 hour
    • Child health indicators: 7 days
    • Pediatric drugs: 24 hours
  • Cache Management: Automatic cleanup of expired entries every 5 minutes
  • LRU Eviction: Least recently used entries are evicted when cache exceeds 1000 entries
  • Cache Statistics: Use get-cache-stats tool to view hit rates and memory usage

Configuration (via environment variables):

  • CACHE_ENABLED=true - Enable/disable caching (default: true)
  • CACHE_MAX_SIZE=1000 - Maximum cache entries (default: 1000)
  • CACHE_TTL_FDA=86400 - FDA TTL in seconds (default: 86400)
  • CACHE_TTL_PUBMED=3600 - PubMed TTL in seconds (default: 3600)
  • CACHE_TTL_WHO=604800 - WHO TTL in seconds (default: 604800)
  • CACHE_TTL_RXNORM=2592000 - RxNorm TTL in seconds (default: 2592000)
  • CACHE_CLEANUP_INTERVAL=300000 - Cleanup interval in milliseconds (default: 300000)

Performance: Cached responses typically return in <10ms vs 800-1500ms for API calls. Expected cache hit rate: 60%+ for common queries.

Technical Details

Built with: Node.js, TypeScript, MCP SDK
Dependencies: @modelcontextprotocol/sdk, superagent, puppeteer, zod
Platforms: macOS, Windows, Linux

Note: Google Scholar access uses web scraping with rate limiting. Other sources use official APIs.

Medical Disclaimer

⚠️ Important: This tool provides information from authoritative sources but should not replace professional medical advice, diagnosis, or treatment. Always consult qualified healthcare professionals for medical decisions.

Contributing

If this project helps you, please star it on GitHub!

Contributions welcome! Please open an issue or submit a pull request.

License

MIT License – see LICENSE.md for details.

Support

If you find this project useful, consider supporting it:

⚡ Lightning Network

lnbc1pjhhsqepp5mjgwnvg0z53shm22hfe9us289lnaqkwv8rn2s0rtekg5vvj56xnqdqqcqzzsxqyz5vqsp5gu6vh9hyp94c7t3tkpqrp2r059t4vrw7ps78a4n0a2u52678c7yq9qyyssq7zcferywka50wcy75skjfrdrk930cuyx24rg55cwfuzxs49rc9c53mpz6zug5y2544pt8y9jflnq0ltlha26ed846jh0y7n4gm8jd3qqaautqa

₿ Bitcoin: bc1ptzvr93pn959xq4et6sqzpfnkk2args22ewv5u2th4ps7hshfaqrshe0xtp

Ξ Ethereum/EVM: 0x42ea529282DDE0AA87B42d9E83316eb23FE62c3f

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选