# Mesh [Health: Active]

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

## Description
NLM MeSH (Medical Subject Headings) MCP.

## Tools
Capabilities this server exposes over MCP:

- **search_descriptors** — Search NLM MeSH descriptors by a disease/drug/concept term (e.g. "diabetes", "aspirin", "myocardial infarction"). Returns the matching MeSH descriptor IDs (Dxxxxxxx) — the controlled-vocabulary headings used to index PubMed. The core free-text-to-MeSH lookup. Keyless.
- **get_descriptor** — Get full detail for a MeSH descriptor by its ID (e.g. "D003920" = Diabetes Mellitus): its preferred label, entry terms (synonyms MeSH indexes under it), allowable qualifiers (subheadings like "drug therapy", "epidemiology"), and related see-also headings. Keyless.
- **resolve_term** — Map a free-text term or everyday synonym to its canonical MeSH descriptor(s) — the preferred heading to use when searching PubMed. Tries an exact descriptor match first; if none, falls back to a fuzzy contains match (flagged fuzzy). Keyless.

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

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

## Documentation

## What the Mesh MCP server does

The Mesh MCP server connects AI agents to the National Library of Medicine’s Medical Subject Headings (MeSH) vocabulary. It supports controlled-vocabulary lookup for medical diseases, drugs, concepts, and related research terms. The results are useful when an agent needs the official headings and descriptor IDs used to index PubMed content.

Its three pack-specific tools are:

- `search_descriptors`: Finds matching MeSH descriptors from a term such as “diabetes,” “aspirin,” or “myocardial infarction,” returning descriptor IDs in the `Dxxxxxxx` format.
- `get_descriptor`: Retrieves a descriptor’s preferred label, entry terms, allowable qualifiers, and related see-also headings from a supplied MeSH ID.
- `resolve_term`: Converts free-text or everyday wording into canonical MeSH descriptor names. It checks for an exact match first and can use a fuzzy contains match when an exact result is unavailable; fuzzy results are marked accordingly.

## How it works

The Mesh MCP server exposes the tools through either a remote Pipeworx endpoint or a local package. The remote pack endpoint is available at `https://gateway.pipeworx.io/mesh/mcp`, while the full gateway is available at `https://gateway.pipeworx.io/mcp`. A pack endpoint lists the Mesh tools together with Pipeworx shared meta-tools, including routing and discovery functions. The full gateway lists tools from the broader catalog directly.

A local installation communicates through standard MCP stdin/stdout and exposes only the Mesh pack’s tools. The remote gateway also provides direct HTTP access to individual tools, such as sending a JSON POST request to the `search_descriptors` endpoint.

## Setup and configuration

For a remote MCP connection, add the gateway URL to an MCP client configuration. The README names Claude Desktop, Cursor, and Windsurf as compatible examples. For local use, run the package with `npx -y @pipeworx/mcp-mesh` and configure the client to launch that command with no additional arguments.

The standalone package does not require a Pipeworx account or a gateway round trip. The gateway documentation states that the first HTTP calls do not require an account.

## Tools and capabilities

The Mesh MCP server provides a focused workflow for turning natural-language medical terminology into MeSH vocabulary:

1. Search for candidate descriptors from a disease, drug, or concept.
2. Resolve an everyday phrase to a preferred MeSH heading.
3. Inspect the selected descriptor’s synonyms, qualifiers, and related headings.

Agents can also use the gateway’s `ask_pipeworx` function to ask questions in plain English. The gateway selects a tool and supplies its arguments, but this routing capability belongs to Pipeworx rather than the standalone Mesh package.

## Limitations and notes

`resolve_term` may return a fuzzy contains match when no exact descriptor match exists, so agents should check the fuzzy indicator before treating a result as definitive. The pack tools are keyless, but the material does not describe ranking behavior, bulk operations, PubMed article retrieval, or support for creating or editing MeSH records.

A remote pack connection includes shared Pipeworx meta-tools in addition to the three Mesh tools. A local stdio connection does not include those gateway-wide tools. The gateway’s initialization response is the authoritative source for the exact tool scope at connection time.

_Full upstream README: https://allmcps.com/mcp/mesh/readme_

