Healthcare MCP Server
Allows searching medical literature from PubMed's database of scientific articles, retrieving article details such as PMID, title, authors, journal, publication date, abstract, and URL.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Healthcare MCP Serversearch PubMed for recent studies on Alzheimer's disease"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Healthcare MCP Server
A Model Context Protocol (MCP) server providing AI assistants with access to healthcare data and medical information tools.
Overview
Healthcare MCP Server is a specialized Node.js server that implements the Model Context Protocol (MCP) to provide AI assistants with access to healthcare data and medical information tools. It enables AI models to retrieve accurate, up-to-date medical information from authoritative sources. This repository provides a single DXT package containing the complete Node.js implementation.
Related MCP server: Medical MCP Server
DXT Extension
This repository includes a packaged DXT (Desktop Extension) file for easy installation in compatible development environments. Download healthcare-mcp.dxt for one-click installation.
Features
FDA Drug Information: Search and retrieve comprehensive drug information from the FDA database (improved response parsing)
PubMed Research: Search medical literature from PubMed's database of scientific articles
Health Topics: Access evidence-based health information from Health.gov (updated to API v4)
Clinical Trials: Search for ongoing and completed clinical trials (updated API parameters)
Medical Terminology: Look up ICD-10 codes and medical terminology definitions
medRxiv Search: Search for pre-print articles on medRxiv
Medical Calculator: Calculate Body Mass Index (BMI)
NCBI Bookshelf Search: Search the NCBI Bookshelf for biomedical books and documents
DICOM Metadata Extraction: Extract metadata from a DICOM file
Caching: Efficient caching system with connection pooling to reduce API calls and improve performance
Usage Tracking: Anonymous usage tracking to monitor API usage
Error Handling: Robust error handling and logging
Multiple Interfaces: Support for both stdio (for CLI) and HTTP/SSE interfaces
API Documentation: Interactive API documentation with Swagger UI
Comprehensive Testing: Extensive test suite with Node.js testing and API verification
Installation
Option 1: DXT Extension (Recommended)
Download
healthcare-mcp.dxtfrom this repositoryOpen with your compatible MCP client (such as Claude Desktop)
Follow the installation prompts
Configure optional settings through the GUI
Option 2: Installing via Smithery
To install Healthcare Data and Medical Information Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @andrewsalopek1/healthcare-mcp-server --client claudeOption 3: npm Installation
Install the package:
npm install healthcare-mcpRun the server:
npx healthcare-mcp
Option 4: Manual Installation from Source
Clone the repository:
git clone https://github.com/andrewsalopek1/healthcare-mcp-server.git cd healthcare-mcp-server/serverInstall dependencies:
npm installSet up environment variables (optional):
# Create .env file from example cp .env.example .env # Edit .env with your API keys (optional)Run the server:
npm start
Usage
Running the Server
stdio mode (default, for MCP clients):
npm startHTTP/SSE mode (for web clients):
npm run server:http
Testing the Tools
You can test the MCP tools using the built-in test scripts:
# Test all tools
npm test
# Test individual tools
npm run test:fda # Test FDA drug lookup
npm run test:pubmed # Test PubMed search
npm run test:health # Test Health Topics
npm run test:trials # Test Clinical Trials search
npm run test:icd # Test ICD-10 code lookupAPI Reference
The Healthcare MCP Server provides both a programmatic API for direct integration and a RESTful HTTP API for web clients.
RESTful API Endpoints
When running in HTTP mode, the following endpoints are available:
Health Check
GET /healthReturns the status of the server and its services.
FDA Drug Lookup
GET /api/fda?drug_name={drug_name}&search_type={search_type}Parameters:
drug_name: Name of the drug to search forsearch_type: Type of information to retrievegeneral: Basic drug information (default)label: Drug labeling informationadverse_events: Reported adverse events
Example Response:
{
"status": "success",
"drug_name": "aspirin",
"search_type": "general",
"total_results": 25,
"results": [
{
"brand_name": "ASPIRIN",
"generic_name": "ASPIRIN",
"manufacturer": "Bayer Healthcare",
"product_type": "HUMAN OTC DRUG",
"route": "ORAL",
"active_ingredients": [
{
"name": "ASPIRIN",
"strength": "325 mg/1"
}
]
}
]
}PubMed Search
GET /api/pubmed?query={query}&max_results={max_results}&date_range={date_range}Parameters:
query: Search query for medical literaturemax_results: Maximum number of results to return (default: 5, max: 50)date_range: Limit to articles published within years (e.g. '5' for last 5 years)
Example Response:
{
"status": "success",
"query": "diabetes treatment",
"total_results": 123456,
"date_range": "5",
"articles": [
{
"pmid": "12345678",
"title": "New advances in diabetes treatment",
"authors": ["Smith J", "Johnson A"],
"journal": "Journal of Diabetes Research",
"publication_date": "2023-01-15",
"abstract": "This study explores new treatment options...",
"url": "https://pubmed.ncbi.nlm.nih.gov/12345678/"
}
]
}Health Topics
GET /api/health_finder?topic={topic}&language={language}Parameters:
topic: Health topic to search for informationlanguage: Language for content (en or es, default: en)
Example Response:
{
"status": "success",
"search_term": "diabetes",
"language": "en",
"total_results": 15,
"topics": [
{
"title": "Diabetes Type 2",
"url": "https://health.gov/myhealthfinder/topics/health-conditions/diabetes/diabetes-type-2",
"last_updated": "2023-05-20",
"section": "Health Conditions",
"description": "Information about managing type 2 diabetes",
"content": ["Diabetes is a disease...", "Treatment options include..."]
}
]
}Clinical Trials Search
GET /api/clinical_trials?condition={condition}&status={status}&max_results={max_results}Parameters:
condition: Medical condition or disease to search forstatus: Trial status (recruiting, completed, active, not_recruiting, or all)max_results: Maximum number of results to return (default: 10, max: 100)
Example Response:
{
"status": "success",
"condition": "breast cancer",
"search_status": "recruiting",
"total_results": 256,
"trials": [
{
"nct_id": "NCT12345678",
"title": "Study of New Treatment for Breast Cancer",
"status": "Recruiting",
"phase": "Phase 2",
"study_type": "Interventional",
"conditions": ["Breast Cancer", "HER2-positive Breast Cancer"],
"locations": [
{
"facility": "Memorial Hospital",
"city": "New York",
"state": "NY",
"country": "United States"
}
],
"sponsor": "National Cancer Institute",
"url": "https://clinicaltrials.gov/study/NCT12345678",
"eligibility": {
"gender": "Female",
"min_age": "18 Years",
"max_age": "75 Years",
"healthy_volunteers": "No"
}
}
]
}ICD-10 Code Lookup
GET /api/medical_terminology?code={code}&description={description}&max_results={max_results}Parameters:
code: ICD-10 code to look up (optional if description is provided)description: Medical condition description to search for (optional if code is provided)max_results: Maximum number of results to return (default: 10, max: 50)
Example Response:
{
"status": "success",
"search_type": "description",
"search_term": "diabetes",
"total_results": 25,
"codes": [
{
"code": "E11",
"description": "Type 2 diabetes mellitus",
"category": "Endocrine, nutritional and metabolic diseases"
},
{
"code": "E10",
"description": "Type 1 diabetes mellitus",
"category": "Endocrine, nutritional and metabolic diseases"
}
]
}Generic Tool Execution
POST /mcp/call-toolRequest Body:
{
"name": "fda_drug_lookup",
"arguments": {
"drug_name": "aspirin",
"search_type": "general"
},
"session_id": "optional-session-id"
}MCP Tools
When using the MCP server through compatible clients, the following tools are available:
FDA Drug Lookup
fda_drug_lookup(drug_name, search_type = "general")Parameters:
drug_name: Name of the drug to search forsearch_type: Type of information to retrievegeneral: Basic drug information (default)label: Drug labeling informationadverse_events: Reported adverse events
PubMed Search
pubmed_search(query, max_results = 5, date_range = "")Parameters:
query: Search query for medical literaturemax_results: Maximum number of results to return (default: 5)date_range: Limit to articles published within years (e.g. '5' for last 5 years)
Health Topics
health_topics(topic, language = "en")Parameters:
topic: Health topic to search for informationlanguage: Language for content (en or es, default: en)
Clinical Trials Search
clinical_trials_search(condition, status = "recruiting", max_results = 10)Parameters:
condition: Medical condition or disease to search forstatus: Trial status (recruiting, completed, active, not_recruiting, or all)max_results: Maximum number of results to return
ICD-10 Code Lookup
lookup_icd_code(code = null, description = null, max_results = 10)Parameters:
code: ICD-10 code to look up (optional if description is provided)description: Medical condition description to search for (optional if code is provided)max_results: Maximum number of results to return
medRxiv Search
medrxiv_search(query, max_results = 10)Parameters:
query: Search query for medRxiv articlesmax_results: Maximum number of results to return
Calculate BMI
calculate_bmi(height_meters, weight_kg)Parameters:
height_meters: Height in metersweight_kg: Weight in kilograms
NCBI Bookshelf Search
ncbi_bookshelf_search(query, max_results = 10)Parameters:
query: Search query for NCBI Bookshelfmax_results: Maximum number of results to return
Extract DICOM Metadata
extract_dicom_metadata(file_path)Parameters:
file_path: Path to the DICOM file
Data Sources
This MCP server utilizes several publicly available healthcare APIs:
License
MIT License
This server cannot be deployed
Maintenance
Related MCP Connectors
Search 36M+ PubMed biomedical articles and ClinicalTrials.gov studies.
Search biomedical literature, get article details, find related articles, and explore MeSH terms
Clinical trials, RxNorm drug lookups, FDA drug and device data, PubMed and NHS organisations.
Connect AI clients to biomedical data and tools.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI assistants to search and retrieve biomedical research articles from PubMed's database of over 35 million citations, including metadata, abstracts, MeSH terms, and full-text PDFs when available.11MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to query authoritative medical sources such as FDA, WHO, PubMed, RxNorm, and ClinicalTrials.gov for drug information, safety data, health statistics, clinical guidelines, pediatric resources, and evidence-graded literature. Runs locally with no API keys or data leaving the machine.101 npmISC
- AlicenseNot gradedqualityAmaintenanceEnables AI clients to query authoritative medical sources such as FDA, WHO, PubMed, RxNorm, and ClinicalTrials.gov for drug information, medical literature, health statistics, clinical guidelines, and pediatric resources through local MCP tools.101 npmISC
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to query authoritative sources like FDA, WHO, PubMed, RxNorm, and Google Scholar for drug information, health statistics, clinical guidelines, trials, and medical literature. It runs locally with no API keys, so data stays private while results come back with evidence grading and resilient fallbacks.101 npmISC