基于 Go 语言开发的MCP 协议多数据库查询服务,已封装为 Docker 镜像,开箱即用,支持 MySQL + ClickHouse 双数据库查询,返回标准化 JSON 结果。
已发布至 DockerHub:fly32111/mcp-database-query-tools
docker run -d \
--name mcp-db \
-e MCP_MYSQL_HOST=你的MySQL地址 \
-e MCP_MYSQL_PORT=3306 \
-e MCP_MYSQL_USER=用户名 \
-e MCP_MYSQL_PASSWORD=密码 \
-e MCP_MYSQL_DBNAME=数据库名 \
-p 8080:8080 \
--restart always \
fly32111/mcp-database-query-tools:latest
docker run -d \
--name mcp-db \
-e MCP_CLICKHOUSE_HOST=你的CH地址 \
-e MCP_CLICKHOUSE_PORT=9000 \
-e MCP_CLICKHOUSE_PROTOCOL=native \
-e MCP_CLICKHOUSE_DATABASE=default \
-e MCP_CLICKHOUSE_USERNAME=default \
-e MCP_CLICKHOUSE_PASSWORD=密码 \
-p 8080:8080 \
--restart always \
fly32111/mcp-database-query-tools:latest
docker run -d \
--name mcp-db \
# MySQL 配置
-e MCP_MYSQL_HOST=MySQL地址 \
-e MCP_MYSQL_PORT=3306 \
-e MCP_MYSQL_USER=用户名 \
-e MCP_MYSQL_PASSWORD=密码 \
-e MCP_MYSQL_DBNAME=数据库名 \
# ClickHouse 配置
-e MCP_CLICKHOUSE_HOST=CH地址 \
-e MCP_CLICKHOUSE_PORT=9000 \
-e MCP_CLICKHOUSE_PROTOCOL=native \
-e MCP_CLICKHOUSE_DATABASE=default \
-e MCP_CLICKHOUSE_USERNAME=default \
-e MCP_CLICKHOUSE_PASSWORD=密码 \
# 端口
-p 8080:8080 \
--restart always \
fly32111/mcp-database-query-tools:latest
服务启动后,MCP 客户端连接地址:
http://你的服务器IP:8080/mcp
{
"method": "tools/call",
"params": {
"name": "query_mysql",
"arguments": {
"query": "SELECT * FROM users LIMIT 10"
}
}
}
{
"method": "tools/call",
"params": {
"name": "query_clickhouse",
"arguments": {
"query": "SELECT * FROM events WHERE date >= today() LIMIT 10"
}
}
}
{
"database_type": "MySQL",
"query": "SELECT * FROM users LIMIT 10",
"columns": ["id", "name", "email"],
"row_count": 10,
"rows": [
{"id": 1, "name": "张三", "email": "[email protected]"}
],
"executed_at": "2025-12-19 12:00:00"
}
| 变量 | 说明 | 必填 |
|---|---|---|
| MCP_MYSQL_HOST | 地址 | 是 |
| MCP_MYSQL_PORT | 端口 | 是 |
| MCP_MYSQL_USER | 用户名 | 是 |
| MCP_MYSQL_PASSWORD | 密码 | 否 |
| MCP_MYSQL_DBNAME | 数据库 | 是 |
| 变量 | 说明 | 必填 |
|---|---|---|
| MCP_CLICKHOUSE_HOST | 地址 | 是 |
| MCP_CLICKHOUSE_PORT | 9000(native)/8123(http) | 是 |
| MCP_CLICKHOUSE_PROTOCOL | native/http | 是 |
| MCP_CLICKHOUSE_DATABASE | 库名 | 是 |
| MCP_CLICKHOUSE_USERNAME | 用户名 | 是 |
# 查看日志
docker logs -f mcp-db
# 重启服务
docker restart mcp-db
# 停止服务
docker stop mcp-db && docker rm mcp-db
# 拉取最新镜像
docker pull fly32111/mcp-database-query-tools:latest
ClickHouse 连接报错 unexpected packet [72]
90008123连接超时
查询无结果
fly32111/mcp-database-query-tools8080,MCP 路径:/mcpContent type
Image
Digest
sha256:fd1689955…
Size
11.8 MB
Last updated
8 months ago
docker pull fly32111/mcp-database-query-tools