A comprehensive collection of MCP servers for biomedical research, including tools for querying ChEMBL, ClinicalTrials.gov, DGIdb, Human Protein Atlas, PubMed, STRING-db, and other biomedical databases, plus a ToolUniverse wrapper and workflow orchestration
This collection of 12 biomedical MCP servers exhibits inconsistent quality. Most tools have basic descriptions and schemas, but lack depth in parameter documentation, error handling guidance, and output schema clarity. Tool naming is generally verb-driven (query_, search_, get_, find_, execute_), which is positive. However, many parameter descriptions are minimal or absent, and error recovery guidance is not evident. The execute_python and execute_workflow tools present security concerns (WRITE risk) without visible input validation or confirmation patterns. Output schemas are not documented in the provided code samples, making it impossible to verify downstream tool-chaining support. Average tool description length appears ~80-120 chars, below the 194-char baseline for A+ tools.
Search a catalog of 2000+ biomedical tools by keyword. The tools listed alongside this one are a curated subset — this finder lets you discover and call ANY tool in the full catalog. Returns tool names, descriptions, and parameter schemas. To call a discovered tool, prefix its name with 'tooluniverse__' (e.g. if you find 'OmniPath_get_tf_target_interactions', call it as 'tooluniverse__OmniPath_get_tf_target_interactions').
Execute Python code for data analysis and visualization
Execute a workflow combining multiple MCP tools
Find biomedical entity IDs (CURIEs) for genes, proteins, drugs, and other biomedical entities
Retrieve Human Protein Atlas data
Map genetic variants to protein domains
Query ChEMBL database for mechanism of action data
execute_python and execute_workflow lack input validation, confirmation patterns, and error recovery guidance. Both are WRITE-risk tools that can modify state or execute arbitrary code without visible safeguards.
Output schemas are not documented in source code. LLMs cannot infer what fields to expect from tool responses, breaking downstream tool-chaining and forcing agents to guess field names.
Parameter descriptions are minimal or missing for several tools. query_dgidb has no 'required' declaration; map_variant_to_domain lacks descriptions for both parameters. Descriptions under 20 chars cannot guide LLM parameter selection.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | <=2025-11-25 | v2 |
Query DGIdb for drug-gene interactions
Query MediKanren biomedical knowledge graph
Query STRING database for protein-protein interactions
Search ClinicalTrials.gov database for clinical trials
Search PubMed for biomedical literature
execute_workflow parameter 'workflow' is typed as object with only a description 'Workflow definition', no schema for the workflow structure. LLMs cannot construct valid workflow objects without a detailed schema.
Tool_Finder_Keyword naming violates verb_noun convention (uses PascalCase + underscore). Should be 'search_tool_catalog' or 'find_tools'. Current name is non-standard and harder for LLMs to parse.