RowanErasmus/dailymed-mcp-server
If you are the rightful owner of dailymed-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The MCP Server for DailyMed provides access to comprehensive drug information from the DailyMed database via the National Library of Medicine's web services API.
DailyMed MCP Server
A Model Context Protocol (MCP) server that provides access to the DailyMed API for comprehensive drug information.
About DailyMed
DailyMed is the official FDA database containing drug labeling information for approved prescription/nonprescription drugs, biologics, and medical devices. It provides structured, up-to-date drug information in multiple formats with cross-references to RxNorm and pharmacologic classifications.
Installation
git clone <repository-url>
cd dailymed-mcp-server
npm install
npm run build
Optional: Download mapping files from DailyMed Mapping Files and place in project root:
pharmacologic_class_mappings.txt
rxnorm_mappings.txt
Usage
npm start # Production
npm run dev # Development with hot reload
Key Features
Search Tools
search_spls
- Search Structured Product Labels with advanced filtering and paginationsearch_drug_names
- Search drug names with manufacturer and name type filterssearch_rxcuis
- Search RxCUI codes with term type filteringsearch_drug_classes
- Search pharmacologic drug classessearch_application_numbers
- Search FDA application numberssearch_uniis
- Search UNII codes with advanced filters
Drug Information
get_drug_details
- Complete drug information by SET IDget_drug_history
- Version history for drugsget_drug_ndcs
- NDC codes for specific drugsget_drug_packaging
- Packaging informationget_drug_media
- Media links (images, documents)
Database Access
get_all_*
- Paginated access to drug names, classes, NDCs, RxCUIs, UNIIs, application numbersget_dailymed_context
- Database information and capabilities
Enhanced Mapping (when mapping files present)
search_by_rxnorm_mapping
- Search RxNorm mappings by drug nameget_*_mappings_for_setid
- Get mappings for specific drugssearch_drugs_by_pharmacologic_class
- Find drugs by pharmacologic class
Advanced SPL Search
Simple Search
{
"query": "aspirin",
"page": 1,
"pageSize": 25
}
Advanced Search
{
"manufacturer": "Pfizer",
"boxed_warning": true,
"published_date": "2023-01-01",
"published_date_comparison": "gte",
"page": 1,
"pageSize": 50
}
Available filters: application_number
, boxed_warning
, dea_schedule_code
, drug_name
, name_type
, labeler
, manufacturer
, ndc
, rxcui
, unii_code
, published_date
, and more.
Pagination
All search and list tools support pagination with consistent response format:
{
"data": [...],
"pagination": {
"page": 1,
"pageSize": 25,
"totalResults": 150,
"totalPages": 6,
"hasNextPage": true,
"hasPreviousPage": false
}
}
Claude Desktop Configuration
{
"mcpServers": {
"dailymed": {
"command": "node",
"args": ["/path/to/dailymed-mcp-server/dist/index.js"],
"cwd": "/path/to/dailymed-mcp-server"
}
}
}
API Information
- Base URL: https://dailymed.nlm.nih.gov/dailymed/services/v2
- Format: JSON
- Authentication: None required
- Compliance: Fully compliant with DailyMed API v2 specifications
Development
npm run build # Build TypeScript
npm run dev # Development mode
Project Structure:
src/
āāā clients/ # Modular API clients
āāā types/ # TypeScript type definitions
āāā utils/ # Utilities and helpers
āāā index.ts # MCP server implementation
āāā tools.ts # Tool definitions
License
MIT License