<< All versions
Skill v1.0.1
currentAutomated scan100/100internscience/scp/ucsc-genome-exploration
1 files
──Details
PublishedJune 14, 2026 at 12:58 AM
Content Hashsha256:a113f41f3bfb9037...
Git SHAcea539856403
Bump Typepatch
──Files
Files (1 file, 4.1 KB)
SKILL.md4.1 KBactive
SKILL.md · 120 lines · 4.1 KB
version: "1.0.1" name: ucsc_genome_exploration description: "UCSC Genome Browser Exploration - Explore genome via UCSC: list genomes, list tracks, get sequence, get track data, and cytoband info. Use this skill for genomics tasks involving list genomes list tracks get sequence get track data get cytoband. Combines 5 tools from 1 SCP server(s)."
UCSC Genome Browser Exploration
Discipline: Genomics | Tools Used: 5 | Servers: 1
Description
Explore genome via UCSC: list genomes, list tracks, get sequence, get track data, and cytoband info.
Tools Used
- `list_genomes` from
ucsc-server(streamable-http) -https://scp.intern-ai.org.cn/api/v1/mcp/13/Origene-UCSC - `list_tracks` from
ucsc-server(streamable-http) -https://scp.intern-ai.org.cn/api/v1/mcp/13/Origene-UCSC - `get_sequence` from
ucsc-server(streamable-http) -https://scp.intern-ai.org.cn/api/v1/mcp/13/Origene-UCSC - `get_track_data` from
ucsc-server(streamable-http) -https://scp.intern-ai.org.cn/api/v1/mcp/13/Origene-UCSC - `get_cytoband` from
ucsc-server(streamable-http) -https://scp.intern-ai.org.cn/api/v1/mcp/13/Origene-UCSC
Workflow
- List available genomes
- List tracks for hg38
- Get DNA sequence for BRCA1 region
- Get track data
- Get cytoband info
Test Case
Input
json
{"genome": "hg38","chrom": "chr17","start": 43044295,"end": 43125370}
Expected Steps
- List available genomes
- List tracks for hg38
- Get DNA sequence for BRCA1 region
- Get track data
- Get cytoband info
Usage Example
Note: Replace<YOUR_SCP_HUB_API_KEY>with your own SCP Hub API Key. You can obtain one from the SCP Platform.
python
import asyncioimport jsonfrom mcp import ClientSessionfrom mcp.client.streamable_http import streamablehttp_clientfrom mcp.client.sse import sse_clientSERVERS = {"ucsc-server": "https://scp.intern-ai.org.cn/api/v1/mcp/13/Origene-UCSC"}async def connect(url, transport_type):transport = streamablehttp_client(url=url, headers={"SCP-HUB-API-KEY": "<YOUR_SCP_HUB_API_KEY>"})read, write, _ = await transport.__aenter__()ctx = ClientSession(read, write)session = await ctx.__aenter__()await session.initialize()return session, ctx, transportdef parse(result):try:if hasattr(result, 'content') and result.content:c = result.content[0]if hasattr(c, 'text'):try: return json.loads(c.text)except: return c.textreturn str(result)except: return str(result)async def main():# Connect to required serverssessions = {}sessions["ucsc-server"], _, _ = await connect("https://scp.intern-ai.org.cn/api/v1/mcp/13/Origene-UCSC", "streamable-http")# Execute workflow steps# Step 1: List available genomesresult_1 = await sessions["ucsc-server"].call_tool("list_genomes", arguments={})data_1 = parse(result_1)print(f"Step 1 result: {json.dumps(data_1, indent=2, ensure_ascii=False)[:500]}")# Step 2: List tracks for hg38result_2 = await sessions["ucsc-server"].call_tool("list_tracks", arguments={})data_2 = parse(result_2)print(f"Step 2 result: {json.dumps(data_2, indent=2, ensure_ascii=False)[:500]}")# Step 3: Get DNA sequence for BRCA1 regionresult_3 = await sessions["ucsc-server"].call_tool("get_sequence", arguments={})data_3 = parse(result_3)print(f"Step 3 result: {json.dumps(data_3, indent=2, ensure_ascii=False)[:500]}")# Step 4: Get track dataresult_4 = await sessions["ucsc-server"].call_tool("get_track_data", arguments={})data_4 = parse(result_4)print(f"Step 4 result: {json.dumps(data_4, indent=2, ensure_ascii=False)[:500]}")# Step 5: Get cytoband inforesult_5 = await sessions["ucsc-server"].call_tool("get_cytoband", arguments={})data_5 = parse(result_5)print(f"Step 5 result: {json.dumps(data_5, indent=2, ensure_ascii=False)[:500]}")# Cleanupprint("Workflow complete!")if __name__ == "__main__":asyncio.run(main())