SuperAPI AI 工具集

ucsc-genome-mcp

ucsc-genome-mcp 是一个基于 Model Context Protocol(MCP)的服务器,用于让大语言模型应用访问 UCSC Genome Browser API,查询基因组、序列、数据轨道和元数据。它提供 12 个工具,覆盖基因组查找、染色体与轨道列表、DNA 序列获取、轨道数据检索和基因组内搜索等主要功能。适合基因组研究、变异分析、比较基因组学、序列分析等场景。项目采用 Python 3.10+ 开发,依赖 mcp>=0.9.0 和 httpx>=0.27.0,通过 stdio 与 MCP 协议通信,并支持在 Claude Desktop 中配置使用。

访问官网

工具介绍

用途

ucsc-genome-mcp 是一个 Model Context Protocol(MCP)服务器,旨在让大语言模型应用能够查询 UCSC Genome Browser 的基因组数据、序列、数据轨道和元数据。它通过封装 UCSC Genome Browser API,使 LLM 可以调用多种基因组相关工具,适用于基因组研究、变异分析、比较基因组学、序列分析、数据发现和教学等场景。

主要能力

该服务器暴露 12 个工具,覆盖 UCSC Genome Browser API 的主要端点:

  • 列表与发现工具:

    • find_genome:使用关键词、登录号或生物体名称搜索基因组。
    • list_public_hubs:列出所有可用的公共轨道 hub。
    • list_ucsc_genomes:列出所有 UCSC 数据库基因组。
    • list_genark_genomes:列出 GenArk 组装 hub 基因组。
    • list_hub_genomes:列出特定 hub 中的基因组。
    • list_files:列出某个基因组可下载的文件。
    • list_tracks:列出基因组或 hub 中的数据轨道。
    • list_chromosomes:列出基因组或轨道中的染色体。
    • list_schema:获取轨道的字段定义。
  • 数据检索工具:

    • get_sequence:从基因组中获取 DNA 序列。
    • get_track_data:获取轨道数据(基因、变异、注释等)。
    • search_genome:在基因组组装内搜索。

使用方式

  • 环境要求:Python 3.10 或更高版本。
  • 安装方式:从源码安装。
  • 依赖项:mcp>=0.9.0(Model Context Protocol SDK),httpx>=0.27.0(用于 API 请求的 HTTP 客户端)。
  • 运行:服务器通过 stdio 通信,遵循 MCP 协议。
  • 与 Claude Desktop 集成:在 Claude Desktop 配置文件中添加配置即可。
    • MacOS 配置文件路径:~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows 配置文件路径:%APPDATA%/Claude/claude_desktop_config.json

适用场景

  • 基因组研究:查询基因位置、序列和注释。
  • 变异分析:检索 SNP 和变异数据。
  • 比较基因组学:访问多个物种的数据。
  • 序列分析:获取 DNA/RNA 序列用于分析。
  • 数据发现:查找可用的数据集和组装。
  • 教学:通过交互查询学习基因组学。

限制与注意事项

  • 请求频率:建议每秒最多 1 次请求。API 具有 botDelay 系统以防止过载,过度查询可能导致访问受限。
  • 坐标系统:起始坐标为 0-based(第一个碱基为 0),结束坐标为 1-based(不包含)。例如 start=0, end=10 获取前 10 个碱基。
  • 支持的轨道类型:get_track_data 工具支持 bed、bigBed、bigWig、genePred、bigGenePred、bigChain、bigPsl、bigMaf、narrowPeak、bigNarrowPeak、wiggle/wig、barChart/bigBarChart、interact/bigInteract 等多种类型,以及更多。
  • 大数据集处理:对于超过 100 万项的轨道,使用分页;按染色体查询;使用 start/end 坐标指定较小区域。
  • 错误处理:服务器处理 HTTP 错误(404、500 等)、无效参数、不存在的基因组/轨道/染色体、请求超时(默认 30 秒),并以文本响应返回描述性错误信息。
  • API 请求地址:所有请求发送至 https://api.genome.ucsc.edu。
  • 使用条款:本项目与 UCSC Genome Browser 交互,后者有其自身使用条款,详见 https://genome.ucsc.edu/conditions.html。UCSC Genome Browser API 的问题请联系 UCSC,本 MCP 服务器的问题请在仓库中提交 issue。

项目结构说明

  • 添加新端点:在 list_tools() 中添加工具定义,在 call_tool() 中添加处理器,并更新 README 中的示例。
  • 可手动测试单个端点。

版本

初始版本,支持所有主要 UCSC Genome Browser API 端点,12 个工具覆盖列表、发现和数据检索,包含完整文档和示例。