- Home
- MCP servers
- Unofficial EMA
Unofficial EMA
- javascript
0
GitHub Stars
javascript
Language
6 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"openpharma-org-ema-mcp": {
"command": "node",
"args": [
"/path/to/ema-mcp-server/build/index.js"
]
}
}
}You can access EMA public JSON data through a single, unified MCP server that exposes EU regulatory information for medicines, safety, and regulatory documents. This server makes it easier to explore EU drug approvals, EPARs, orphan designations, shortages, safety reviews, and pediatric data in a consistent MCP workflow alongside other global sources.
How to use
You connect to the EMA MCP server using an MCP client by configuring the server entry and then issuing method calls that retrieve medicines, safety data, and related documents. Start by ensuring your MCP client is pointed at a defined MCP server entry, then use the available methods to search medicines, fetch specific records, check safety updates, and access EMA documents.
Key capabilities you’ll use include searching EU-approved medicines, getting detailed records for a specific medicine, retrieving orphan designations, checking current supply shortages, and querying EMA documents such as EPARs. Each method returns a structured result with a total count, an array of results, and metadata about the data source and last update.
How to install
Prerequisites you need on your host: a modern runtime to execute JavaScript (Node.js). Verify Node.js is installed by running node -v and npm -v in your terminal.
Create your MCP server configuration file using the example configuration below. This defines the EMA MCP server entry and how to start it.
Save the configuration snippet to a file named mcp-config.json or include it in your MCP launcher configuration as appropriate for your environment.
Run the EMA MCP server using the exact command and path provided in the configuration. The example assumes you have the EMA MCP server built at the path shown.
If you manage multiple MCP servers, you can aggregate them in a single MCP config file and start them together through your MCP client or orchestrator according to your setup.
Configuration and server entry
{
"mcpServers": {
"ema-mcp-server": {
"command": "node",
"args": ["/path/to/ema-mcp-server/build/index.js"],
"env": {}
}
}
}
Notes and tips
You can customize how you query EMA data by using the available methods like search_medicines, get_medicine_by_name, get_orphan_designations, and search_epar_documents. Each method accepts specific parameters to filter results, such as active substance, therapeutic area, status, year, and limit.
If you need to inspect EMA safety communications or pediatric data, you can query get_dhpcs, get_psusas, and get_pips respectively. Response structures follow a consistent pattern with total_count, results, source, source_url, and last_updated fields.
Examples of common workflows
Search EU-approved medicines for a substance like semaglutide and limit results to 10 records by using the search_medicines method with appropriate filters.
Retrieve a complete record for a medicine by its trade name using get_medicine_by_name to obtain EMA product number, active substance, and approval details.
Security and access considerations
Protect your MCP configuration file and any environment variables used by the EMA MCP server. Use least-privilege access and rotate credentials as needed. If you expose the MCP server to the internet, apply standard security hardening and monitor access logs.
Troubleshooting
If the server does not start, verify the path to the EMA MCP server build is correct and that Node.js is installed. Check that the MCP configuration includes the proper command, args, and env sections as shown in the example. Confirm your MCP client is configured to read from the same server entry name.
Available tools
search_medicines
Search EU-approved medicines database with filters like active_substance, therapeutic_area, status, orphan, prime, biosimilar, conditional_approval, and limit to control results.
get_medicine_by_name
Fetch a complete medicine record by its trade name, including EMA product number and approval details.
get_orphan_designations
Retrieve EU orphan drug designations with optional filters such as therapeutic_area, active_substance, year, status, and limit.
get_supply_shortages
Get current medicine supply shortage information filtered by active_substance, medicine_name, therapeutic_area, and status.
get_referrals
Fetch EU-wide safety reviews and referrals with optional filters like safety, active_substance, status, year, and limit.
get_post_auth_procedures
Obtain post-authorization procedures for a specific medicine or list.
get_dhpcs
Retrieve Direct Healthcare Professional Communications safety notices filtered by medicine_name, active_substance, dhpc_type, year, and limit.
get_psusas
Get Periodic Safety Update Reports with filters for active_substance and regulatory_outcome.
get_pips
Fetch Paediatric Investigation Plans by active_substance, therapeutic_area, decision_type, year, and limit.
get_herbal_medicines
Get herbal medicine assessments. Note: endpoint availability may be empty until a valid endpoint is identified.
get_article58_medicines
Fetch medicines for use outside EU under Article 58. Note: endpoint availability may be empty until a valid endpoint is identified.
search_epar_documents
Search EPAR documents with optional filters for medicine_name, document_type, language, and limit.
search_all_documents
Search all EMA documents with optional search_term, document_type, category, and limit.
search_non_epar_documents
Search non-EPAR documents with optional search_term, document_type, and limit.