关于 lakelogic-mcp
lakelogic-mcp 是供 AI 助手使用的本地 MCP 服务,用于检查 Open Lakehouse Contracts(OLC)。它调用 LakeLogic 验证、治理检查、生成测试数据并运行契约,且仅在启动目录内操作,不触及平台或契约目标。
主要功能
- 01验证 OLC 契约语法
- 02检查治理问题并给出修复建议
- 03解释规则与契约写法
- 04导出 Open Data Contract Standard
- 05生成合成测试数据
- 06使用 Polars 或 DuckDB 本地运行契约
适用场景
- 01检查新编写的 OLC 契约是否合法
- 02发现契约治理问题并了解修复方式
- 03用故意违反规则的数据测试契约
- 04查看契约执行通过与隔离的行数
MCP 相关
作为本地 stdio MCP 服务,向 AI 客户端提供契约验证、lint、参考说明、数据生成和运行等工具。文件读写限制在启动时指定的项目目录内。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
7收录的工具列表 · 更新于 今天
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| path | any | 否 | |
| contract_yaml | any | 否 |
详细介绍
lakelogic-mcp
mcp-name: io.github.LakeLogic/lakelogic-mcp
一个本地 MCP 服务,让 AI 助手(Claude Code、Claude Desktop、Cursor 和任何 MCP 客户端)使用 LakeLogic 本身检查它们编写的 Open Lakehouse Contracts(OLC),而不是靠猜测。
- 通过 stdio 在你的计算机上运行。无需网络、账户,也不收集遥测数据。
- 绝不会接触任何平台。 两个工具在本地运行:
generate_test_data写入数据文件,run_contract使用 Polars 或 DuckDB 对其运行合约。不会向合约的目标位置写入任何内容。 - 只在启动时所在的项目文件夹内读写。
工具
| 工具 | 用途 |
|---|---|
validate_contract | 这是合法的 OLC 合约吗?列出每个错误的位置和问题 |
lint_contract | 这是一个好的合约吗?列出 lakelogic lint 检查出的治理问题,以及对应的修复方法 |
explain_rule | 为什么存在这条 lint 规则?它检查什么,为什么重要?提供一个不合格合约和一个修正后的合约 |
contract_reference | 合约的某个部分该如何编写?(anatomy、quality、materialization 等) |
export_odcs | 将合约导出为 Open Data Contract Standard 文档 |
generate_test_data | 根据合约生成模拟数据,其中一部分行会故意违反合约规则 |
run_contract | 有多少行通过检查,有多少行被隔离,以及原因(仅在本地使用 Polars 或 DuckDB) |
安装
Claude Code(插件):
/plugin marketplace add LakeLogic/lakelogic-mcp
/plugin install lakelogic-mcp@lakelogic-mcp
或直接运行:claude mcp add lakelogic -- uvx lakelogic-mcp
Cursor:添加到 Cursor
任何其他 MCP 客户端(VS Code、Claude Desktop 等):运行 uvx lakelogic-mcp,将其作为 stdio 服务。
它也已列入官方 MCP Registry,名称为
io.github.LakeLogic/lakelogic-mcp。
以上方式都需要在 PATH 中安装 uv。
在本地试用(开发检出)
cd C:\_Personal\_SaaS\lakelogic-mcp
uv venv .venv
uv pip install --python .venv\Scripts\python.exe "mcp>=1.2" pytest -e ..\open-lakehouse-contract -e ..\lakelogic
uv pip install --python .venv\Scripts\python.exe --no-deps -e .
.venv\Scripts\python.exe -m pytest
在 Claude Code 中注册
在你想检查其合约的项目中运行:
claude mcp add lakelogic -- C:\_Personal\_SaaS\lakelogic-mcp\.venv\Scripts\lakelogic-mcp.exe
然后可以提出以下请求:
- “检查此文件夹中的合约并修复发现的问题。”
- “为什么 silver_trips.yaml 中的 KEY-002 被标记了?”
- “为 orders 编写一份 silver 合约,并在给我看之前检查它。”
Claude Desktop / Cursor
在客户端的 MCP 设置中添加(claude_desktop_config.json 或 Cursor 的 mcp.json):
{
"mcpServers": {
"lakelogic": {
"command": "C:\\_Personal\\_SaaS\\lakelogic-mcp\\.venv\\Scripts\\lakelogic-mcp.exe",
"args": ["--root", "C:\\path\\to\\your\\contracts\\project"]
}
}
}
发布后
uvx lakelogic-mcp # Claude Code: claude mcp add lakelogic -- uvx lakelogic-mcp
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。