{
  "markdown": "# LakeXpress MCP Server\n\n<!-- mcp-name: io.github.arpe-io/lakexpress-mcp -->\n\n[![PyPI](https://img.shields.io/pypi/v/lakexpress-mcp)](https://pypi.org/project/lakexpress-mcp/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![MCP Registry](https://img.shields.io/badge/MCP-Registry-blue)](https://registry.modelcontextprotocol.io/?q=arpe-io)\n\nA [Model Context Protocol](https://modelcontextprotocol.io/) (MCP) server for [LakeXpress](https://aetperf.github.io/LakeXpress-Documentation/) — a database to Parquet export tool with sync management and data lake publishing.\n\n## Features\n\n- **14 subcommands** supported: logdb management, config management, sync execution, status, and cleanup\n- **5 source databases**: SQL Server, PostgreSQL, Oracle, MySQL, MariaDB\n- **6 log databases**: SQL Server, PostgreSQL, MySQL, MariaDB, SQLite, DuckDB\n- **6 storage backends**: Local, S3, S3-compatible, GCS, Azure ADLS Gen2, OneLake\n- **7 publish targets**: Snowflake, Databricks, Fabric, BigQuery, MotherDuck, Glue, DuckLake\n- Command preview before execution with safety confirmation\n- Auth file validation\n- Workflow suggestions based on use case\n\n## Installation\n\n```bash\npip install -e \".[dev]\"\n```\n\n## Claude Code Configuration\n\nAdd to your Claude Code MCP settings:\n\n```json\n{\n  \"mcpServers\": {\n    \"lakexpress\": {\n      \"command\": \"python\",\n      \"args\": [\"-m\", \"src.server\"],\n      \"cwd\": \"/path/to/lakexpress-mcp\",\n      \"env\": {\n        \"LAKEXPRESS_PATH\": \"/path/to/LakeXpress\",\n        \"LAKEXPRESS_TIMEOUT\": \"3600\",\n        \"LAKEXPRESS_LOG_DIR\": \"./logs\",\n        \"FASTBCP_DIR_PATH\": \"/path/to/FastBCP/\"\n      }\n    }\n  }\n}\n```\n\nOr using the installed entry point:\n\n```json\n{\n  \"mcpServers\": {\n    \"lakexpress\": {\n      \"command\": \"lakexpress-mcp\",\n      \"env\": {\n        \"LAKEXPRESS_PATH\": \"/path/to/LakeXpress\",\n        \"FASTBCP_DIR_PATH\": \"/path/to/FastBCP/\"\n      }\n    }\n  }\n}\n```\n\n## Tools\n\n### `preview_command`\nBuild and preview any LakeXpress CLI command without executing it. Supports all 14 subcommands with full parameter validation.\n\n### `execute_command`\nExecute a previously previewed command. Requires `confirmation: true` as a safety mechanism.\n\n### `validate_auth_file`\nValidate that an authentication file exists, is valid JSON, and optionally check for specific `auth_id` entries.\n\n### `list_capabilities`\nList all supported source databases, log databases, storage backends, publishing targets, compression types, and available commands.\n\n### `suggest_workflow`\nGiven a use case (source DB type, storage destination, optional publish target), suggest the full sequence of LakeXpress commands with example parameters.\n\n### `get_version`\nReport the detected LakeXpress binary version and capabilities.\n\n## Workflow Example\n\n```\n# 1. Initialize the log database (first-time setup)\nLakeXpress logdb init -a auth.json --log_db_auth_id export_db\n\n# 2. Create a sync configuration\nLakeXpress config create -a auth.json --log_db_auth_id export_db \\\n  --source_db_auth_id prod_db --source_schema_name sales \\\n  --output_dir ./exports --compression_type Zstd\n\n# 3. Execute the sync\nLakeXpress sync --sync_id <sync_id>\n\n# 4. Check status\nLakeXpress status -a auth.json --log_db_auth_id export_db --sync_id <sync_id>\n```\n\n## Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `LAKEXPRESS_PATH` | `./LakeXpress` | Path to the LakeXpress binary |\n| `LAKEXPRESS_TIMEOUT` | `3600` | Command execution timeout in seconds |\n| `LAKEXPRESS_LOG_DIR` | `./logs` | Directory for execution logs |\n| `FASTBCP_DIR_PATH` | _(empty)_ | Path to FastBCP binary directory (auto-fills `fastbcp_dir_path` parameter) |\n| `LOG_LEVEL` | `INFO` | Logging level (DEBUG, INFO, WARNING, ERROR) |\n\n## Development\n\n```bash\n# Install dev dependencies\npip install -e \".[dev]\"\n\n# Run tests\npython -m pytest tests/ -v\n\n# Run with coverage\npython -m pytest tests/ -v --cov=src --cov-report=term-missing\n```\n\n## License\n\nMIT\n",
  "bytes": 4008,
  "sha": "28f168ecb7f6d1bd3b117a5290d1ed18903c2e71208b6948ca79ef11128a3483",
  "repo_slug": "arpe-io/lakexpress-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_arpe_io_lakexpress_mcp_4a063567/readme"
}