npx skills add ...
npx skills add google-deepmind/science-skills --skill human-protein-atlas-database
Use when you want to retrieve semi-quantitative protein expression and spatial localisation data from the Human Protein Atlas (HPA).
npx skills add google-deepmind/science-skills --skill human-protein-atlas-database
This skill provides semi-quantitative protein expression and spatial localisation data from the Human Protein Atlas (HPA). While RNA-seq (e.g., GTEx) tells us if a gene is being transcribed, HPA confirms if the protein product actually exists, where it is located within the cell (e.g. nucleus vs cytoplasm), and its concentration in systemic blood circulation. The data is based on Immunohistochemistry (IHC) across normal human tissues and cancer types.
uv: Read the uv skill and follow its Setup instructions to ensure
uv is installed and on PATH.Use this skill when you need to:
Do NOT use when you need to:
Pick the right command on the first try. Match the user's input to the correct subcommand below.
resolve-ensembl-idget-tissue-expressionget-subcellular-locationget-atlas-entrysearch-hpaAll subcommands write JSON to disk. Always save output in the /tmp/ directory.
The default output file is /tmp/hpa_output.json if --output is not
specified.
resolve-ensembl-id — Gene Symbol → Ensembl IDMaps a common gene symbol (e.g., "TP53", "ERBB2") to its Ensembl gene ID. HPA endpoints are strictly Ensembl-based.
Arguments:
gene_symbol (positional): The standard gene symbol (e.g., "TP53").--output: Output file path (default: /tmp/hpa_output.json).get-tissue-expression — Get Tissue Protein LevelsReturns a list of tissues and their corresponding protein expression levels (High, Medium, Low, or Not Detected) based on IHC staining.
Arguments:
ensembl_id (positional): The Ensembl Gene ID.--tissues: Comma-separated list of tissues to filter by (optional,
defaults to all available tissues).--output: Output file path (default: /tmp/hpa_output.json).get-subcellular-location — Get Subcellular LocationRetrieves the specific organelles or cellular structures where the protein has been localized.
Arguments:
ensembl_id (positional): The Ensembl Gene ID.--output: Output file path.get-atlas-entry — Get Full HPA EntryFetches the full metadata for a gene, including IHC scores, RNA-seq consensus, and subcellular location.
Arguments:
ensembl_id (positional): The Ensembl Gene ID.--format: Format of the returned entry, e.g., json (default: json).--output: Output file path.search-hpa — Search by AttributeAllows filtering for genes based on specific criteria (e.g., "elevated in amygdala").
Arguments:
--query: The search query string. Refer to references/search-api.md for
details.--output: Output file path.The HPA website at www.proteinatlas.org always serves the latest data
release. Older archived versions can be accessed via vNN.proteinatlas.org
(e.g., v24.proteinatlas.org), while the current version's subdomain redirects
to www.proteinatlas.org. This skill's scripts query the latest version by
default.