- Home
- MCP servers
- Bauplan
Bauplan
- python
5
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
The Bauplan MCP Server lets AI assistants interact with your Bauplan lakehouse by running queries, inspecting schemas, managing data branches, and orchestrating pipelines through a simple, open interface. It enables local development workflows where your assistant can help you explore and operate your data lakehouse efficiently.
How to use
You connect an MCP client (for example Claude Code, Claude Desktop, or Cursor) to the MCP server, then start asking questions about your data lakehouse. The server exposes actions for data exploration, schema inspection, branch and namespace management, table operations, pipeline actions, and general project-oriented tasks. Start a session with a clear prompt that guides the client on how to best leverage the server’s capabilities. Begin your interactions by using your client to query tables, inspect schemas, create or merge branches, and run data-related operations.
How to install
Prerequisites you need on your machine before installing the MCP server are a Python runtime and a way to run network services (such as uv or a Python virtual environment). You will also need an API key for Bauplan if you plan to access data lakehouse resources during development.
Option 1: Quick start using a Python virtual environment and editable install. This sets up a local development instance you can run and test right away.
python -m venv venv
source venv/bin/activate
pip install -e .
Available tools
list_tables
List all tables in a given branch or namespace.
get_schema
Retrieve the schema for all tables in a branch or namespace.
get_table
Get the schema for a specific table to inspect its structure.
run_query
Execute SELECT queries against tables to fetch data.
run_query_to_csv
Run a query and export results to a CSV file.
get_branches
List branches with optional filters to explore versions.
get_commits
Show commit history for branches.
create_branch
Create a new branch from a reference.
has_branch
Check if a specific branch exists.
merge_branch
Merge branches with a commit message.
delete_branch
Delete a branch with safety checks.
get_namespaces
List available namespaces within a branch.
create_namespace
Create a new namespace in a branch.
has_namespace
Verify if a namespace exists in a branch.
delete_namespace
Remove a namespace from a branch.
get_tags
List tags with optional filters.
create_tag
Create a new tag from a reference.
has_tag
Check if a tag exists.
delete_tag
Delete a tag.
create_table
Create a table from an S3 location using schema detection.
plan_table_creation
Generate a YAML import plan for a table from S3.
apply_table_creation_plan
Apply a table creation plan to resolve schema conflicts.
has_table
Check if a table exists in a given branch.
delete_table
Delete a table from a branch.
import_data
Import data into an existing table from S3.
revert_table
Revert a table from a source to a target branch.
project_run
Run a Bauplan project from a directory and reference.
code_run
Run a Bauplan project from code provided as a dictionary.
list_jobs
List jobs with optional filters.
get_job
Get detailed information about a specific job.
cancel_job
Cancel a running job and check status.
get_user_info
Get information about the current authenticated user.
get_instructions
Get detailed instructions for specific Bauplan use cases.