DROMA MCP Server
Interactúa con las bases de datos de análisis de asociaciones fármaco-ómicas de DROMA usando lenguaje natural.
Documentación
Servidor DROMA MCP
Un servidor de Protocolo de Contexto de Modelo (MCP) para DROMA (Drug Response Omics association MAp) - que permite interacciones en lenguaje natural con análisis de asociación fármaco-ómica.
🚀 Descripción general
El servidor DROMA MCP cierra la brecha entre los asistentes de IA y el análisis farmacogenómico del cáncer al proporcionar una interfaz de lenguaje natural para los paquetes DROMA.R y DROMA.Set.
Es parte del proyecto DROMA. Visite el sitio web oficial de DROMA para obtener documentación completa y ejemplos interactivos.
Características clave
- 🔗 Interfaz de lenguaje natural: Haga preguntas sobre asociaciones fármaco-ómicas en inglés sencillo
- 📊 Gestión de conjuntos de datos: Cargue y gestione conjuntos de datos DROMA (CCLE, gCSI, etc.) en memoria
- 📈 Carga y normalización de datos: Cargue perfiles moleculares y datos de respuesta al tratamiento con normalización automática de puntuación z
- 🗂️ Soporte multiproyecto: Trabaje sin problemas con datos de múltiples proyectos de investigación
- 💾 Caché inteligente: Caché de datos eficiente con seguimiento de metadatos para un acceso más rápido
- 📤 Exportación de datos: Exporte resultados de análisis a varios formatos (CSV, Excel, JSON)
- ⚡ Soporte multimodal: Funciona con varios protocolos de transporte (STDIO, HTTP, SSE)
- 🔄 Integración con R: Integración perfecta con los paquetes R existentes de DROMA mediante rpy2
📦 Instalación
Requisitos previos
- Python 3.10+
- R 4.0+ con los paquetes DROMA.Set y DROMA.R
- Base de datos SQLite de DROMA
- FastMCP 2.13+ (se instala automáticamente)
Instalación mediante pip
pip install droma-mcp
Instalación para desarrollo
git clone https://github.com/mugpeng/DROMA_MCP
cd DROMA_MCP
pip install -e .
Dependencias de R
Asegúrese de tener instalados los paquetes R de DROMA:
# Install DROMA.Set and DROMA.R packages
# devtools::install_github("mugpeng/DROMA_Set")
# devtools::install_github("mugpeng/DROMA_R")
🚀 Inicio rápido
1. Inicie el servidor
# 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. Configuración del cliente MCP
Agregue a su configuración del cliente MCP:
{
"mcpServers": {
"droma-mcp": {
"command": "droma-mcp",
"args": ["run", "--db-path", "path/to/droma.sqlite"]
}
}
}
🖥️ Comandos CLI
| Comando | Descripción |
|---|---|
run | Inicie el servidor MCP |
test | Pruebe la configuración y las dependencias |
validate | Valide la configuración completa |
export-config | Exporte la configuración del cliente MCP |
Para obtener ayuda detallada: droma-mcp --help o droma-mcp run --help
🛠️ Herramientas disponibles
Gestión de conjuntos de datos
load_dataset: Cargue conjuntos de datos DROMA (CCLE, gCSI, etc.) en memoria desde la base de datoslist_loaded_datasets: Muestre qué conjuntos de datos están cargados actualmente en memoriaset_active_dataset: Establezca el conjunto de datos activo para operaciones posterioresunload_dataset: Elimine conjuntos de datos de la memoria para liberar recursos
Carga y análisis de datos
load_molecular_profiles_normalized: Cargue perfiles moleculares (mRNA, CNV, metilación, etc.) con normalización de puntuación zload_treatment_response_normalized: Cargue datos de respuesta a fármacos con normalizaciónload_multi_project_molecular_profiles_normalized: Cargue datos de múltiples proyectosload_multi_project_treatment_response_normalized: Cargue respuesta al tratamiento entre proyectoscheck_zscore_normalization: Verifique el estado de normalización de los datos en cachéget_cached_data_info: Obtenga información sobre los conjuntos de datos en cachéexport_cached_data: Exporte datos a formatos CSV/Excel/JSON
Consulta y exploración de bases de datos
get_droma_annotation: Recupere datos de anotaciones de muestras o fármacos de la base de datoslist_droma_samples: Liste todas las muestras disponibles para un proyecto con opciones de filtradolist_droma_features: Liste todas las características disponibles (genes, fármacos) para un proyecto y tipo de datoslist_droma_projects: Liste todos los proyectos disponibles en la base de datos DROMA
Visualización y análisis
plot_drug_sensitivity_rank: Cree gráficos de clasificación de sensibilidad a fármacosanalyze_drug_omic_pair: Analice asociaciones entre fármacos y características ómicas
💬 Ejemplo de uso
Flujo de trabajo esencial
⚠️ Importante: Antes de usar cualquier función de carga de datos, primero debe cargar el conjunto de datos en memoria:
"Cargue el conjunto de datos CCLE desde la base de datos y establézcalo como activo"
"Cargue los datos de expresión de mRNA para el gen ABCB1 del conjunto de datos CCLE con normalización de puntuación z"
"Liste todos los proyectos disponibles en la base de datos DROMA"
"Muéstreme todas las muestras disponibles para el proyecto gCSI que tengan datos de mRNA"
🔧 Configuración
Variables de entorno
DROMA_DB_PATH: Ruta predeterminada a la base de datos SQLite de DROMAR_LIBS: Ruta a las bibliotecas de RDROMA_MCP_MODULE: Módulo de servidor a cargar (all,data_loading,database_query,dataset_management,visualization,analysis)DROMA_MCP_VERBOSE: Habilite el registro detallado
🔧 Solución de problemas
Problemas comunes
Errores de importación: Ejecute droma-mcp validate para verificar las dependencias
Problemas de integración con R: Asegúrese de que R y los paquetes DROMA estén instalados correctamente
Conexión a la base de datos: Verifique la ruta de la base de datos con droma-mcp test --db-path path/to/droma.db
Para obtener más ayuda, consulte el sitio web oficial de DROMA o abra un problema en GitHub.
🤝 Contribuciones
¡Las contribuciones son bienvenidas! Consulte nuestras Pautas de contribución para obtener más detalles.
📄 Licencia
Este proyecto está licenciado bajo la Licencia MPL-2; consulte el archivo LICENCIA para obtener más detalles.
🔗 Proyectos relacionados
- DROMA - Proyecto principal de DROMA
- DROMA.Set - Paquete R para gestión de datos
- DROMA.R - Paquete R para funciones de análisis
- FastMCP - Marco de trabajo de Python para servidores MCP
- Protocolo de Contexto de Modelo - Estándar abierto para la integración de herramientas de IA
📞 Soporte
- Problemas: Problemas de GitHub
- Discusiones: Discusiones de GitHub
- Correo electrónico: Contacte al equipo de DROMA
Citación
Si utiliza DROMA MCP en su investigación, cite:
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 - Uniendo la IA y la farmacogenómica del cáncer 🧬💊🤖
