mcpField
D
Database Mcp

Database Mcp

本地服务
github.com/xavieryang007数据库478 周前更新

关于 Database Mcp

Database MCP 是通过 GORM 连接数据库的 Go 服务,支持 MySQL、PostgreSQL、SQLite、SQL Server 和 ClickHouse,并可从 YAML、命令行参数或环境变量读取配置。

主要功能

  1. 01连接五种数据库
  2. 02通过 YAML、命令行或环境变量配置
  3. 03列出数据库表
  4. 04查看表和列的详细信息
  5. 05执行 SQL 查询

适用场景

  1. 01通过 MCP 客户端查看表和列
  2. 02执行 SQL 并获取结果或受影响行数

MCP 相关

该 MCP 服务向客户端提供 `get_tables`、`get_table_detail` 和 `execute_sql` 工具。客户端可连接配置的 MCP 端点,例如文档中的本地 SSE 地址。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

数据库 MCP 服务

一个具备数据库功能的 MCP(Metoro Control Protocol)服务,通过 GORM 支持多种数据库类型。

功能

  • 支持多种数据库类型:
    • MySQL
    • PostgreSQL
    • SQLite
    • SQL Server
    • ClickHouse
  • 支持通过以下方式进行配置:
    • 配置文件(YAML)
    • 命令行参数
    • 环境变量
  • MCP 协议集成
  • 支持 GORM ORM

安装

  1. 克隆仓库
  2. 安装依赖项:
    go mod tidy
    

配置

配置文件(config.yaml)

创建一个 config.yaml 文件,内容结构如下:

database:
  type: "mysql"  # mysql, postgres, sqlite, sqlserver, clickhouse
  host: "localhost"
  port: 3306
  username: "root"
  password: "password"
  database: "mydb"
  ssl_mode: "disable"  # for postgres
  file: "database.db"  # for sqlite
命令行参数

你可以使用命令行参数覆盖配置文件设置:

./database-mcp --config=config.yaml \
  --db-type=mysql \
  --db-host=localhost \
  --db-port=3306 \
  --db-user=root \
  --db-pass=password \
  --db-name=mydb \
  --db-ssl-mode=disable \
  --db-file=database.db

可用的命令行参数:

  • --config:配置文件路径(默认值:"config.yaml")
  • --db-type:数据库类型(mysql、postgres、sqlite、sqlserver、clickhouse)
  • --db-host:数据库主机
  • --db-port:数据库端口
  • --db-user:数据库用户名
  • --db-pass:数据库密码
  • --db-name:数据库名称
  • --db-ssl-mode:SSL 模式(适用于 PostgreSQL)
  • --db-file:数据库文件(适用于 SQLite)

使用方法

  1. 启动服务:

    ./database-mcp --db-type=mysql --db-host=127.0.0.1 --db-port=3306 --db-user=dbuser --db-pass=passwd --db-name=dbname --db-ssl-mode=disable --mode=http
    
  2. 服务将:

    • 从文件和/或命令行加载配置
    • 初始化数据库连接
    • 启动 MCP 服务
    • 注册可用的工具和资源

MCP 配置

若要使用 MCP 服务,请在 MCP 客户端中配置 MCP 端点:

http://127.0.0.1:8080/sse

这样即可将 MCP 客户端连接到运行在本地 8080 端口上的服务。

MCP 工具

该服务提供以下 MCP 工具:

  1. get_tables:获取数据库中的所有表
    • 返回包含表名和注释的表列表
  2. get_table_detail:获取指定表的详细信息
    • 参数:
      • table_name:要获取详细信息的表名
    • 返回的表信息包括:
      • 表名和注释
      • 列信息(名称、类型、注释、是否可为空、默认值)
  3. execute_sql:执行 SQL 查询
    • 参数:
      • query:要执行的 SQL 查询
    • 返回:
      • 对于 SELECT 查询:结果数组
      • 对于其他查询:受影响的行数

许可证

MIT 许可证

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。