TiDB Cloud Lake MCP Server
TiDB Cloud Lake MCP server 向支持 Model Context Protocol (MCP) 的客户端暴露 TiDB Cloud Lake 操作。tidbcloudlake-mcp 包支持标准输入/输出、HTTP 和 server-sent events (SSE) 传输方式。
前提条件
开始之前,请确保你具备以下条件:
Python 3.12 或更高版本
一个 TiDB Cloud Lake 账户、数据库和计算集群 (Warehouse)
一个符合以下格式的 TiDB Cloud Lake DSN:
lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>
有关如何获取连接信息,请参见连接到计算集群。
安装 MCP server
创建并激活虚拟环境:
python3.12 -m venv .venv
source .venv/bin/activate
从 PyPI 安装 server:
python -m pip install tidbcloudlake-mcp
运行 MCP server
设置 TiDB Cloud Lake DSN:
export LAKE_DSN='lake://<username>:<password>@<host>:443/<database>?warehouse=<warehouse>'
使用默认的 stdio 传输方式运行 server:
lake-mcp
你也可以在不将该包安装到当前激活环境中的情况下运行它:
uv tool run --from tidbcloudlake-mcp@latest lake-mcp
配置传输方式
将 LAKE_MCP_SERVER_TRANSPORT 设置为以下值之一:
例如,要在默认的 loopback 地址和端口上运行一个 HTTP server:
export LAKE_MCP_SERVER_TRANSPORT=http
export LAKE_MCP_BIND_HOST=127.0.0.1
export LAKE_MCP_BIND_PORT=8001
lake-mcp
配置
可用工具
安全模式
默认启用安全模式。在安全模式下:
SELECT、SHOW、DESCRIBE、EXPLAIN和LIST等读操作可以访问已配置 TiDB Cloud Lake 用户被允许访问的对象。- 写操作仅限于名称以当前
mcp_sandbox_{session_id}_*前缀开头的对象。 - 数据操作语句只能修改沙箱表。
- 权限变更只能针对沙箱对象和 principals。
仅当 MCP 客户端可信,且已配置 TiDB Cloud Lake 用户具有所需的最小权限时,才将 LAKE_MCP_SAFE_MODE=false。
有关特定客户端的配置示例,请参见使用 MCP 将 AI 工具连接到 TiDB Cloud Lake。