这是一个提供MySQL数据库压缩模式信息的模型上下文协议(MCP)服务器。 当模式转储文件不适合上下文大小时,此MCP服务器非常有用,特别是在使用大型数据库模式的情况下。
https://github.com/user-attachments/assets/0cecef84-cd70-4f84-95cb-01c6ec7c9ac7
list_tables)
dbName: 要检索信息的数据库名称(在设置DB_NAME环境变量时不需要)describe_tables)
dbName: 要检索信息的数据库名称(在设置DB_NAME环境变量时不需要)tableNames: 要检索详细信息的表名数组配置 mcp.json
{
"mcpServers": {
"mysql-schema-explorer-mcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "--pull", "always", "--network=host",
"-e", "DB_HOST=127.0.0.1",
"-e", "DB_PORT=3306",
"-e", "DB_USER=root",
"-e", "DB_PASSWORD=your_password",
"ghcr.io/shibayu36/mysql-schema-explorer-mcp:latest"
]
}
}
}
如果使用 Claude Code:
claude mcp add mysql-schema-explorer-mcp -- docker run -i --rm --pull always --network=host \
-e DB_HOST=127.0.0.1 \
-e DB_USER=root \
-e DB_PASSWORD=your_password \
-e DB_PORT=3306 \
ghcr.io/shibayu36/mysql-schema-explorer-mcp:latest
使用代理执行SQL生成
示例:使用ecshop数据库的结构,列出用户shibayu36最近订购的3种产品名称。
当仅访问一个数据库时,可以设置DB_NAME环境变量以避免每次指定数据库名称。
{
"mcpServers": {
"mysql-schema-explorer-mcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "--network=host",
"-e", "DB_HOST=127.0.0.1",
"-e", "DB_PORT=3306",
"-e", "DB_USER=root",
"-e", "DB_PASSWORD=your_password",
"-e", "DB_NAME=ecshop",
"ghcr.io/shibayu36/mysql-schema-explorer-mcp:latest"
]
}
}
}
如果你有一个Go开发环境,也可以直接安装并使用二进制文件。
安装命令
go install github.com/shibayu36/mysql-schema-explorer-mcp@latest
配置 mcp.json
{
"mcpServers": {
"mysql-schema-explorer-mcp": {
"command": "/path/to/mysql-schema-explorer-mcp",
"env": {
"DB_HOST": "127.0.0.1",
"DB_PORT": "3306",
"DB_USER": "root",
"DB_PASSWORD": "your_password"
}
}
}
}