Druid MCP Server

AI-powered MCP server for Apache Druid cluster management and analytic

Local serverstdio

What is the Druid MCP Server?

AI-powered MCP server for Apache Druid cluster management and analytic

What the server does

A comprehensive Model Context Protocol (MCP) server for Apache Druid that provides extensive tools, resources, and prompts for managing and analyzing Druid clusters.

This MCP server implements a intend-based architecture where profiles picture their usaae intend and the corresponding area of Druid usage. The server provides three main types of MCP components:

  • Spring AI MCP Server integration
  • Tool-based architecture for MCP protocol compliance
  • Tool-based Architecture — Complete MCP protocol compliance with automatic JSON schema generation
  • Multiple Transport Modes — STDIO, SSE, and Streamable HTTP support including Oauth
  • Real-time Communication — Server-Sent Events with streaming capabilities
  • Comprehensive error handling

Credentials and setup notes

  • Java 25 - Maven 3.6+ - Apache Druid cluster running with router on port 8888

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
getDatasourcesList all available Apache Druid datasources or get detailed schema for a specific datasource.
getLookupsGet configuration or status of lookups for all or a specific tier.
getSegmentsFetch segments metadata or details for a specific segment.
getSegmentLoadQueueGet the load queue status showing segments currently being loaded.
queryDruidSqlExecute a SQL query against Druid datasources.
getCompactionConfigView compaction configuration or configuration change history for datasources.
getCompactionStatusRetrieve the current status of compaction runs and progress.
manageCompactionAdd, update, or remove a compaction configuration.
manageDatasourceOrSegmentModify segment states or permanently drop a datasource.
manageLookupCreate, update, or delete a lookup configuration.
queryDruidMultiStageExecute a multi-stage SQL query (MSQ) against Druid datasources as a task.
queryDruidMultiStageWithContextExecute a multi-stage SQL query with custom context parameters.
getMultiStageQueryTaskStatusGet the status of a multi-stage query task.
cancelMultiStageQueryTaskCancel a running multi-stage query task.
getRetentionRulesRetrieve retention rules or audit history for a specific datasource or all datasources.
manageRetentionRulesUpdate retention rules configuration for a specific datasource.
submitIngestionSubmit a Druid ingestion specification or generate a simple batch template.
getSupervisorsList all supervisors or query details of a specific supervisor.
manageSupervisorSuspend, resume, or terminate a supervisor's execution.
getTasksList ingestion tasks matching specific states.
getTaskDetailsFetch detailed information, specifications, execution reports, or execution logs for a task.
shutdownTaskKill/shutdown a Druid task.
getClusterStatusCheck overall health or fetch specific metadata/properties from coordinators or routers.
getNodesStatusList registered servers, their detailed status, or single node status.
diagnoseClusterPerform automated diagnostic health checks, configuration audits, or query performance analysis.
checkFunctionalityHealthValidate operations of ingestion systems, supervisor state transitions, and historical query latency.
manageAuthenticationAdminister basic security users and credentials.
manageAuthorizationManage security authorization properties, roles, and resource access policies.
manageSecurityAssignmentsConfigure mapping rules assigning roles to users, or retrieve the configured authenticator chains.

How to install the Druid MCP Server

{
  "mcpServers": {
    "druid-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "DRUID_ROUTER_URL",
        "-e",
        "DRUID_COORDINATOR_URL",
        "-e",
        "DRUID_AUTH_USERNAME",
        "-e",
        "DRUID_AUTH_PASSWORD",
        "-e",
        "DRUID_SSL_ENABLED",
        "-e",
        "DRUID_SSL_SKIP_VERIFICATION",
        "iunera/druid-mcp-server:2.0.1"
      ],
      "env": {
        "DRUID_ROUTER_URL": "http://host.docker.internal:8888",
        "DRUID_COORDINATOR_URL": "http://host.docker.internal:8081",
        "DRUID_AUTH_USERNAME": "",
        "DRUID_AUTH_PASSWORD": "YOUR_DRUID_AUTH_PASSWORD",
        "DRUID_SSL_ENABLED": "false",
        "DRUID_SSL_SKIP_VERIFICATION": "true"
      }
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

  • Java 25 - Maven 3.6+ - Apache Druid cluster running with router on port 8888
VariableDescriptionRequired
DRUID_ROUTER_URLDeclared in the maintainer’s client configuration.Check documentation
DRUID_COORDINATOR_URLDeclared in the maintainer’s client configuration.Check documentation
DRUID_AUTH_USERNAMEDeclared in the maintainer’s client configuration.Check documentation
DRUID_AUTH_PASSWORDDeclared in the maintainer’s client configuration.Check documentation
DRUID_SSL_ENABLEDDeclared in the maintainer’s client configuration.Check documentation
DRUID_SSL_SKIP_VERIFICATIONDeclared in the maintainer’s client configuration.Check documentation

Example prompts to try

  • “Use Druid to Examples.”
  • “Use Druid to Prerequisites.”
  • “Use Druid to Logging.”

Frequently asked questions

AI-powered MCP server for Apache Druid cluster management and analytic Confirm the tools offered by your installed version in the connected client. Tool availability and permissions depend on the server and account configuration.