关于 DROMA MCP Server
DROMA MCP Server 将 AI 助手连接到 DROMA 癌症药物基因组学数据与分析。研究人员可管理数据集、加载标准化的分子与药物反应数据、探索关联并导出结果。
主要功能
- 01管理和选择数据集
- 02加载标准化分子谱
- 03加载药物反应数据
- 04查询项目、样本和特征
- 05分析药物与组学关联
- 06导出为 CSV、Excel 或 JSON
适用场景
- 01加载 CCLE 数据开展分析
- 02按项目浏览样本和特征
- 03分析药物与组学特征的关联
- 04导出缓存数据以供后续分析
MCP 相关
它向 MCP 客户端提供 DROMA 数据集管理、数据库查询、数据加载、分析、可视化和导出工具,并支持 STDIO、HTTP 和 SSE 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
DROMA MCP 服务
一个用于 DROMA(Drug Response Omics association MAp,药物反应组学关联图谱)的 Model Context Protocol (MCP) 服务,可通过自然语言与药物组学关联分析进行交互。
🚀 概述
DROMA MCP 服务提供通往 DROMA.R 和 DROMA.Set 软件包的自然语言接口,帮助 AI 助手进行癌症药物基因组学分析。
它是 DROMA 项目的一部分。请访问 DROMA 官方网站,了解完整文档和交互式示例。
主要功能
- 🔗 自然语言接口:用通俗英语询问药物组学关联问题
- 📊 数据集管理:在内存中加载和管理 DROMA 数据集(CCLE、gCSI 等)
- 📈 数据加载与标准化:加载分子特征和治疗反应数据,并自动进行 z-score 标准化
- 🗂️ 多项目支持:跨多个研究项目无缝处理数据
- 💾 智能缓存:高效缓存数据并跟踪元数据,加快访问速度
- 📤 数据导出:将分析结果导出为多种格式(CSV、Excel、JSON)
- ⚡ 多模态支持:支持多种传输协议(STDIO、HTTP、SSE)
- 🔄 R 集成:通过 rpy2 与现有 DROMA R 软件包无缝集成
📦 安装
前置条件
- Python 3.10+
- R 4.0+,并安装 DROMA.Set 和 DROMA.R 软件包
- DROMA SQLite 数据库
- FastMCP 2.13+(自动安装)
通过 pip 安装
pip install droma-mcp
开发环境安装
git clone https://github.com/mugpeng/DROMA_MCP
cd DROMA_MCP
pip install -e .
R 依赖项
请确保已安装 DROMA R 软件包:
# Install DROMA.Set and DROMA.R packages
# devtools::install_github("mugpeng/DROMA_Set")
# devtools::install_github("mugpeng/DROMA_R")
🚀 快速开始
1. 启动服务
# STDIO mode (for AI assistants) - default
droma-mcp run --db-path path/to/droma.sqlite
# HTTP mode (for web applications)
droma-mcp run --transport http --port 8000 --db-path path/to/droma.sqlite
2. MCP 客户端配置
添加到 MCP 客户端配置中:
{
"mcpServers": {
"droma-mcp": {
"command": "droma-mcp",
"args": ["run", "--db-path", "path/to/droma.sqlite"]
}
}
}
🖥️ CLI 命令
| 命令 | 描述 |
|---|---|
run | 启动 MCP 服务 |
test | 测试配置和依赖项 |
validate | 验证完整设置 |
export-config | 导出 MCP 客户端配置 |
查看详细帮助:droma-mcp --help 或 droma-mcp run --help
🛠️ 可用工具
数据集管理
load_dataset:从数据库将 DROMA 数据集(CCLE、gCSI 等)加载到内存list_loaded_datasets:显示当前已加载到内存中的数据集set_active_dataset:设置后续操作使用的活动数据集unload_dataset:从内存中移除数据集以释放资源
数据加载与分析
load_molecular_profiles_normalized:加载经 z-score 标准化的分子特征(mRNA、CNV、甲基化等)load_treatment_response_normalized:加载经标准化的药物反应数据load_multi_project_molecular_profiles_normalized:跨多个项目加载数据load_multi_project_treatment_response_normalized:跨多个项目加载治疗反应数据check_zscore_normalization:验证缓存数据的标准化状态get_cached_data_info:获取缓存数据集的信息export_cached_data:将数据导出为 CSV/Excel/JSON 格式
数据库查询与探索
get_droma_annotation:从数据库中检索样本或药物注释数据list_droma_samples:列出项目中所有可用样本,并提供筛选选项list_droma_features:列出项目和数据类型对应的所有可用特征(基因、药物)list_droma_projects:列出 DROMA 数据库中的所有可用项目
可视化与分析
plot_drug_sensitivity_rank:创建药物敏感性排名图analyze_drug_omic_pair:分析药物与组学特征之间的关联
💬 示例用法
基本工作流
⚠️ 重要提示:使用任何数据加载函数前,必须先将数据集加载到内存中:
“从数据库加载 CCLE 数据集,并将其设为活动数据集”
“从 CCLE 数据集中加载 ABCB1 基因的 mRNA 表达数据,并进行 z-score 标准化”
“列出 DROMA 数据库中的所有可用项目”
“显示 gCSI 项目中所有可用的 mRNA 数据样本”
🔧 配置
环境变量
DROMA_DB_PATH:DROMA SQLite 数据库的默认路径R_LIBS:R 库的路径DROMA_MCP_MODULE:要加载的服务模块(all、data_loading、database_query、dataset_management、visualization、analysis)DROMA_MCP_VERBOSE:启用详细日志记录
🔧 故障排除
常见问题
导入错误:运行 droma-mcp validate 检查依赖项
R 集成问题:确保已正确安装 R 和 DROMA 包
数据库连接:使用 droma-mcp test --db-path path/to/droma.db 验证数据库路径
如需更多帮助,请参阅 DROMA 官方网站 或在 GitHub 上提交问题。
🤝 参与贡献
欢迎贡献!详情请参阅贡献指南。
📄 许可证
本项目采用 MPL-2 许可证授权,详情请参阅 LICENSE 文件。
🔗 相关项目
- DROMA - DROMA 主项目
- DROMA.Set - 用于数据管理的 R 包
- DROMA.R - 用于分析函数的 R 包
- FastMCP - 用于 MCP 服务的 Python 框架
- Model Context Protocol - 用于 AI 工具集成的开放标准
📞 支持
- 问题:GitHub Issues
- 讨论:GitHub Discussions
- 电子邮件:联系 DROMA 团队
引用
如果您在研究中使用 DROMA MCP,请引用:
Li, S., Peng, Y., Chen, M. et al. Facilitating integrative and personalized oncology omics analysis with UCSCXenaShiny. Commun Biol 7, 1200 (2024). https://doi.org/10.1038/s42003-024-06891-2
DROMA MCP - 搭建 AI 与癌症药理基因组学之间的桥梁 🧬💊🤖
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
