Query Open Targets Platform for target-disease associations, drug target discovery, tractability/safety data, genetics/omics evidence, known drugs, for therapeutic target identification.
64
80%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./backend/cli/skills/databases/opentargets-database/SKILL.mdThe Open Targets Platform is a comprehensive resource for systematic identification and prioritization of potential therapeutic drug targets. It integrates publicly available datasets including human genetics, omics, literature, and chemical data to build and score target-disease associations.
Key capabilities:
Data access: The platform provides a GraphQL API, web interface, data downloads, and Google BigQuery access. This skill focuses on the GraphQL API for programmatic access.
This skill should be used when:
Start by finding the identifiers for targets, diseases, or drugs of interest.
For targets (genes):
from scripts.query_opentargets import search_entities
# Search by gene symbol or name
results = search_entities("BRCA1", entity_types=["target"])
# Returns: [{"id": "ENSG00000012048", "name": "BRCA1", ...}]For diseases:
# Search by disease name
results = search_entities("alzheimer", entity_types=["disease"])
# Returns: [{"id": "EFO_0000249", "name": "Alzheimer disease", ...}]For drugs:
# Search by drug name
results = search_entities("aspirin", entity_types=["drug"])
# Returns: [{"id": "CHEMBL25", "name": "ASPIRIN", ...}]Identifiers used:
ENSG00000157764)EFO_0000249)CHEMBL25)Retrieve comprehensive target annotations to assess druggability and biology.
from scripts.query_opentargets import get_target_info
target_info = get_target_info("ENSG00000157764", include_diseases=True)
# Access key fields:
# - approvedSymbol: HGNC gene symbol
# - approvedName: Full gene name
# - tractability: Druggability assessments across modalities
# - safetyLiabilities: Known safety concerns
# - geneticConstraint: Constraint scores from gnomAD
# - associatedDiseases: Top disease associations with scoresKey annotations to review:
Refer to references/target_annotations.md for detailed information about all target features.
Get disease details and associated targets/drugs.
from scripts.query_opentargets import get_disease_info
disease_info = get_disease_info("EFO_0000249", include_targets=True)
# Access fields:
# - name: Disease name
# - description: Disease description
# - therapeuticAreas: High-level disease categories
# - associatedTargets: Top targets with association scoresGet detailed evidence supporting a target-disease association.
from scripts.query_opentargets import get_target_disease_evidence
# Get the first 100 evidence rows
evidence = get_target_disease_evidence(
ensembl_id="ENSG00000157764",
efo_id="EFO_0000249"
)
# Filter that page locally by evidence type (not a complete evidence search)
genetic_evidence = get_target_disease_evidence(
ensembl_id="ENSG00000157764",
efo_id="EFO_0000249",
data_types=["genetic_association"]
)
# Each evidence record contains:
# - datasourceId: Specific data source (e.g., "gwas_catalog", "chembl")
# - datatypeId: Evidence category (e.g., "genetic_association", "known_drug")
# - score: Evidence strength (0-1)
# - studyId: Original study identifier
# - literature: Associated publicationsMajor evidence types:
Refer to references/evidence_types.md for detailed descriptions of all evidence types and interpretation guidelines.
Identify drugs used for a disease and their targets.
from scripts.query_opentargets import get_known_drugs_for_disease
drugs = get_known_drugs_for_disease("EFO_0000249")
# drugs contains:
# - count: Number of clinical candidate rows
# - rows: List of records with id, maxClinicalStage, and drug
# - drug: {id, name, drugType, maximumClinicalStage}, or nullClinical stages are upstream strings, not numeric phase values. Preserve the reported stage; do not infer approval, targets, or trial status from it.
Retrieve detailed drug information including mechanisms and indications.
from scripts.query_opentargets import get_drug_info
drug_info = get_drug_info("CHEMBL25")
# Access:
# - name, synonyms: Drug identifiers; synonyms are {label, source} records
# - drugType: Small molecule, antibody, etc.
# - maximumClinicalStage: Reported development stage
# - mechanismsOfAction.rows: Target and action records
# - indications: {count, rows}, each row has disease and maxClinicalStage
# - drugWarnings: Reported warningType, country, and descriptionFind the first 100 disease associations for a target, optionally filtering that page by score. This helper does not retrieve every association.
from scripts.query_opentargets import get_target_associations
# Get associations with score >= 0.5
associations = get_target_associations(
ensembl_id="ENSG00000157764",
min_score=0.5
)
# Each association contains:
# - disease: {id, name}
# - score: Overall association score (0-1)
# - datatypeScores: Breakdown by evidence typeAssociation scores:
For custom queries beyond the provided helper functions, use the GraphQL API directly or modify scripts/query_opentargets.py.
Key information:
https://api.platform.opentargets.org/api/v4/graphqlhttps://api.platform.opentargets.org/api/v4/graphql/browserpage: {size: N, index: M}Refer to references/api_reference.md for:
When prioritizing drug targets:
Strong evidence indicators:
Caution flags:
Score interpretation:
Workflow 1: Target Discovery for a Disease
include_targets=TrueWorkflow 2: Target Validation
Workflow 3: Drug Repurposing
Workflow 4: Competitive Intelligence
scripts/query_opentargets.py Helper functions for common API operations:
search_entities() - Search for targets, diseases, or drugsget_target_info() - Retrieve target annotationsget_disease_info() - Retrieve disease informationget_target_disease_evidence() - Get supporting evidenceget_known_drugs_for_disease() - Find drugs for a diseaseget_drug_info() - Retrieve drug detailsget_target_associations() - Get the first 100 associations for a targetexecute_query() - Execute custom GraphQL queriesreferences/api_reference.md Complete GraphQL API documentation including:
references/evidence_types.md Comprehensive guide to evidence types and data sources:
references/target_annotations.md Complete target annotation reference:
The API schema and datasets change between releases. The bundled queries were
validated against the public schema on September 5, 2026. The bundled tests replay
recorded fixtures rather than calling the live API, so re-check the live schema when
a query fails. If a field is rejected,
inspect the current schema rather than returning an empty result or substituting
a biologically different field. componentId in helper association output is a
GraphQL alias for the current ScoredComponent.id field.
Release information: Check https://platform-docs.opentargets.org/release-notes for the latest updates.
Citation: When using Open Targets data, cite: Ochoa, D. et al. (2025) Open Targets Platform: facilitating therapeutic hypotheses building in drug discovery. Nucleic Acids Research, 53(D1):D1467-D1477.
synthetic-sciences/openscience
6a85742
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.