About Imply Druid MCP
Imply Druid MCP is an MCP server published by yeongbin-hwang in the Cloud category: mCP server for Imply Cloud/Druid - query and manage data through AI assistants.
The repository has 1 stars and 0 forks, with the last commit 10 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/yeongbin-hwang/imply-druid-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (5)
cancel_queryCancel a running async query
Parameters not published.
execute_async_queryExecute a SQL query asynchronously for large datasets. Returns a query ID
Parameters not published.
execute_sql_queryExecute a SQL query synchronously and return results immediately
Parameters not published.
get_query_resultsRetrieve results from an async query using query ID
Parameters not published.
get_query_statusCheck the execution status of an async query
Parameters not published.
Ask AI
Ask AI about Imply Druid MCP
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 22 hours ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
- !Dependencies pinnedNo lockfile. Installs can pull different code over time.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
Releases
README
imply-druid-mcp
A read-only MCP (Model Context Protocol) server for Imply Cloud/Druid databases. Query and explore your Druid data through Claude and other AI assistants.
Features
Supported ✅
- SQL Query Execution
- Synchronous query execution
- Asynchronous query execution (for large datasets)
- Query Management
- Check query status
- Retrieve query results
- Cancel running queries
- Table Operations
- List all tables in project
- Get table schema details
- Dashboard Operations
- List all dashboards
- Get dashboard details
- Data Cube Operations
- List all data cubes
- Get data cube details
- Execute Pivot SQL queries
Not Supported ❌
- Data Ingestion
- Table/Schema Creation or Modification
- User/Permission Management
- Supervisor Management
Tools
Query Tools
| Tool | Description |
|---|---|
execute_sql_query |
Execute a SQL query synchronously and return results immediately |
execute_async_query |
Execute a SQL query asynchronously for large datasets. Returns a query ID |
get_query_results |
Retrieve results from an async query using query ID |
get_query_status |
Check the execution status of an async query |
cancel_query |
Cancel a running async query |
Table Tools
| Tool | Description |
|---|---|
list_tables |
List all tables (datasources) in the Druid project |
get_table_schema |
Get detailed schema information for a specific table |
Dashboard Tools
| Tool | Description |
|---|---|
list_dashboards |
List all dashboards in the Imply project |
get_dashboard |
Get detailed information about a specific dashboard |
Data Cube Tools
| Tool | Description |
|---|---|
list_data_cubes |
List all data cubes in the Imply project |
get_data_cube |
Get detailed data cube information including dimensions and measures |
query_data_cube |
Execute Pivot SQL query against a data cube |
API Mapping
This MCP server maps to the Imply Polaris API:
| MCP Tool | Imply API Endpoint |
|---|---|
execute_sql_query |
POST /v1/projects/{projectId}/query/sql |
execute_async_query |
POST /v1/projects/{projectId}/query/sql/statements |
get_query_results |
GET /v1/projects/{projectId}/query/sql/statements/{queryId}/results |
get_query_status |
GET /v1/projects/{projectId}/query/sql/statements/{queryId} |
cancel_query |
DELETE /v1/projects/{projectId}/query/sql/statements/{queryId} |
list_tables |
GET /v1/projects/{projectId}/tables |
get_table_schema |
GET /v1/projects/{projectId}/tables/{tableName} |
list_dashboards |
GET /v1/projects/{projectId}/dashboards |
get_dashboard |
GET /v1/projects/{projectId}/dashboards/{dashboardId} |
list_data_cubes |
GET /v1/projects/{projectId}/data-cubes |
get_data_cube |
GET /v1/projects/{projectId}/data-cubes/{cubeName} |
query_data_cube |
POST /v0/projects/{projectId}/pivot/data-cube-sql/query |
Installation
Using uvx (Recommended)
uvx imply-druid-mcp
Using pip
pip install imply-druid-mcp
imply-druid-mcp
Using pipx
pipx install imply-druid-mcp
imply-druid-mcp
Configuration
| Environment Variable | Required | Default | Description |
|---|---|---|---|
IMPLY_ORGANIZATION |
Yes | - | Imply Cloud organization name |
IMPLY_REGION |
Yes | - | Region (e.g., us-east-1) |
IMPLY_CLOUD_PROVIDER |
Yes | - | Cloud provider: aws, gcp, or azure |
IMPLY_PROJECT_ID |
Yes | - | Imply project ID |
IMPLY_API_KEY |
Yes* | - | Imply API key |
IMPLY_ACCESS_TOKEN |
Yes* | - | OAuth access token (alternative) |
LOG_LEVEL |
No | INFO |
Logging level |
DEFAULT_QUERY_TIMEOUT_MS |
No | 30000 |
Default query timeout (ms) |
MAX_QUERY_LENGTH |
No | 10000 |
Maximum SQL query length |
*Either IMPLY_API_KEY or IMPLY_ACCESS_TOKEN is required.
Claude Desktop Setup
Add to your Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"imply-druid": {
"command": "uvx",
"args": ["imply-druid-mcp"],
"env": {
"IMPLY_ORGANIZATION": "your-org",
"IMPLY_REGION": "us-east-1",
"IMPLY_CLOUD_PROVIDER": "aws",
"IMPLY_PROJECT_ID": "your-project-id",
"IMPLY_API_KEY": "your-api-key"
}
}
}
}
Usage Examples
User: Show me all tables in my Druid project
Claude: [Uses list_tables]
- wikipedia (datasource)
- events (datasource)
- metrics (datasource)
User: Query the top 10 records from wikipedia table
Claude: [Uses execute_sql_query with "SELECT * FROM wikipedia LIMIT 10"]
[Results displayed]
User: Show me all data cubes
Claude: [Uses list_data_cubes]
- sales_cube: Sales Analytics (source: sales_table)
- events_cube: Events Tracking (source: events)
User: Query the sales data cube for top cities
Claude: [Uses query_data_cube with Pivot SQL syntax]
SELECT "DIM:city" AS "City", MEASURE_BY_ID('total_sales') AS "Sales"
FROM "datacube"."sales_cube"
ORDER BY 2 DESC
LIMIT 10
Development
git clone https://github.com/yeongbin-hwang/imply-druid-mcp.git
cd imply-druid-mcp
pip install -e ".[dev]"
License
MIT License - see LICENSE for details.
Resources
README fetched from the repository 22 hours ago. The original is authoritative.