# hlydecker/ucsc-genome-mcp [Health: Active]

**Category:** Biology, Medicine and Bioinformatics  
**Repository:** https://github.com/hlydecker/ucsc-genome-mcp  
**GitHub Stars:** 6  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/hlydecker-ucsc-genome-mcp

## Description
MCP server to interact with the UCSC Genome Browser API, letting you find genomes, chromosomes, and more.

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "ucsc-genome-mcp": {
    "command": "npx",
    "args": ["-y","hlydecker-ucsc-genome-mcp"]
  }
}
```

## Documentation

## What hlydecker/ucsc-genome-mcp MCP server does

The hlydecker/ucsc-genome-mcp MCP server connects MCP clients to the UCSC Genome Browser API at `https://api.genome.ucsc.edu`. It gives an LLM application a structured way to discover available genomic resources and request data without requiring the application to implement each UCSC endpoint itself.

Its tools cover genome lookup, assembly discovery, public track hubs, hub-specific genomes, downloadable files, tracks, chromosomes, and track schemas. Data retrieval includes DNA sequence requests, track records such as genes or variants, and searches within a genome assembly. The server also supports track data from assembly hubs when a hub URL and genome are supplied.

## How it works

The hlydecker/ucsc-genome-mcp MCP server communicates with its client through standard input and output using the MCP protocol. Tool calls are translated into HTTP requests to UCSC. Responses and errors are returned as text, including messages for invalid parameters, missing resources, HTTP failures, and request timeouts.

Sequence coordinates follow UCSC's documented convention: starts are zero-based, while ends are exclusive. For example, a range from 0 to 10 represents the first ten bases. Sequence requests can target a whole chromosome or a narrower interval, and can request the reverse complement.

Track queries can be narrowed by chromosome and coordinate range. This is useful for large datasets, where querying a smaller interval can reduce the response size. The README recommends no more than one request per second because UCSC applies a bot-delay system and may restrict excessive traffic.

## Setup and configuration

Python 3.10 or later and pip are listed as prerequisites. From a downloaded or cloned repository, install the project in editable mode with `pip install -e .`. The documented server entry point is `python ucsc_genome_mcp_server.py`.

For Claude Desktop, add a server entry under the client's MCP configuration and point the command at the local Python environment or the documented `uv` setup. The example configuration uses a repository directory and runs `ucsc-genome-mcp.py`; paths in that example must be replaced with local paths. No API key or environment variable is documented.

## Tools and capabilities

The hlydecker/ucsc-genome-mcp MCP server exposes these capabilities:

- Find genomes by keywords, accession identifiers, or organism names.
- List UCSC genomes, GenArk genomes, public hubs, hub genomes, files, tracks, chromosomes, and schemas.
- Retrieve DNA sequences, including reverse complements.
- Read supported track formats such as BED, bigBed, bigWig, genePred, bigGenePred, bigChain, bigPsl, bigMaf, and several peak or interaction formats.
- Search genome content or UCSC help documentation.

## Limitations and notes

The server depends on the availability and behavior of the UCSC Genome Browser API. The README documents a 30-second default request timeout and recommends rate limiting. It does not describe authentication, local data storage, caching, or an explicit software license for this repository. UCSC's own terms of use apply to the underlying service.

_Full upstream README: https://allmcps.com/mcp/hlydecker-ucsc-genome-mcp/readme_

