UCSC Genome

An MCP server to interact with the UCSC Genome Browser API
  • python

1

GitHub Stars

python

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "hlydecker-ucsc-genome-mcp": {
      "command": "python",
      "args": [
        "ucsc_genome_mcp_server.py"
      ]
    }
  }
}

You can query UCSC Genome Browser data programmatically with this MCP (Model Context Protocol) server. It exposes endpoints to discover genomes, hubs, and tracks, and to retrieve sequences and track data, making genomic information accessible to LLMs and automation tools through a consistent, protocol-driven interface.

How to use

You interact with the UCSC Genome Browser MCP server by connecting with an MCP client. Use the available tools to discover genomes, hub data, and tracks, and to fetch sequences or track data for specific coordinates or regions. The server handles common tasks like listing genomes and tracks, retrieving DNA sequences, and querying annotations, enabling you to build data-powered workflows and educational tools that explore genomic data across assemblies and hubs.

How to install

Prerequisites you need to install first before running the MCP server are Python 3.10 or higher and pip.

Install from source by cloning or downloading the project and installing in development mode.

# Clone or download the repository
cd ucsc-genome-mcp-server

# Install in development mode
pip install -e .

Configuration and running the server

The server runs in stdio mode. Start it with Python using the server script.

python ucsc_genome_mcp_server.py

Additional setup for Claude Desktop integration

If you want to connect Claude Desktop to this MCP server, add a configuration entry pointing to the MCP runtime. The example below shows how to configure a local runtime using a wrapper tool to invoke the server script.

{
  "mcpServers": {
    "ucsc-genome-browser": {
      "command": "/Users/You/.local/bin/uv",
      "args": [
        "--directory",
        "/Users/Path/To/Repository/ucsc-genome-mcp",
        "run",
        "ucsc-genome-mcp.py"
      ],
      "env": {},
      "metadata": {
        "description": "UCSC Genome Browser API",
        "version": "1.0.0"        
      }
    }
  }
}

Available tools

find_genome

Search for genomes using keywords, accession IDs, or organism names.

list_public_hubs

List all available public track hubs.

list_ucsc_genomes

List all UCSC database genomes.

list_genark_genomes

List GenArk assembly hub genomes.

list_hub_genomes

List genomes from a specific hub.

list_files

List downloadable files for a genome.

list_tracks

List data tracks in a genome or hub.

list_chromosomes

List chromosomes in a genome or track.

list_schema

Get schema/field definitions for a track.

get_sequence

Retrieve DNA sequences from genomes.

get_track_data

Get track data (genes, variants, annotations, etc.).

search_genome

Search within a genome assembly.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational