DROMA MCP Server
@mugpeng
A Model Context Protocol (MCP) server for DROMA (Drug Response Omics association MAp) - enabling natural language interactions with drug-omics association analysis.
Overview
What is DROMA MCP Server?
DROMA MCP Server is a Model Context Protocol server for DROMA (Drug Response Omics association MAp) that enables natural language interactions with drug-omics association analysis. It bridges AI assistants and cancer pharmacogenomics analysis by providing a natural language interface to the DROMA.R and DROMA.Set packages.
How to use DROMA MCP Server?
Install via pip install droma-mcp. Requires Python 3.10+, R 4.0+ with DROMA R packages, and a DROMA SQLite database. Start the server with droma-mcp run --db-path path/to/droma.sqlite. Use CLI commands like validate, test, benchmark, and export-config to configure and verify the environment.
Key features of DROMA MCP Server
- Natural language interface for drug-omics association queries
- Dataset management (CCLE, gCSI, etc.) in memory
- Data loading with automatic z-score normalization
- Multi-project support for cross-study analysis
- Smart caching with metadata tracking and LRU eviction
- Multi-modal transport (STDIO, HTTP, SSE)
- R integration via rpy2 for seamless package use
- Performance optimizations (async, connection pooling, memory management)
Use cases of DROMA MCP Server
- Load and normalize molecular profiles (mRNA, CNV, methylation) from DROMA datasets
- Query drug response data and explore database annotations
- Perform multi-project analyses on overlapping samples
- Export analysis results to CSV, Excel, or JSON formats
- Power AI assistants to answer questions about cancer pharmacogenomics
FAQ from DROMA MCP Server
What are the runtime dependencies?
Python 3.10+, R 4.0+ with DROMA.Set and DROMA.R packages, and a DROMA SQLite database are required.
How do I start the server?
Use droma-mcp run --db-path <path> in STDIO mode (default). For HTTP mode, add --transport streamable-http --port 8000.
What transport protocols are supported?
The server supports STDIO, streamable-http, and SSE transports, configurable via the --transport flag.
Which datasets are available?
Datasets such as CCLE and gCSI are supported. You load them into memory with the load_dataset tool.
Is R actually needed for the server to work?
Yes. The server integrates with DROMA R packages via rpy2 for data loading and analysis; R must be installed and the packages accessible.