MCP を使用して AI ツールを TiDB Cloud Lake に接続する
TiDB Cloud Lake MCP サーバー は、Model Context Protocol (MCP) を通じて AI アシスタントを TiDB Cloud Lake に接続します。MCP 対応ツールを使用すると、自然言語の指示でデータベースオブジェクトの探索、テーブルスキーマの確認、SQL の実行ができます。
前提条件
開始する前に、以下を用意してください。
- Python 3.12 以降
uvがインストールされていること- MCP 対応の AI ツール
- TiDB Cloud Lake のアカウント、データベース、および Warehouse
接続文字列を取得する
TiDB Cloud Lake の Warehouse からホスト、ユーザー名、パスワード、データベース、および Warehouse 名を取得します。詳細は、Warehouse に接続する を参照してください。
次の形式で DSN を作成します。
lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>
MCP クライアントを設定する
以下の設定では、uv を使用して最新の tidbcloudlake-mcp パッケージを実行します。各例ではセーフモードを明示的に有効にしています。
codex mcp add lake-mcp \
--env LAKE_DSN='lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>' \
--env LAKE_MCP_SAFE_MODE=true \
-- uv tool run --from tidbcloudlake-mcp@latest lake-mcp
claude mcp add lake-mcp \
--env LAKE_DSN='lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>' \
--env LAKE_MCP_SAFE_MODE=true \
-- uv tool run --from tidbcloudlake-mcp@latest lake-mcp
次のサーバーを Cursor の MCP 設定に追加します。
{
"mcpServers": {
"lake-mcp": {
"command": "uv",
"args": ["tool", "run", "--from", "tidbcloudlake-mcp@latest", "lake-mcp"],
"env": {
"LAKE_DSN": "lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>",
"LAKE_MCP_SAFE_MODE": "true"
}
}
}
}
次のサーバーを、Gemini CLI の settings.json ファイル内の mcpServers オブジェクトに追加します。
{
"mcpServers": {
"lake-mcp": {
"command": "uv",
"args": ["tool", "run", "--from", "tidbcloudlake-mcp@latest", "lake-mcp"],
"env": {
"LAKE_DSN": "lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>",
"LAKE_MCP_SAFE_MODE": "true"
}
}
}
}
標準の JSON 設定を受け付ける MCP クライアントでは、次のサーバーを追加します。
{
"mcpServers": {
"lake-mcp": {
"command": "uv",
"args": ["tool", "run", "--from", "tidbcloudlake-mcp@latest", "lake-mcp"],
"env": {
"LAKE_DSN": "lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>",
"LAKE_MCP_SAFE_MODE": "true"
}
}
}
}
MCP 設定を保存した後、AI ツールを再起動します。その後、データベースの一覧表示、テーブルの確認、またはクエリの実行をツールに依頼できます。
セッションサンドボックス保護
LAKE_MCP_SAFE_MODE は、サーバーが書き込み操作をセッション固有のサンドボックスに対して検証するかどうかを制御します。
MCP ツール get_session_sandbox_prefix は、現在のセッションのプレフィックスを返します。
サーバーのトランスポート、設定変数、および利用可能な MCP ツールについては、TiDB Cloud Lake MCP サーバー を参照してください。