README
🚀 1000 Genomes Project dataset MCP Server
本项目可通过自然语言访问托管于 Dnaerys variant store 的 1000 Genomes Project dataset。该数据集由 New York Genome Center 进行测序并与 GRCh38 进行比对,具有重要的科研价值。
🚀 快速开始
本项目提供对 1000 Genomes Project dataset 的自然语言访问,数据托管于线上的 Dnaerys variant store。
✨ 主要特性
- 实时访问:可实时访问 3202 个样本中的 138 044 724 个独特变异和大约 4420 亿个个体基因型。
- 多样化选择:支持基于坐标、注释、纯合性进行变异、样本和基因型选择。
- 多维度过滤:可通过 VEP、ClinVar、gnomAD AF 和 AlphaMissense 注释进行过滤,还能根据遗传模型(新发、杂合显性、纯合隐性)进行筛选。
📦 安装指南
项目可以通过 MCP 以 stdio 传输方式在本地运行,MCP 服务器可以作为 MCP 客户端(如 Claude Desktop 或 Goose)的子进程启动。
- 构建项目并打包为单一 über-jar:
- 生成的 jar 文件位于
target/onekgp-mcp-runner.jar,包含所有依赖项。
- 生成的 jar 文件位于
./mvnw clean
./mvnw package -DskipTests -Dquarkus.package.jar.type=uber-jar
- 启动项目:
- 从 MCP 客户端使用 jar 文件的完整路径启动(适用于 stdio 传输,默认配置),或者以可流式传输的 HTTP 传输方式作为单独的服务运行(需要修改 配置文件)。
- 项目运行时需要 JRE 21。
java -jar <full path>/onekgp-mcp-runner.jar
📝 使用 Claude Desktop 的配置
若要与 Claude Desktop 配合使用,需在 claude_desktop_config.json 中添加以下内容:
{
"mcpServers": {
"OneKGP": {
"command": "java",
"args": ["-jar", "/full/path/onekgp-mcp-runner.jar"]
}
}
}
✅ 验证示例
可以通过询问 “How many variants exist in 1000 Genome Project ?” 来验证项目是否正常运行。
💻 使用示例
可以尝试提出分析性或开放性问题,以充分发挥大语言模型的分析能力,例如:
基础用法
识别 TTN 基因中已知致病等位基因的潜在修饰变异——那些与致病等位基因始终在同一单倍型块中共现,并可能改变疾病严重程度或外显率的变异。针对文献中记录的致病等位基因进行研究。使用健康个体的 KGP 数据集来寻找潜在的修饰变异。从 100kb 的“同一单倍型块”定义开始,如有需要可进行扩展。评估找到的最佳修饰变异候选者的统计学意义。
结果可能如 此处 所示 (Sonnet 4.5)
高级用法
其他示例:
在 KGP 数据集中,哪些与心脏相关的基因(如离子通道)中,靠近催化残基或配体结合口袋的变异与侧翼残基(±20 个氨基酸)相比显示出强烈的缺失?
结果可能如 此处 所示 (Sonnet 4.5)
欢迎提交包含你喜欢的提示的 PR。
📚 详细文档
可用工具
30 种工具和参数的描述可在 此处 找到。
部署方式
远程 MCP 服务可通过 Streamable HTTP 在线使用:
- http://db.dnaerys.org:80/mcp
- https://db.dnaerys.org:443/mcp
如需使用 stdio 传输方式进行本地构建,请参阅 以下详细信息
🔧 技术细节
MCP 服务器实现为一个 Java EE 服务,通过 gRPC API 调用访问在线托管的 1KGP 数据集 的公共 Dnaerys variant store 服务。
- 服务实现基于 Quarkus MCP Server
- 支持通过 Streamable HTTP、HTTP/SSE 和 STDIO 传输方式提供 MCP 服务。
📄 许可证
本项目采用 Apache License 2.0 许可协议,详情请参阅 LICENSE 文件。
Scan to join WeChat group