The TiDB MCP Server enables executing SQL queries against a TiDB database instance via the Model Context Protocol (MCP).
Execute SQL Queries: Run SELECT statements by default on a TiDB database
Additional Operations: Optionally perform INSERT, UPDATE, and DELETE operations when configured
Secure Configuration: Configure connections securely using environment variables
Lightweight: Simple installation and configuration process, supporting npx or global npm installation
Runs as a Node.js application, requiring Node.js 16+ to function.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TiDB MCP Servershow me the top 10 customers by total purchase amount"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TiDB MCP Server
A Model Context Protocol (MCP) server for TiDB that allows executing SELECT queries through MCP tools.
Features
Execute SELECT queries on TiDB
Secure connection via environment variables
Lightweight and easy to use
Related MCP server: SQLite MCP Server
Prerequisites
Node.js 16+
TiDB instance
Installation
Installing via Smithery
To install TiDB Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @l1806858547/tidb-server --client claudeVia npx
npx tidb-mcp-serverGlobal installation
npm install -g tidb-mcp-server
tidb-mcp-serverConfiguration
Set these environment variables before running:
export TIDB_HOST="your_tidb_host"
export TIDB_PORT="your_tidb_port"
export TIDB_USER="your_username"
export TIDB_PASS="your_password"
export TIDB_DB="your_database"
# Optional operation permissions (default: false)
export ALLOW_INSERT_OPERATION="false" # Set to "true" to allow INSERT operations
export ALLOW_UPDATE_OPERATION="false" # Set to "true" to allow UPDATE operations
export ALLOW_DELETE_OPERATION="false" # Set to "true" to allow DELETE operations
WARNING: Enabling these operations may expose your database to modification risks.
Only enable what you need and ensure proper access controls are in place.Usage
Start the server:
tidb-serverAdd to MCP configuration (cline_mcp_settings.json):
{
"mcpServers": {
"tidb-server": {
"command": "npx",
"args": ["-y", "tidb-mcp-server"], # Also adding the -y flag for consistency
"env": {
"TIDB_HOST": "your_tidb_host",
"TIDB_PORT": "your_tidb_port",
"TIDB_USER": "your_username",
"TIDB_PASS": "your_password",
"TIDB_DB": "your_database"
}
}
}
}Use the MCP tool:
const result = await use_mcp_tool({
server_name: 'tidb-server',
tool_name: 'tidb_query',
arguments: {
sql: 'SELECT * FROM your_table LIMIT 10'
}
});Development
Clone the repo:
git clone https://github.com/l1806858547/tidb-server.git
cd tidb-serverInstall dependencies:
npm installBuild:
npm run buildRun:
node build/index.jsLicense
MIT