Labsco
MCP SERVER · OFFICIAL PROJECT

Dremio

by dremio

Explore a Dremio deployment in plain language — read schemas, trace lineage, run SQL, and investigate the jobs that failed.

Relational SQL Databases
Summary
The server mode is the access control, so set it deliberately.

server_mode decides which family of tools loads: FOR_DATA_PATTERNS gives the agent tables and data for exploration, FOR_SELF turns it inward onto job history and workload analysis, and FOR_PROMETHEUS adds cluster metrics. That is a useful boundary — an analyst and a platform engineer want different halves of this and should not both get everything. Writes are off until you set allow_dml, so the default posture is read-only.

What it is

Dremio's own MCP server. It connects to a Dremio Cloud project or a software cluster and exposes two different jobs: querying the semantic layer, and introspecting the cluster's own workload. Which of those an agent can see is decided by a server mode you set in the config, not by the agent.

What you get
  • Run SELECT statements against the cluster and read the rows back — RunSqlQuery
  • Understand a dataset before querying it — GetSchemaOfTable and GetTableOrViewLineage
  • Find the right dataset by describing it, when semantic search is switched on — SemanticSearch
  • Investigate failures: GetFailedJobDetails covers failed and canceled jobs over the past seven days
  • Report on usage grouped by engine or project — BuildUsageReport
  • Get at Dremio's own system tables — GetUsefulSystemTableNames and GetNameOfJobsRecentTable
  • Pull cluster metrics from an attached Prometheus — GetRelevantMetrics, GetMetricSchema and RunPromQL
Requirements

A Dremio deployment and a personal access token. Running it locally needs Python 3.11 or later and the uv package manager; dremio-mcp-server config create dremioai writes ~/.config/dremioai/config.yaml, which holds the API URI, the PAT — readable from a file with an @ prefix so it stays out of shell history — and, for Dremio Cloud, the project id. Two switches decide how much the server can do: enable_search turns on SemanticSearch, and allow_dml is what lets it create views. For a shared deployment there is a Helm chart that runs it in streaming HTTP mode with OAuth instead of a PAT.

Setup effort

Build from source — clone the repository and build it, then point your client at the binary