UCSC Genomic Data · Capability
UCSC Genome Browser REST API — Tracks
UCSC Genome Browser REST API — Tracks. 3 operations. Lead operation: Get Track Data. Self-contained Naftiko capability covering one Ucsc Genomic Data business surface.
What You Can Do
GET
Gettrackdata
— Get Track Data
/v1/getdata/track
GET
Gettrackschema
— Get Track Schema
/v1/list/schema
GET
Listtracks
— List Tracks
/v1/list/tracks
MCP Tools
get-track-data
Get Track Data
read-only
idempotent
get-track-schema
Get Track Schema
read-only
idempotent
list-tracks
List Tracks
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: UCSC Genome Browser REST API — Tracks
description: 'UCSC Genome Browser REST API — Tracks. 3 operations. Lead operation: Get Track Data. Self-contained Naftiko
capability covering one Ucsc Genomic Data business surface.'
tags:
- Ucsc Genomic Data
- Tracks
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
UCSC_GENOMIC_DATA_API_KEY: UCSC_GENOMIC_DATA_API_KEY
capability:
consumes:
- type: http
namespace: ucsc-genomic-data-tracks
baseUri: https://api.genome.ucsc.edu
description: UCSC Genome Browser REST API — Tracks business capability. Self-contained, no shared references.
resources:
- name: getData-track
path: /getData/track
operations:
- name: gettrackdata
method: GET
description: Get Track Data
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: genome
in: query
type: string
description: Genome assembly identifier (e.g., hg38, mm39).
required: true
- name: track
in: query
type: string
description: Track name to retrieve data from.
required: true
- name: chrom
in: query
type: string
description: Chromosome to retrieve data for.
- name: start
in: query
type: integer
description: Start position (0-based).
- name: end
in: query
type: integer
description: End position (1-based).
- name: hubUrl
in: query
type: string
description: URL of the hub.txt file for a track hub.
- name: maxItemsOutput
in: query
type: integer
description: Maximum number of annotation items to return.
- name: jsonOutputArrays
in: query
type: integer
description: Set to 1 to format output as JSON arrays instead of objects.
- name: list-schema
path: /list/schema
operations:
- name: gettrackschema
method: GET
description: Get Track Schema
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: genome
in: query
type: string
description: Genome assembly identifier (e.g., hg38, mm39).
required: true
- name: track
in: query
type: string
description: Track name to return schema for.
required: true
- name: hubUrl
in: query
type: string
description: URL of the hub.txt file for a track hub.
- name: list-tracks
path: /list/tracks
operations:
- name: listtracks
method: GET
description: List Tracks
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: genome
in: query
type: string
description: Genome assembly identifier (e.g., hg38, mm39). Required unless hubUrl is provided.
required: true
- name: hubUrl
in: query
type: string
description: URL of the hub.txt file for a track hub.
- name: trackLeavesOnly
in: query
type: integer
description: Set to 1 to return only leaf tracks (hide composite containers).
exposes:
- type: rest
namespace: ucsc-genomic-data-tracks-rest
port: 8080
description: REST adapter for UCSC Genome Browser REST API — Tracks. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/getdata/track
name: getdata-track
description: REST surface for getData-track.
operations:
- method: GET
name: gettrackdata
description: Get Track Data
call: ucsc-genomic-data-tracks.gettrackdata
with:
genome: rest.genome
track: rest.track
chrom: rest.chrom
start: rest.start
end: rest.end
hubUrl: rest.hubUrl
maxItemsOutput: rest.maxItemsOutput
jsonOutputArrays: rest.jsonOutputArrays
outputParameters:
- type: object
mapping: $.
- path: /v1/list/schema
name: list-schema
description: REST surface for list-schema.
operations:
- method: GET
name: gettrackschema
description: Get Track Schema
call: ucsc-genomic-data-tracks.gettrackschema
with:
genome: rest.genome
track: rest.track
hubUrl: rest.hubUrl
outputParameters:
- type: object
mapping: $.
- path: /v1/list/tracks
name: list-tracks
description: REST surface for list-tracks.
operations:
- method: GET
name: listtracks
description: List Tracks
call: ucsc-genomic-data-tracks.listtracks
with:
genome: rest.genome
hubUrl: rest.hubUrl
trackLeavesOnly: rest.trackLeavesOnly
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: ucsc-genomic-data-tracks-mcp
port: 9090
transport: http
description: MCP adapter for UCSC Genome Browser REST API — Tracks. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: get-track-data
description: Get Track Data
hints:
readOnly: true
destructive: false
idempotent: true
call: ucsc-genomic-data-tracks.gettrackdata
with:
genome: tools.genome
track: tools.track
chrom: tools.chrom
start: tools.start
end: tools.end
hubUrl: tools.hubUrl
maxItemsOutput: tools.maxItemsOutput
jsonOutputArrays: tools.jsonOutputArrays
outputParameters:
- type: object
mapping: $.
- name: get-track-schema
description: Get Track Schema
hints:
readOnly: true
destructive: false
idempotent: true
call: ucsc-genomic-data-tracks.gettrackschema
with:
genome: tools.genome
track: tools.track
hubUrl: tools.hubUrl
outputParameters:
- type: object
mapping: $.
- name: list-tracks
description: List Tracks
hints:
readOnly: true
destructive: false
idempotent: true
call: ucsc-genomic-data-tracks.listtracks
with:
genome: tools.genome
hubUrl: tools.hubUrl
trackLeavesOnly: tools.trackLeavesOnly
outputParameters:
- type: object
mapping: $.