The Healthcare MCP Server provides AI assistants with access to healthcare data and medical information tools from authoritative sources. It implements the Model Context Protocol (MCP) to retrieve accurate, up-to-date medical information including drug information, research papers, health topics, clinical trials, and medical terminology.
To install the server automatically via Smithery:
npx -y @smithery/cli install @Cicatriiz/healthcare-mcp-public --client claude
Install and run the package:
npm install healthcare-mcp
npx healthcare-mcp
git clone https://github.com/Cicatriiz/healthcare-mcp-public.git
cd healthcare-mcp-public/server
npm install
# Optional: Set up environment variables
cp .env.example .env
# Edit .env with your API keys (optional)
npm start
Run in stdio mode (default, for MCP clients):
npm start
Run in HTTP/SSE mode (for web clients):
npm run server:http
# 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 lookup
Retrieves drug information from the FDA database.
fda_drug_lookup(drug_name, search_type = "general")
Parameters:
drug_name
: Name of the drug to search forsearch_type
: Type of information to retrieve
general
: Basic drug information (default)label
: Drug labeling informationadverse_events
: Reported adverse eventsSearches medical literature from PubMed's database.
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)Accesses evidence-based health information from Health.gov.
health_topics(topic, language = "en")
Parameters:
topic
: Health topic to search for informationlanguage
: Language for content (en or es, default: en)Searches for ongoing and completed clinical trials.
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 returnLooks up ICD-10 codes and medical terminology definitions.
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 returnWhen running in HTTP mode, the following endpoints are available:
GET /health
GET /api/fda?drug_name={drug_name}&search_type={search_type}
GET /api/pubmed?query={query}&max_results={max_results}&date_range={date_range}
GET /api/health_finder?topic={topic}&language={language}
GET /api/clinical_trials?condition={condition}&status={status}&max_results={max_results}
GET /api/medical_terminology?code={code}&description={description}&max_results={max_results}
POST /mcp/call-tool
Request Body:
{
"name": "fda_drug_lookup",
"arguments": {
"drug_name": "aspirin",
"search_type": "general"
},
"session_id": "optional-session-id"
}
This MCP server utilizes several publicly available healthcare APIs:
To add this MCP server to Claude Code, run this command in your terminal:
claude mcp add-json "healthcare-mcp-public" '{"command":"npx","args":["-y","@smithery/cli","install","@Cicatriiz/healthcare-mcp-public","--client","claude"]}'
See the official Claude Code MCP documentation for more details.
There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json
file so that it is available in all of your projects.
If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json
file.
To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".
When you click that button the ~/.cursor/mcp.json
file will be opened and you can add your server like this:
{
"mcpServers": {
"healthcare-mcp-public": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@Cicatriiz/healthcare-mcp-public",
"--client",
"claude"
]
}
}
}
To add an MCP server to a project you can create a new .cursor/mcp.json
file or add it to the existing one. This will look exactly the same as the global MCP server example above.
Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.
The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.
You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.
To add this MCP server to Claude Desktop:
1. Find your configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
~/.config/Claude/claude_desktop_config.json
2. Add this to your configuration file:
{
"mcpServers": {
"healthcare-mcp-public": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@Cicatriiz/healthcare-mcp-public",
"--client",
"claude"
]
}
}
}
3. Restart Claude Desktop for the changes to take effect