io.github.arpe-io/lakexpress-mcp

Official registry Data and databases

MCP server for LakeXpress — automated database-to-cloud data pipeline as Parquet

What can you do with io.github.arpe-io/lakexpress-mcp?

  • 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

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

PYPI package lakexpress-mcp
Claude Code
claude mcp add lakexpress-mcp -e 'LAKEXPRESS_PATH=<LAKEXPRESS_PATH>' -e 'LAKEXPRESS_TIMEOUT=<LAKEXPRESS_TIMEOUT>' -e 'LAKEXPRESS_LOG_DIR=<LAKEXPRESS_LOG_DIR>' -e 'FASTBCP_DIR_PATH=<FASTBCP_DIR_PATH>' -e 'LOG_LEVEL=<LOG_LEVEL>' -- uvx lakexpress-mcp==0.1.6
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "lakexpress-mcp": {
            "command": "uvx",
            "args": [
                "lakexpress-mcp==0.1.6"
            ],
            "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>"
            }
        }
    }
}

Environment variables

  • LAKEXPRESS_PATH Path to the LakeXpress binary (optional — server runs in preview-only mode without it)
  • LAKEXPRESS_TIMEOUT Execution timeout in seconds (default: 3600)
  • LAKEXPRESS_LOG_DIR Directory for execution logs (default: ./logs)
  • FASTBCP_DIR_PATH Path to FastBCP binary directory (auto-fills fastbcp_dir_path parameter)
  • LOG_LEVEL Logging level: DEBUG, INFO, WARNING, ERROR (default: INFO)

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. LakeXpress MCP Server
  2. Features
  3. Installation
  4. Claude Code Configuration
  5. Tools
  6. Workflow Example
  7. Environment Variables
  8. Development
  9. License

LakeXpress MCP Server

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

Frequently asked questions

What is io.github.arpe-io/lakexpress-mcp?

MCP server for LakeXpress — automated database-to-cloud data pipeline as Parquet

How do I install io.github.arpe-io/lakexpress-mcp?

It runs on your machine. In Claude Code: claude mcp add lakexpress-mcp -e 'LAKEXPRESS_PATH=<LAKEXPRESS_PATH>' -e 'LAKEXPRESS_TIMEOUT=<LAKEXPRESS_TIMEOUT>' -e 'LAKEXPRESS_LOG_DIR=<LAKEXPRESS_LOG_DIR>' -e 'FASTBCP_DIR_PATH=<FASTBCP_DIR_PATH>' -e 'LOG_LEVEL=<LOG_LEVEL>' -- uvx lakexpress-mcp==0.1.6. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.arpe-io/lakexpress-mcp need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.arpe-io/lakexpress-mcp open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.arpe-io/lakexpress-mcp?

It is published by arpe-io. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.