lakehouse-mcp
Provides read-only tools for operating Delta Lake tables, including listing tables, inspecting schemas, running time-travel-aware queries, retrieving data-quality results, and monitoring job runs.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@lakehouse-mcpwhy did the silver table drop 12% of rows last night?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
lakehouse-mcp
An MCP server that lets AI agents operate your lakehouse. Point Claude (or any MCP client) at your Delta tables and it can inspect schemas, walk table history, run read-only queries, check data-quality results, and watch job runs — safely.
✅ Status: all six tools work. 57 tests pass. The roadmap below tracks what is actually real.
Why
Data engineers are already using AI agents for day-to-day platform work — but agents are blind without tools. lakehouse-mcp gives them structured, read-only-by-default access to lakehouse state, so "why did last night's load drop 12% of rows?" becomes something an agent can actually investigate: schema → history → DQ results → offending job run.
No JVM, no Spark cluster: built on delta-rs and DuckDB, so it installs with pip and runs anywhere.
Related MCP server: SQLite Read-Only MCP Server
Tools
Tool | What it does |
| Discover tables in the configured lakehouse paths |
| Column names, types, partitioning for a table |
| Delta transaction log — versions, operations, timestamps |
| Read-only SQL via DuckDB, row-limited, time-travel aware |
| Latest data-quality check outcomes per table |
| Recent Airflow runs and their state, with a per-task breakdown |
Usage
Not on PyPI yet, so run it from a clone:
{
"mcpServers": {
"lakehouse": {
"command": "uv",
"args": ["run", "--directory", "/path/to/lakehouse-mcp", "lakehouse-mcp",
"--root", "/path/to/your/warehouse"]
}
}
}--root is repeatable, and nothing outside the roots you pass is reachable.
Safety model
Read-only is the product, not a setting. Four independent controls, each tested:
Only a single SELECT executes. The check asks DuckDB's own parser, not a regex:
SELECTappears insideCREATE TABLE x AS SELECT ...,--comments hide trailing statements, and string literals contain anything at all. Multi-statement input is refused outright, because a caller who can send two statements can send a read followed by anything.Introspection is refused too. DuckDB parses
PRAGMAas a SELECT, so the type check alone would pass it. It cannot reach your data, but a tool that promises read-only SELECT should not quietly also mean "and enumerate the server".The engine cannot touch the filesystem.
enable_external_access=false,disabled_filesystems=LocalFileSystem, thenlock_configuration=trueso none of it can be undone. Tables arrive as Arrow datasets, so the only data any query can reach is what the server registered.Paths are allowlisted, resolved first.
..and symlinks are collapsed before the containment check, which is the half people leave out.
Every result is row-capped, and truncated says so when the cap bit, so an agent
never reasons about a short answer as though it were complete.
Roadmap
Project scaffold
P1 —
list_tables,get_schema,queryagainst local Delta tablesP2 —
table_history+ time-travel queriesP3 —
dq_results+job_runs(Airflow REST API)P4 — PyPI release, demo GIF against Streamhouse
P5 — Hardening: statement allowlist, filesystem lockdown, row caps, path allowlist
Verified against a real lakehouse: the six Delta tables Streamhouse produces
(bronze, bronze_dlq, silver, quarantine, dq_results, gold), including time travel
and the data-quality history, plus job_runs against a live Airflow running
Streamhouse's daily DAG.
job_runs needs AIRFLOW_API_URL set, plus AIRFLOW_USERNAME and
AIRFLOW_PASSWORD if the API requires auth. Without it the tool says so rather
than failing obscurely.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Safe, read-only Postgres and MySQL access for AI agents. Audit log + column-level controls.
Runtime permission, approval, and audit layer for AI agent tool execution.
Read-only finance and operations controls for AI agents with evidence and safe next actions.
Security gateway for AI agents: policy, approval, and audited execution, no secrets shared.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to access enterprise data from Unity Catalog (vector search, functions, Genie spaces) and perform developer actions in Databricks like managing notebooks and running jobs.-
- AlicenseAqualityDmaintenanceEnables safe, read-only SQL access to SQLite databases for AI agents, allowing schema exploration and SELECT queries with defense-in-depth protections.3MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to explore Unity Catalog metadata, execute SQL queries, and analyze data lineage including notebooks and jobs, empowering autonomous data discovery and query generation in Databricks.MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to perform read-only data hub queries including table listing, schema details, distinct values, and row-limited SELECT/aggregation, while rejecting free SQL.-