# Hpo Api [Health: Active]

**Category:** 🧬 Biology & Bioinformatics  
**Repository:** https://github.com/pipeworx-io/mcp-hpo-api  
**GitHub Stars:** 0  
**npm Downloads (last month):** 473  
**Views:** 4  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/hpo-api

## Description
Human Phenotype Ontology — clinical phenotype terms + gene/disease annotations

## Tools
Capabilities this server exposes over MCP:

- **term** — "What does HP:[N] mean" / "look up HPO phenotype [ID]" — fetch a single Human Phenotype Ontology (HPO) term by ID. HPO is the standard ontology for clinical phenotypes used in rare-disease research. Returns label, definition, synonyms, cross-references. Example ID: HP:0001250 (Seizure).
- **search** — "HPO term for [symptom]" / "phenotype code for [clinical sign]" / "find HPO IDs about [feature]" / "what's the HPO for seizures / autism / short stature" — text search the Human Phenotype Ontology (HPO). Returns ranked terms with HP: IDs. Use to map clinical descriptions to standard ontology terms for rare-disease workups, genomics, or clinical phenotype databases.
- **term_children** — "More specific HPO phenotypes under [HP:N]" / "child terms of [phenotype]" — direct children of an HPO term in the ontology graph. Use to narrow from a general phenotype (e.g. "Abnormality of the nervous system") to specifics (seizures, ataxia, etc).
- **term_parents** — "What broader phenotype is [HP:N] under" / "parent term of [HPO ID]" — direct parents of an HPO term in the ontology graph. Use to walk up to a more general phenotype class.
- **term_descendants** — "All phenotypes under [HP:N]" / "full subtree of [HPO term]" — transitive descendants (children, grandchildren, …) of an HPO term. Use for exhaustive coverage (e.g. "every cardiac phenotype" via descendants of HP:0001626).
- **gene_diseases** — "What diseases is gene [NCBIGene:N] associated with" / "diseases linked to gene [X]" / "TP53 disease associations" — fetch diseases associated with a gene ID (NCBIGene:N format). Use for gene-to-disease lookups in rare-disease research, variant prioritization. Example ID: NCBIGene:7157 (TP53).
- **disease_phenotypes** — "What symptoms / clinical features does [disease] cause" / "HPO phenotypes for [OMIM N]" / "clinical signs of [rare disease]" — list HPO phenotype terms for a disease ID (OMIM:N, ORPHA:N, or MONDO:N format). Use to enumerate clinical features of rare diseases. Example ID: OMIM:154700 (Marfan syndrome).

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "hpo-api": {
    "command": "npx",
    "args": ["-y","@pipeworx/mcp-hpo-api"]
  }
}
```

## Documentation

## What Hpo Api MCP server does

Hpo Api MCP server provides agent access to Human Phenotype Ontology data. Its tools cover individual HPO term retrieval, text search, parent and child relationships, complete descendant subtrees, gene-to-disease associations, and disease-to-phenotype annotations.

The service accepts HPO identifiers such as `HP:0001250` for term and hierarchy operations. Gene lookups use NCBIGene identifiers, while disease phenotype queries accept OMIM, ORPHA, or MONDO identifiers. The package is keyless, so the supplied connection examples do not require an API credential.

## How it works

The implementation uses the HPO REST service at `https://ontology.jax.org/api/hp/` and can fall back to `https://hpo.jax.org/api/hpo/`. MCP clients can connect to the hosted pack endpoint at `https://gateway.pipeworx.io/hpo-api/mcp`. That endpoint lists the HPO tools together with shared Pipeworx meta-tools, including routing and discovery functions.

A full gateway connection at `https://gateway.pipeworx.io/mcp` exposes the broader Pipeworx catalog directly. Both hosted URLs use the same gateway, while the pack endpoint lists the HPO pack as its direct scope. The standalone package instead communicates over stdin and stdout and exposes only the HPO pack tools.

## Setup and configuration

For a hosted connection, add the pack URL to an MCP client configuration. The README specifically names Claude Desktop, Cursor, and Windsurf as compatible clients. No account is needed for the initial HTTP calls described in the documentation.

For local use, run `npx -y @pipeworx/mcp-hpo-api` or configure that command as an MCP server with no arguments. This route avoids a Pipeworx account and gateway round trip. It uses the same source and capabilities as the hosted pack, without the gateway’s shared meta-tools.

The tools can also be called over HTTP. For example, send a JSON POST containing an HPO identifier to `/v1/tools/term`; tool inspection is available through the corresponding GET endpoint.

## Tools and capabilities

- `term(id)` retrieves one HPO term by identifier.
- `search(query, limit?, page?)` searches HPO terms by text with optional pagination controls.
- `term_children(id)` returns a term’s direct children.
- `term_parents(id)` returns a term’s direct parents.
- `term_descendants(id)` returns the full descendant subtree with pagination.
- `gene_diseases(id)` finds diseases associated with an NCBIGene identifier.
- `disease_phenotypes(id)` returns HPO terms annotated to an OMIM, ORPHA, or MONDO disease identifier.

## Limitations and notes

The Hpo Api MCP server is focused on HPO terms and the listed gene or disease annotation relationships. The hosted pack endpoint also includes shared Pipeworx tools, so its reported tool count is larger than the seven HPO-specific tools above. The local stdio mode does not provide those shared tools or cross-catalog `ask_pipeworx` routing.

Descendant results are paginated, and text search accepts optional limit and page values.

_Full upstream README: https://allmcps.com/mcp/hpo-api/readme_

