lakelogic-mcp について
lakelogic-mcpは、Open Lakehouse Contracts(OLC)を扱うAIアシスタント向けのローカルMCPサーバーです。LakeLogicで契約の検証、lint、説明、テスト、実行を行い、アクセス範囲を起動したプロジェクト内に限定します。
主な機能
- 01OLC契約の構文検証
- 02ガバナンス上の問題と修正案
- 03ルールと契約構成の説明
- 04Open Data Contract Standardへの出力
- 05合成テストデータの生成
- 06PolarsまたはDuckDBでのローカル実行
活用シーン
- 01新規作成したOLC契約の妥当性確認
- 02ガバナンス上の問題と修正方法の把握
- 03意図的な違反データによる契約テスト
- 04合格行と隔離行の件数確認
MCP 対応
ローカルのstdio MCPサーバーとして動作し、検証、lint、リファレンス、データ生成、実行のツールをMCPクライアントに提供します。ファイルアクセスは起動したプロジェクトディレクトリ内に限定されます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
7掲載時のツール一覧 · 今日に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| path | any | いいえ | |
| contract_yaml | any | いいえ |
詳細
lakelogic-mcp
mcp-name: io.github.LakeLogic/lakelogic-mcp
AI アシスタント(Claude Code、Claude Desktop、Cursor、およびあらゆる MCP クライアント)が、推測に頼らず LakeLogic 自体を使って、作成した Open Lakehouse Contracts(OLC)をチェックできるローカル MCP サーバーです。
- お使いのマシン上で stdio 経由で動作します。ネットワーク接続、アカウント、テレメトリーは不要です。
- プラットフォームには一切アクセスしません。 ローカルで動作するツールは 2 つです。
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、…):stdio サーバーとして uvx lakelogic-mcp を実行します。
公式の 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
続いて、たとえば次のように依頼します:
- 「このフォルダー内のコントラクトを lint して、見つかった問題を修正してください。」
- 「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 サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。