Skip to main content
Glama
hlydecker

UCSC Genome Browser MCP Server

by hlydecker

list_tracks

Retrieve available data tracks for a specific genome assembly or hub in the UCSC Genome Browser to explore genomic annotations and datasets.

Instructions

List all data tracks available in a specified hub or UCSC database genome.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
genomeYesGenome assembly name
hub_urlNoURL of track/assembly hub (optional, required with genome for hub tracks)
track_leaves_onlyNoOnly show tracks without composite container information

Implementation Reference

  • Handler logic for the 'list_tracks' tool: constructs parameters from arguments (genome, hub_url, track_leaves_only) and makes an API request to the UCSC Genome Browser's /list/tracks endpoint.
    elif name == "list_tracks":
        params = {
            "genome": arguments["genome"],
            "hubUrl": arguments.get("hub_url"),
            "trackLeavesOnly": 1 if arguments.get("track_leaves_only") else None
        }
        url = build_api_url("/list/tracks", params)
        result = await make_api_request(url)
  • Registration of the 'list_tracks' tool in the MCP server's tool list, defining its name, description, and input schema.
    Tool(
        name="list_tracks",
        description="List all data tracks available in a specified hub or UCSC database genome.",
        inputSchema={
            "type": "object",
            "properties": {
                "genome": {
                    "type": "string",
                    "description": "Genome assembly name"
                },
                "hub_url": {
                    "type": "string",
                    "description": "URL of track/assembly hub (optional, required with genome for hub tracks)"
                },
                "track_leaves_only": {
                    "type": "boolean",
                    "description": "Only show tracks without composite container information"
                }
            },
            "required": ["genome"]
        }
    ),
  • Input schema definition for the 'list_tracks' tool, specifying parameters: genome (required), hub_url (optional), track_leaves_only (optional).
    inputSchema={
        "type": "object",
        "properties": {
            "genome": {
                "type": "string",
                "description": "Genome assembly name"
            },
            "hub_url": {
                "type": "string",
                "description": "URL of track/assembly hub (optional, required with genome for hub tracks)"
            },
            "track_leaves_only": {
                "type": "boolean",
                "description": "Only show tracks without composite container information"
            }
        },
        "required": ["genome"]
    }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hlydecker/ucsc-genome-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server