该项目是一个基于Dameng数据库的MCP(微服务通信协议)服务,提供以下功能:
list_tables工具列出指定数据库中的所有表。execute_query工具执行只读SQL查询(仅支持)SELECT、SHOW、DESCRIBE和EXPLAIN语句。describe_table工具显示指定表的结构。在Windows下,可以直接下载dm mcp server的二进制文件并将其添加到PATH中。
go install github.com/wangzhaobo168/dm-mcp-server
{
"mcpServers": {
"db-mcp-server": {
"command": "dm-mcp-server",
"args": [
],
"env": {
"DM_PORT": "端口号,默认5236",
"DM_HOST": "主机地址",
"DM_USERNAME": "账号",
"DM_PASSWORD": "密码",
"DM_SCHEMA": "模式名"
}
}
}
dm-mmcp-server --version
github.com/mark3labs/mcp-go库。在项目根目录下运行以下命令以初始化Go Modules并下载依赖:
go mod init dm-mcp-server
go mod tidy
在运行服务之前,需要配置Dameng数据库的连接信息。可以通过以下方式设置:
go run main.go \
-username <用户名> \
-password <密码> \
-host <主机地址> \
-port <端口> \
-schema <模式名>
dm-mcp-server/
├── main.go # 主程序入口
├── tools/ # 工具实现
│ ├── list_tables.go # 列出表工具
│ ├── execute_query.go # 执行查询工具
│ └── describe_table.go # 显示表结构工具
├── utils/ # 工具函数
│ ├── config.go # 配置管理
│ └── db.go # 数据库连接
├── go.mod # Go Modules 文件
└── README.md # 项目文档
欢迎提交Issue和Pull Requests来改进此项目。请确保代码风格一致并通过测试。
本项目采用MIT许可证。
github.com/mark3labs/mcp-go库不可用,请替换为另一个兼容的MCP实现。tools包中添加新的工具。