PluginBench
Skill
Pass
Audit score 90

reactome-database

google-deepmind/science-skills

Query Reactome pathway database for enrichment analysis, identifier mapping, and pathway navigation.

What is reactome-database?

Reactome is a free, open-source curated pathway database. This skill enables pathway enrichment analysis on gene/protein lists, identifier mapping across species, reaction participant lookup, pathway hierarchy navigation, and diagram export. Use it when analyzing biological pathways, performing gene set enrichment, or cross-referencing molecular entities.

  • Perform pathway enrichment (overrepresentation) analysis on gene and protein lists
  • Map identifiers to Reactome entities across multiple species (human, mouse, rat, etc.)
  • Retrieve reaction participants (inputs, outputs, catalysts, regulators) and mechanism details
  • Navigate pathway hierarchy and list top-level pathways
  • Export pathway and reaction diagrams in PNG/SVG format with gene highlighting
  • Search the Reactome knowledgebase and cross-reference identifiers across databases (UniProt, Ensembl, ChEBI, etc.)

How to install reactome-database

npx skills add https://github.com/google-deepmind/science-skills --skill reactome-database
Prerequisites
  • uv package manager installed and on PATH (see uv skill)
  • User must review Reactome license terms at https://reactome.org/license and https://reactome.org/cite before first use
Claude Code
Cursor
Windsurf
Cline

How to use reactome-database

  1. 1.Run `uv run scripts/reactome_analysis.py --help` to list all available subcommands
  2. 2.For enrichment analysis, submit a gene list using `analyze --data "GENE1,GENE2,..." --output file.json` or `analyze --file genes.txt --output file.json`
  3. 3.Filter results by statistical significance using `--fdr 0.05` or `--pvalue 0.01` flags
  4. 4.For identifier mapping, use `mapping --data "ID1,ID2" --output file.json` to convert between formats
  5. 5.Retrieve reaction details with `participants --id REACTION_ID --output file.json` to see inputs, outputs, and regulators
  6. 6.Navigate pathway hierarchy using `event-ancestors --id PATHWAY_ID` to find parent pathways or `contained-events --id PATHWAY_ID` to find sub-pathways
  7. 7.Store analysis tokens (valid 7 days) and reuse with `token-result --token TOKEN --output file.json` to avoid re-submitting data
  8. 8.Override default species (Homo sapiens) with `--species SPECIES_ID` (e.g., 48892 for mouse)

Use cases

Good for
  • Analyze a list of differentially expressed genes to identify significantly enriched biological pathways
  • Map gene symbols and UniProt IDs to Reactome entities for cross-database integration
  • Retrieve all proteins involved in a specific reaction to understand molecular mechanisms
  • Export a Cell Cycle pathway diagram with highlighted genes from an experiment
  • Compare pathway annotations across human, mouse, and rat to identify conserved mechanisms
Who it's for
  • Bioinformaticians performing pathway analysis on omics data
  • Systems biologists studying molecular mechanisms and pathway interactions
  • Researchers conducting gene set enrichment studies
  • Computational biologists integrating multi-database molecular annotations
  • Scientists comparing biological pathways across model organisms

reactome-database FAQ

What identifier formats does Reactome accept?

Reactome auto-detects gene symbols (TP53), UniProt IDs (P04637), Ensembl IDs (ENSG00000141510), ChEBI, OMIM, EntrezGene, and many other standard bioinformatics identifiers.

How long are analysis tokens valid?

Tokens expire after 7 days. Store them to retrieve results later without re-submitting your gene list.

Which pathway ID should I use for Cell Cycle analysis?

Use R-HSA-69278 (Cell Cycle, Mitotic) for specific diagrams and drill-downs unless you explicitly need the top-level overview (R-HSA-1640170).

How do I filter enrichment results to focus on significant pathways?

Use `--fdr 0.05` or `--pvalue 0.01` flags with the analyze command to filter by statistical significance.

Can I compare pathways across different species?

Yes, use the `--species` flag with species IDs (9606 for human, 48892 for mouse, 48895 for rat) to analyze the same genes in different organisms.

Full instructions (SKILL.md)

Source of truth, from google-deepmind/science-skills.


name: reactome-database description: > Query the Reactome database (Analysis and Content Services). Use when the user asks about pathway analysis, gene list enrichment, retrieving results by token, finding unmapped or not-found identifiers, mapping identifiers, reaction participants (inputs, outputs), pathway hierarchy (including top-level pathways), diagram export, cross-reference mapping, or searching the knowledgebase.

Reactome Analysis & Content Service

Prerequisites

  1. uv: Read the uv skill and follow its Setup instructions to ensure uv is installed and on PATH.
  2. User Notification: If .licenses/reactome_database_LICENSE.txt does not already exist in the workspace root directory then (1) prominently notify the user to check the terms at https://reactome.org/license and https://reactome.org/cite, then (2) create the file recording the notification text and timestamp.

Overview

Reactome is a free, open-source, curated pathway database. This skill wraps both the Analysis Service (https://reactome.org/AnalysisService/) and the Content Service (https://reactome.org/ContentService/) providing pathway enrichment analysis, identifier mapping, reaction details, pathway hierarchy navigation, diagram export, cross-reference mapping, and search.

When to Use This Skill

  • Performing pathway enrichment (overrepresentation) analysis on gene/protein lists
  • Retrieving analysis results using a token from previous enrichment
  • Identifying which genes or proteins were not found in a pathway analysis
  • Analyzing gene expression data against pathway annotations
  • Mapping identifiers to Reactome entities across species
  • Retrieving reaction participants (inputs, outputs, catalysts, regulators)
  • Navigating pathway hierarchy and listing top-level pathways
  • Finding which complexes or sets contain a protein
  • Exporting pathway/reaction diagrams (PNG/SVG) with gene highlighting
  • Cross-referencing identifiers across databases (UniProt, Ensembl, etc.)
  • Searching the Reactome knowledgebase
  • Downloading analysis reports (PDF, CSV, JSON)
  • Comparing pathways across species

Common Species IDs

Reference list for common research organisms:

  • Homo sapiens
    • ID: 9606
  • Mus musculus (Mouse)
    • ID: 48892
  • Rattus norvegicus (Rat)
    • ID: 48895

Common Pathway IDs

Reference list for commonly used Reactome pathway stable IDs:

  • Cell Cycle
    • Stable ID: R-HSA-1640170
    • Notes: Top-level pathway (broad)
  • Cell Cycle, Mitotic
    • Stable ID: R-HSA-69278
    • Notes: Specific sub-pathway — use this for diagrams and drill-downs
  • Immune System
    • Stable ID: R-HSA-168256
    • Notes: Top-level pathway
  • Signal Transduction
    • Stable ID: R-HSA-162582
    • Notes: Top-level pathway
  • Gene Expression
    • Stable ID: R-HSA-74160
    • Notes: Top-level pathway
  • Programmed Cell Death
    • Stable ID: R-HSA-5357801
    • Notes: Top-level pathway

Important: When the user asks for a "Cell Cycle" diagram or analysis, prefer the specific Cell Cycle, Mitotic pathway (R-HSA-69278) unless the user explicitly requests the top-level overview. The examples throughout this document use R-HSA-69278.

Core Rules

  1. Always use --output: Every subcommand requires --output <file> to write results to a file. Never rely on stdout for large results.
  2. Default species is Homo sapiens: Use --species to override.
  3. Tokens expire after 7 days: Store tokens from analysis results to retrieve them later without re-submitting data.
  4. Use --fdr and --pvalue to filter: Enrichment results can be overwhelming. Filter with --fdr 0.05 or --pvalue 0.01 to focus on statistically significant pathways.
  5. Identifier formats: Reactome auto-detects identifiers including gene symbols (TP53), UniProt (P04637), Ensembl (ENSG00000141510), ChEBI, OMIM, EntrezGene, and many more.
  6. Handle large outputs: For commands that return large data (like species-comparison), use the --summary flag to truncate lists and avoid exceeding workspace file size limits (1MB).
  7. Notification: If this skill is used, ensure this is mentioned in the output.

Tool Execution

The CLI tool is at scripts/reactome_analysis.py. Run with uv:

uv run scripts/reactome_analysis.py <command> [options] --output /tmp/out.json

To list all available subcommands and flags, run:

uv run scripts/reactome_analysis.py --help

Use --help to verify available subcommands or flags before executing an unfamiliar command.

Feature Domains

1. Database Info

uv run scripts/reactome_analysis.py db-version --output /tmp/version.json
uv run scripts/reactome_analysis.py db-name --output /tmp/name.json

2. Single Identifier Analysis

uv run scripts/reactome_analysis.py identifier --id TP53 --output /tmp/tp53.json
uv run scripts/reactome_analysis.py identifier-projection --id TP53 --output /tmp/tp53_proj.json

3. Batch Analysis (Enrichment)

Submit a list of identifiers for overrepresentation or expression analysis:

uv run scripts/reactome_analysis.py analyze --data "TP53,BRCA1,EGFR" --output /tmp/enrich.json
uv run scripts/reactome_analysis.py analyze --file genes.txt --output /tmp/enrich.json
uv run scripts/reactome_analysis.py analyze-projection --data "TP53,BRCA1" --output /tmp/proj.json
uv run scripts/reactome_analysis.py analyze --data "TP53,BRCA1" --fdr 0.05 --output /tmp/sig.json

Common options: --page-size (alias --limit), --page (alias --offset), --sort-by, --order, --resource, --species, --fdr, --pvalue.

4. Token-Based Result Retrieval

uv run scripts/reactome_analysis.py token-result --token TOKEN --output /tmp/result.json
uv run scripts/reactome_analysis.py token-not-found --token TOKEN --output /tmp/notfound.json
uv run scripts/reactome_analysis.py token-resources --token TOKEN --output /tmp/resources.json
uv run scripts/reactome_analysis.py token-found-entities --token TOKEN --pathway R-HSA-69278 --output /tmp/found.json
uv run scripts/reactome_analysis.py token-filter-species --token TOKEN --species-filter 9606 --output /tmp/filtered.json
uv run scripts/reactome_analysis.py token-reactions-pathway --token TOKEN --pathway R-HSA-69278 --output /tmp/rxns.json

5. Download Results

uv run scripts/reactome_analysis.py download-result --token TOKEN --output /tmp/full.json
uv run scripts/reactome_analysis.py download-pathways --token TOKEN --output /tmp/pathways.csv
uv run scripts/reactome_analysis.py download-found --token TOKEN --output /tmp/found.csv
uv run scripts/reactome_analysis.py download-not-found --token TOKEN --output /tmp/notfound.csv

6. Identifier Mapping

uv run scripts/reactome_analysis.py mapping --data "TP53,BRCA1" --output /tmp/mapped.json
uv run scripts/reactome_analysis.py mapping-projection --data "TP53" --output /tmp/mapped_proj.json

7. Reaction Participants & Mechanism of Action

Retrieve the molecular participants of a reaction (inputs, outputs, catalysts):

uv run scripts/reactome_analysis.py participants --id R-HSA-6804194 --output /tmp/participants.json
uv run scripts/reactome_analysis.py participating-entities --id R-HSA-6804194 --output /tmp/entities.json

8. Complex & Set Membership

Find which complexes or sets contain a given entity:

uv run scripts/reactome_analysis.py component-of --id R-HSA-69488 --output /tmp/complexes.json

9. Pathway Hierarchy Navigation

Move up (ancestors) or down (contained events) the pathway hierarchy:

uv run scripts/reactome_analysis.py event-ancestors --id R-HSA-69278 --output /tmp/ancestors.json
uv run scripts/reactome_analysis.py contained-events --id R-HSA-69278 --output /tmp/steps.json
uv run scripts/reactome_analysis.py top-pathways --output /tmp/top.json
uv run scripts/reactome_analysis.py low-pathways --id R-HSA-69488 --output /tmp/low.json

10. Diagram Export

Export pathway or reaction diagrams as PNG/SVG, with optional gene highlighting:

uv run scripts/reactome_analysis.py diagram --id R-HSA-69278 --output /tmp/diagram.png
uv run scripts/reactome_analysis.py diagram --id R-HSA-69278 --highlight TP53 --output /tmp/highlighted.png
uv run scripts/reactome_analysis.py diagram --id R-HSA-69278 --format svg --output /tmp/diagram.svg
uv run scripts/reactome_analysis.py reaction-diagram --id R-HSA-6804194 --output /tmp/rxn.png

11. Cross-Reference Mapping

Resolve identifiers to Reactome internal IDs and cross-references:

uv run scripts/reactome_analysis.py xref-mapping --id TP53 --output /tmp/xref.json
uv run scripts/reactome_analysis.py xref-mapping-batch --data "TP53,BRCA1" --output /tmp/xrefs.json

12. Search

uv run scripts/reactome_analysis.py search --query "TP53 apoptosis" --output /tmp/results.json

13. Query Entry by ID

uv run scripts/reactome_analysis.py query --id R-HSA-69278 --output /tmp/entry.json

14. Report & Species Comparison

uv run scripts/reactome_analysis.py report --token TOKEN --output /tmp/report.pdf
uv run scripts/reactome_analysis.py species-comparison --species-id 48892 --output /tmp/species.json
# Use --summary to truncate large output and avoid workspace file size limits
uv run scripts/reactome_analysis.py species-comparison --species-id 48892 --summary --output /tmp/species.json

Recipe: Interpreting Gene Set Enrichment

A step-by-step workflow for interpreting gene set enrichment results:

  1. Submit gene list with projection to human pathways: bash uv run scripts/reactome_analysis.py analyze-projection \ --data "TP53,BRCA1,EGFR,MYC,PTEN" --fdr 0.05 --output /tmp/enrichment.json

  2. Inspect top pathways — examine pathwaysFound, top pathway names, p-values, and FDR values in the output.

  3. Drill into a pathway — get its sub-events and reaction details: bash uv run scripts/reactome_analysis.py contained-events --id R-HSA-69278 --output /tmp/steps.json uv run scripts/reactome_analysis.py participants --id <reaction_id> --output /tmp/parts.json

  4. Visualise — export a diagram with your genes highlighted: bash uv run scripts/reactome_analysis.py diagram --id R-HSA-69278 \ --highlight "TP53,BRCA1" --output /tmp/diagram.png

  5. Check hierarchy — navigate up to see broader biological context: bash uv run scripts/reactome_analysis.py event-ancestors --id R-HSA-69278 --output /tmp/ancestors.json

  6. Cross-reference — map identifiers to other databases: bash uv run scripts/reactome_analysis.py xref-mapping --id TP53 --output /tmp/xrefs.json

Reference

For detailed API endpoint documentation, see references/api_reference.md.