药物组学关联分析服务器

DROMA MCP Server是一个用于药物组学关联分析的自然语言交互服务器,支持多项目数据管理和分析结果导出。

  • by DROMA01
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 mugpeng/DROMA_MCP

使用说明

DROMA MCP服务器

A. 模型上下文协议(MCP) 服务器 德罗马 (药物反应组学协会MAp)-实现自然语言与药物组学协会分析的相互作用。

🚀 概述

DROMA MCP服务器通过向 DROMA。R 和 德罗玛。集 包装。

它是 DROMA项目.访问 DROMA官方网站 获取全面的文档和交互式示例。

主要特点

  • 🔗 自然语言接口:用简单的英语询问有关药物组学关联的问题
  • 📊 数据集管理:在内存中加载和管理DROMA数据集(CCLE、gCSI等)
  • 📈 数据加载和标准化:通过自动z评分归一化加载分子谱和治疗反应数据
  • 🗂️ 多项目支持:无缝处理多个研究项目的数据
  • 💾 智能缓存:高效的数据缓存和元数据跟踪,可实现更快的访问
  • 📤 数据导出:将分析结果导出为各种格式(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评分标准化加载分子谱(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评分归一化”

“列出DROMA数据库中可用的所有项目”

“显示具有mRNA数据的gCSI项目的所有可用样本”

🔧 配置

环境变量

  • 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许可证获得许可-请参阅 许可证 文件以获取详细信息。

🔗 相关项目

📞 支持

引用

如果您在研究中使用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


德罗玛MCP -人工智能与癌症药物基因组学的桥梁🧬💊🤖