UCSC Genome Browser

liveBiologyScience

UCSC Genome Browser REST API — reference genome assemblies for ~250 species, the annotation tracks on each (genes, variants, conservation, regulation), the rows of any track over a region, and raw DNA sequence. Keyless.

4tools
0msauth
free tier50 calls/day

Tools

ucsc_genomes

"What genome assemblies does UCSC have for [species]" / "is hg38 or hg19 the current human build" / "what is the latest [mouse/zebrafish/dog] assembly" / "list UCSC genomes" — AUTHORITATIVE list of ev

No parameters required.

Try it
ucsc_tracks

"What annotation tracks does UCSC have for hg38" / "does [assembly] have a [ClinVar/GENCODE/conservation/repeat] track" / "what is the track name for [dataset] in the genome browser" — lists the annot

No parameters required.

Try it
ucsc_track_data

"What genes are in [chr:start-end]" / "list ClinVar variants in [region]" / "what repeats/SNPs/regulatory elements overlap [locus]" / "show me the GENCODE annotations across [gene]" — AUTHORITATIVE pe

No parameters required.

Try it
ucsc_sequence

"What is the DNA sequence at [chr:start-end]" / "get the reference bases for [region] in hg38" / "pull the sequence around [variant position]" — AUTHORITATIVE reference DNA for a genomic interval from

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/ucsc-genome/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/ucsc-genome/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"ucsc_genomes","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("ucsc_genomes", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("ucsc genome browser rest api — reference genome assemblies for ~250 species, the annotation tracks on each (genes, variants, conservation, regulation), the rows of any track over a region, and raw dna sequence");