mcpField
L
lakexpress-mcp

lakexpress-mcp

Local
github.com/arpe-ioDatabases1Updated 32w ago

About lakexpress-mcp

lakexpress-mcp exposes LakeXpress database-to-Parquet export, sync management, and data lake publishing to MCP clients. It is for teams building data export workflows and includes command previews and workflow suggestions across supported databases, storage backends, and publish targets.

Key features

  1. 01Preview and validate 14 subcommands
  2. 02Support five source databases
  3. 03Support six storage backends
  4. 04Support seven publish targets
  5. 05Validate authentication files
  6. 06Suggest command workflows by use case

Use cases

  1. 01Export database data as Parquet
  2. 02Configure sync and publish to a data lake target
  3. 03Check an authentication file for a specified auth_id

MCP support

The MCP server provides clients with tools to preview and execute confirmed LakeXpress commands, validate authentication files, list capabilities, suggest workflows, and inspect the version.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"arpe-io-lakexpress": {
"command": "uvx",
"args": [
"lakexpress-mcp"
],
"env": {
"LAKEXPRESS_PATH": "<LAKEXPRESS_PATH>",
"LAKEXPRESS_TIMEOUT": "<LAKEXPRESS_TIMEOUT>",
"LAKEXPRESS_LOG_DIR": "<LAKEXPRESS_LOG_DIR>",
"FASTBCP_DIR_PATH": "<FASTBCP_DIR_PATH>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
Run commanduvx lakexpress-mcp
Environment variables to set
LAKEXPRESS_PATHPath to the LakeXpress binary (optional — server runs in preview-only mode without it)
LAKEXPRESS_TIMEOUTExecution timeout in seconds (default: 3600)
LAKEXPRESS_LOG_DIRDirectory for execution logs (default: ./logs)
FASTBCP_DIR_PATHPath to FastBCP binary directory (auto-fills fastbcp_dir_path parameter)
LOG_LEVELLogging level: DEBUG, INFO, WARNING, ERROR (default: INFO)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypilakexpress-mcp0.1.6

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

LakeXpress MCP Server

PyPI License: MIT MCP Registry

A Model Context Protocol (MCP) server for LakeXpress — a database to Parquet export tool with sync management and data lake publishing.

Features

  • 14 subcommands supported: logdb management, config management, sync execution, status, and cleanup
  • 5 source databases: SQL Server, PostgreSQL, Oracle, MySQL, MariaDB
  • 6 log databases: SQL Server, PostgreSQL, MySQL, MariaDB, SQLite, DuckDB
  • 6 storage backends: Local, S3, S3-compatible, GCS, Azure ADLS Gen2, OneLake
  • 7 publish targets: Snowflake, Databricks, Fabric, BigQuery, MotherDuck, Glue, DuckLake
  • Command preview before execution with safety confirmation
  • Auth file validation
  • Workflow suggestions based on use case

Installation

pip install -e ".[dev]"

Claude Code Configuration

Add to your Claude Code MCP settings:

{
  "mcpServers": {
    "lakexpress": {
      "command": "python",
      "args": ["-m", "src.server"],
      "cwd": "/path/to/lakexpress-mcp",
      "env": {
        "LAKEXPRESS_PATH": "/path/to/LakeXpress",
        "LAKEXPRESS_TIMEOUT": "3600",
        "LAKEXPRESS_LOG_DIR": "./logs",
        "FASTBCP_DIR_PATH": "/path/to/FastBCP/"
      }
    }
  }
}

Or using the installed entry point:

{
  "mcpServers": {
    "lakexpress": {
      "command": "lakexpress-mcp",
      "env": {
        "LAKEXPRESS_PATH": "/path/to/LakeXpress",
        "FASTBCP_DIR_PATH": "/path/to/FastBCP/"
      }
    }
  }
}

Tools

preview_command

Build and preview any LakeXpress CLI command without executing it. Supports all 14 subcommands with full parameter validation.

execute_command

Execute a previously previewed command. Requires confirmation: true as a safety mechanism.

validate_auth_file

Validate that an authentication file exists, is valid JSON, and optionally check for specific auth_id entries.

list_capabilities

List all supported source databases, log databases, storage backends, publishing targets, compression types, and available commands.

suggest_workflow

Given a use case (source DB type, storage destination, optional publish target), suggest the full sequence of LakeXpress commands with example parameters.

get_version

Report the detected LakeXpress binary version and capabilities.

Workflow Example

# 1. Initialize the log database (first-time setup)
LakeXpress logdb init -a auth.json --log_db_auth_id export_db

# 2. Create a sync configuration
LakeXpress config create -a auth.json --log_db_auth_id export_db \
  --source_db_auth_id prod_db --source_schema_name sales \
  --output_dir ./exports --compression_type Zstd

# 3. Execute the sync
LakeXpress sync --sync_id <sync_id>

# 4. Check status
LakeXpress status -a auth.json --log_db_auth_id export_db --sync_id <sync_id>

Environment Variables

VariableDefaultDescription
LAKEXPRESS_PATH./LakeXpressPath to the LakeXpress binary
LAKEXPRESS_TIMEOUT3600Command execution timeout in seconds
LAKEXPRESS_LOG_DIR./logsDirectory for execution logs
FASTBCP_DIR_PATH(empty)Path to FastBCP binary directory (auto-fills fastbcp_dir_path parameter)
LOG_LEVELINFOLogging level (DEBUG, INFO, WARNING, ERROR)

Development

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
python -m pytest tests/ -v

# Run with coverage
python -m pytest tests/ -v --cov=src --cov-report=term-missing

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.