opentargets-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_TRANSPORT | No | Transport protocol: stdio, sse, or http. | stdio |
| FASTMCP_SERVER_HOST | No | Host address to bind the server. | 0.0.0.0 |
| FASTMCP_SERVER_PORT | No | Port number for the server. | 8000 |
| OPEN_TARGETS_API_URL | No | Base URL for the Open Targets GraphQL API. | https://api.platform.opentargets.org/api/v4/graphql |
| OPEN_TARGETS_RATE_LIMIT_RPS | No | Rate limit requests per second. | |
| OPEN_TARGETS_RATE_LIMIT_BURST | No | Rate limit burst size. | |
| OPEN_TARGETS_RATE_LIMIT_ENABLED | No | Enable global server-side rate limiting. Can also be set via --rate-limiting. | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_target_alternative_genesA | List alternate gene symbols and database cross-references for a target. |
| get_target_associated_diseasesB | List diseases linked to a target with association scores. |
| get_target_chemical_probesB | List available chemical probes and their quality metrics. |
| get_target_classA | Return ChEMBL target class annotations for a gene. |
| get_target_depmap_essentialityB | Fetch DepMap CRISPR essentiality scores across cell lines. |
| get_target_expressionA | Return RNA and protein expression profiles for a target across tissues. |
| get_target_genetic_constraintA | Fetch genetic constraint metrics (gnomAD) for a target. |
| get_target_hallmarksA | Return cancer hallmark annotations associated with a target. |
| get_target_homologuesB | Retrieve cross-species homologues for a target gene. |
| get_target_infoC | Retrieve core identity details for a target gene. |
| get_target_interactionsA | Retrieve protein interaction partners for a target from curated databases. |
| get_target_known_drugsC | Return compounds with known activity on the target. |
| get_target_literature_occurrencesC | Return literature co-occurrence records for a target. |
| get_target_mouse_phenotypesB | Retrieve mouse knockout phenotypes associated with a target. |
| get_target_pathways_and_go_termsB | List pathway memberships and Gene Ontology annotations for a target. |
| get_target_prioritizationB | Return target prioritisation scores compiled across data sources. |
| get_target_safety_informationA | Retrieve documented safety liabilities for a target. |
| get_target_subcellular_locationsA | Return subcellular localisation annotations for a target. |
| get_target_tepB | Fetch Target Enabling Package (TEP) information for a gene. |
| get_target_tractabilityB | Return tractability assessments across modalities for a target. |
| get_disease_associated_targetsB | List targets associated with a disease, including evidence scores. |
| get_disease_infoB | Retrieve core metadata for an Open Targets disease entity. |
| get_disease_known_drugsA | Retrieve drugs with investigational or approved indications for a disease. |
| get_disease_literature_occurrencesC | Return literature co-occurrence records mentioning a disease. |
| get_disease_ontologyA | Retrieve ontology structure for a disease including parents, children, and ancestors. |
| get_disease_otar_projectsA | List Open Targets Associated Research (OTAR) projects linked to a disease. |
| get_disease_phenotypesB | Fetch HPO phenotype annotations linked to a disease. |
| get_disease_similar_entitiesA | Find semantically similar diseases based on PubMed embeddings. |
| get_drug_adverse_eventsC | Retrieve adverse event signals associated with a drug. |
| get_drug_cross_referencesB | Retrieve cross-database identifiers related to a drug. |
| get_drug_infoB | Fetch identity, indication, and mechanism data for a drug. |
| get_drug_linked_diseasesA | List diseases connected to a drug across indications and mechanisms. |
| get_drug_linked_targetsA | Return targets linked to a drug via mechanism-of-action data. |
| get_drug_literature_occurrencesC | Return literature co-occurrence records mentioning a drug. |
| get_drug_pharmacogenomicsB | Retrieve pharmacogenomics data linking genetic variants to drug response. |
| get_drug_pharmacovigilanceB | Summarise high-level pharmacovigilance data for a drug. |
| get_drug_similar_entitiesB | Find semantically similar drugs based on PubMed embeddings. |
| get_drug_warningsB | Fetch detailed regulatory warnings, including withdrawals and boxed labels. |
| get_target_disease_biomarkersB | Inspect evidence for biomarker annotations linking a target and disease. |
| get_target_disease_evidenceB | Retrieve evidence strings linking a target to a disease. |
| get_similar_targetsA | Identify targets with similar association profiles to the seed target. |
| search_entitiesA | Search Open Targets entities and resolve synonyms to canonical IDs. |
| search_facetsB | Return facet counts to help filter search results. |
| search_suggestionsC | Return autocomplete suggestions for partially typed queries. |
| get_variant_credible_setsA | List credible sets that include a specific variant. |
| get_variant_evidencesA | Retrieve evidence strings linking a variant to targets or diseases. |
| get_variant_infoA | Retrieve core metadata and functional annotations for a variant. |
| get_variant_intervalsB | Retrieve enhancer-to-gene (E2G) predictions overlapping a variant. |
| get_variant_pharmacogenomicsC | Retrieve pharmacogenomic annotations for a variant. |
| get_variant_protein_coordinatesB | Retrieve protein-level consequences for a variant. |
| get_credible_set_by_idB | Fetch detailed information for a specific study locus credible set. |
| get_credible_set_colocalisationB | Retrieve colocalisation results for a credible set. |
| get_credible_setsC | Query credible sets with flexible filtering options. |
| get_studies_by_diseaseC | List studies linked to one or more diseases. |
| get_study_credible_setsB | Retrieve fine-mapped credible sets for a study. |
| get_study_infoB | Retrieve metadata and cohort details for a GWAS study. |
| get_api_metadataA | Return Open Targets Platform release metadata. |
| get_association_datasourcesA | List sources contributing target–disease association evidence. |
| get_diseases_batchC | Retrieve multiple diseases in a single request. |
| get_drugs_batchA | Retrieve multiple drugs in a single request. |
| get_gene_ontology_termsA | Resolve Gene Ontology identifiers to human-readable labels. |
| get_interaction_resourcesA | Enumerate interaction databases integrated into Open Targets. |
| get_targets_batchB | Retrieve multiple targets in a single request. |
| map_idsB | Map free-text terms to canonical Open Targets identifiers. |
| graphql_batch_queryB | Execute one GraphQL query against many variable sets. |
| graphql_queryA | ADVANCED: Execute a raw GraphQL query against Open Targets. |
| graphql_schemaA | ADVANCED: Return the GraphQL schema in SDL format. |
| get_drug_repurposing_candidatesB | Find repurposing candidates by chaining disease, target, and drug evidence. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 68 tools
Tools are systematically organized by entity type (disease, drug, target, variant, study) and data category, which makes most purposes clear. However, some inverse relationships like get_disease_known_drugs vs get_drug_linked_diseases and get_disease_associated_targets vs get_target_associated_diseases could initially confuse an agent, though descriptions clarify them.
All tool names use snake_case with a consistent verb_noun pattern (get_*, search_*, map_*, graphql_*). Entity prefixes are uniform, making it predictable to infer a tool's function from its name even without reading the description.
With 68 tools, the set far exceeds the 25+ threshold, making navigation and selection challenging for an agent. While the Open Targets domain is broad, this many tools likely bundles what could be a smaller set of higher-level operations or requires aggressive grouping.
The toolset covers the full spectrum of Open Targets data access: entity metadata, associations, evidence, literature, phenotypes, expression, safety, and advanced GraphQL. Search and batch utilities address bulk needs, and no major query need appears missing, making the surface extremely thorough.