MiniLake MCP

A local Databricks API emulator with a 67-tool MCP server: agents run SQL and jobs without a real workspace

  • 142 ★ on the repository
  • Last commit
MCP server

Broad access

Why this level

  • MCP tools execute arbitrary SQL and spawn Docker containers on your machine.
  • There is no authentication and any token is accepted: a published port serving `/mcp` amounts to handing out a shell.
All reasons and checks

dmux/minilake

Install

Manual install

pip install minilake

The first run command from the README installs the emulator. MCP needs the extra: `pip install 'minilake[mcp]'`.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • MCP tools execute arbitrary SQL and spawn Docker containers on your machine.
  • There is no authentication and any token is accepted: a published port serving `/mcp` amounts to handing out a shell.

This is third-party code. Review the repository files before installing.

What it does

MiniLake starts a Databricks REST API emulator on localhost so code built on `databricks-sdk`, the CLI and Terraform can be written and tested without a real workspace. SQL runs on DuckDB, external Delta tables are Parquet files with a `_delta_log/`, and jobs run `spark-submit` in a sibling Docker container. Other parts of the API store and return data or answer `501 NOT_IMPLEMENTED`. The MCP server is switched on with `MINILAKE_MCP=1` and answers at `/mcp` on the same port, with no extra process. It offers 67 tools, some of which collapse a four-call sequence into one, 8 resources with rules for the agent and 4 prompt templates. The agent gets instructions before its first action: for instance, that the SQL dialect here is DuckDB, not Spark. The MCP layer calls the emulator's own HTTP API, so a tool error matches the error an ordinary SDK client would see.

Who it is for. Data engineers writing Databricks code who want an agent to run SQL and jobs locally rather than in a paid workspace.

Good fit when

  • An agent writes `databricks-sdk` scripts and they must run without workspace access.
  • Terraform or Asset Bundles configuration is checked against a local copy of the API.
  • CI runs tests for Databricks code with no cloud cost.
  • An agent needs catalogs, schemas and tables it can create and break without consequences.

Not a fit when

  • You must verify permissions and grants: the emulator stores them but never enforces them.
  • The code relies on Spark SQL rather than the DuckDB dialect.
  • The server is meant to be shared with several people or exposed to a network.

Example request

Create a sales catalog with a store schema and an orders table holding three rows, then run a query grouped by customer.

MCP

Transport
http
Authentication
not required

Environment variables

MINILAKE_MCP required
The value 1 enables serving MCP at /mcp.
MINILAKE_MCP_MAX_ROWS
Row cap for run_sql, 200 by default.
MINILAKE_MCP_ALLOWED_HOSTS
Host header allowlist, required when reaching the server under a non-loopback name.

Limitations

The emulator targets one developer on localhost: there is no authentication and any token is accepted. MCP tools run arbitrary SQL and spawn Docker containers, so the port serving `/mcp` must not be published and the `127.0.0.1` binding stays as it is. Repos, DLT, Model Registry, Vector Search, Lakeview and Genie, and Delta Sharing are not implemented. Managed tables live in DuckDB without files and Spark cannot see them. A green local run is no substitute for a check against real Databricks.

How to disable. Run `claude mcp remove minilake` and stop the `minilake` process or the Docker container. Without `MINILAKE_MCP=1` the `/mcp` endpoint is not served.

FAQ

How do I connect MiniLake to Claude Code?

Start the emulator with `MINILAKE_MCP=1`, then run `claude mcp add --transport http minilake http://localhost:8000/mcp`. `claude mcp list` should show the connection. The repository also ships a ready project `.mcp.json`.

How is MCP enabled and why is it off by default?

With `MINILAKE_MCP=1`. The tools execute arbitrary SQL and spawn Docker while the emulator accepts any token, so `/mcp` is disabled by default.

How many rows does `run_sql` return?

Up to 200 rows by default. `MINILAKE_MCP_MAX_ROWS` changes the cap so a `SELECT *` on a large table cannot flood the agent context.

Does the emulator work offline?

Yes. The Docker image downloads nothing at runtime, so it suits offline use.

How do I run MiniLake in Docker?

Run `docker run -p 8000:8000 ghcr.io/dmux/minilake:latest`. For MCP add `-e MINILAKE_MCP=1`: the required extra is already in the image.

Discussion

No questions or reviews yet.

Official

Dremio MCP server: an agent browses tables, looks for patterns in the data and analyzes cluster workload.

MCP serverExtended access53Repository stars
Needs a VPN

Databricks Field Engineering's agent kit: an installer for Databricks skills, an MCP server and a visual Builder App

PluginBroad access2KRepository stars

One MCP server for SQLite, SQL Server, PostgreSQL and MySQL: read and change data, edit schemas and export to CSV and JSON

MCP serverBroad access390Repository stars
Official

A desktop SQL workspace with a built-in MCP server: the agent reads the schema and runs queries in the same client you already use

MCP serverBroad access5.4KRepository stars
Official

A single-binary MCP server for MySQL, MariaDB, PostgreSQL and SQLite: read-only by default, with optional PII redaction

MCP serverBroad access33Repository stars

DuckDB / MotherDuck MCP Server

DuckDB / MotherDuck Local MCP Server

Official

An MCP server for SQL analytics on DuckDB: local files, in-memory databases, S3-hosted databases and MotherDuck

MCP serverExtended access539Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
MiniLake (this card)nonot required142
Databricks AI Toolsno384official skills for working with the real Databricks platform; MiniLake replaces the platform with a local emulator
DuckDB / MotherDuck MCP Serveryesnot required539gives direct SQL analytics on DuckDB; MiniLake builds a Databricks-compatible REST API on top of DuckDB

README in short

The emulator covers much of the Databricks REST API and is tested against the real `databricks-sdk`, the Terraform provider and `databricks bundle`. The documentation covers configuration, a web SQL editor at `/ui/` and the status of every service.

README badge

Report a problem

Foxx AIMiniLake
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.