← 返回目录
M

MCP Database Server

社区
为 Claude 提供 SQLite、SQL Server、PostgreSQL 和 MySQL 数据库访问能力的 MCP 服务器
分类
数据库 第 25 / 58
Stars
★ 386 热门
传输方式
stdio(本地进程)
运行环境
Node.js 18+
凭据
可选 API Key
许可证
MIT
最近提交
⚠
工具数
10
57FMRS · C

该服务器提供了丰富的数据库操作工具,覆盖多个数据库类型,配置灵活。但需要用户谨慎处理写操作和凭据安全。

最强项 · 文档质量 15/20 最弱项 · 安全与权限 8/20

可靠性
10/20
安全与权限
8/20
维护活跃度
12/20
文档质量
15/20
安装易用性
12/20
查看各项评分依据
可靠性 10/20
根据README,服务器支持多种数据库并提供了明确的启动参数。但仓库内未发现任何测试或CI配置文件(如GitHub Actions),也没有证据表明初始化握手和工具列表已实际验证。因此,happy path看似合理,但缺乏可验证的执行证据,故得分不超过12。
安全与权限 8/20
服务器支持通过命令行参数传递数据库凭据,但README中的示例使用了占位符。未发现硬编码的密钥或秘密。存在危险操作(如drop_table),但README要求确认标志,这可能提供一定保护。不过,没有实现更细粒度的权限控制或数据流披露,且可能允许任意SQL执行,因此有可见风险,但未达到红旗级别。
维护活跃度 12/20
仓库活跃,有379 stars和23个未关闭问题,且未归档。但缺少关于发版频率、问题响应时间和依赖更新策略的详细信息。许可证为MIT,但未提供安全响应渠道。因此,维护似乎活跃但治理和版本控制存在差距。
文档质量 15/20
README提供了详细的安装、配置和工具列表,包括多种数据库的设置示例和Claude Desktop配置示例。还有额外的文档链接(如SQL Server设置指南)。但缺少故障排除部分和限制说明,可能存在隐藏假设。
安装易用性 12/20
提供清晰的安装步骤(克隆、npm install、npm run build)以及直接使用npm包的选项。提供了Claude Desktop的配置示例,覆盖了多种数据库。由于未实际执行,不能验证构建和启动是否顺利,但步骤明确,可重复性较高。

静态评测 · 未实际运行收录于 2026-08-07

查看 FMRS 评分方法 →

选型与风险

能访问什么连接数据库

适合谁

  • 需要与多个数据库类型交互的开发者
  • 希望使用自然语言操作数据库的 Claude 用户
  • 需要快速导出数据或记录洞察的场景

不适合谁

  • 需要复杂事务处理或精细权限控制的场景
  • 生产环境中的高并发数据库访问
  • 非关系型数据库(如 MongoDB)

所需权限

  • 需要数据库凭据(用户名、密码)
  • 可能需要网络访问权限以连接远程数据库
  • 需要文件系统访问权限(对于 SQLite 文件)

风险与副作用

  • 写操作可能导致数据丢失或损坏,需谨慎使用
  • 凭据可能被记录在配置文件中,需妥善管理
  • 开放网络端口可能带来安全风险

安装接入

准备工作

运行环境:Node.js 18+

AWS_ACCESS_KEY_ID 可选密钥 AWS 访问密钥 ID,用于 AWS IAM 认证时提供凭证,可在 AWS IAM 控制台创建。
AWS_SECRET_ACCESS_KEY 可选密钥 AWS 秘密访问密钥,与 AWS_ACCESS_KEY_ID 配对使用,属于敏感凭证。
其他可选配置项(1 个)
AWS_PROFILE 可选 AWS CLI 默认配置档案名,用于 AWS IAM 认证的 RDS MySQL 连接,通过 aws configure 设置。
  1. 全局安装 npm 包:npm install -g @executeautomation/database-server
  2. 在 Claude Desktop 配置文件中添加相应的 MCP 服务器配置,使用 npx 命令启动。
claude_desktop_config.json
{
  "mcpServers": {
    "sqlite": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "/path/to/your/database.db"
      ]
    },
    "sqlserver": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--sqlserver",
        "--server",
        "your-server-name",
        "--database",
        "your-database-name",
        "--user",
        "your-username",
        "--password",
        "your-password"
      ]
    },
    "postgresql": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--postgresql",
        "--host",
        "your-host-name",
        "--database",
        "your-database-name",
        "--user",
        "your-username",
        "--password",
        "your-password"
      ]
    },
    "mysql": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--mysql",
        "--host",
        "your-host-name",
        "--database",
        "your-database-name",
        "--port",
        "3306",
        "--user",
        "your-username",
        "--password",
        "your-password"
      ]
    },
    "mysql-aws": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--mysql",
        "--aws-iam-auth",
        "--host",
        "your-rds-endpoint.region.rds.amazonaws.com",
        "--database",
        "your-database-name",
        "--user",
        "your-aws-username",
        "--aws-region",
        "us-east-1"
      ]
    }
  }
}

以 Claude Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "sqlite": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "/path/to/your/database.db"
      ]
    },
    "sqlserver": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--sqlserver",
        "--server",
        "your-server-name",
        "--database",
        "your-database-name",
        "--user",
        "your-username",
        "--password",
        "your-password"
      ]
    },
    "postgresql": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--postgresql",
        "--host",
        "your-host-name",
        "--database",
        "your-database-name",
        "--user",
        "your-username",
        "--password",
        "your-password"
      ]
    },
    "mysql": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--mysql",
        "--host",
        "your-host-name",
        "--database",
        "your-database-name",
        "--port",
        "3306",
        "--user",
        "your-username",
        "--password",
        "your-password"
      ]
    },
    "mysql-aws": {
      "command": "npx",
      "args": [
        "-y",
        "@executeautomation/database-server",
        "--mysql",
        "--aws-iam-auth",
        "--host",
        "your-rds-endpoint.region.rds.amazonaws.com",
        "--database",
        "your-database-name",
        "--user",
        "your-aws-username",
        "--aws-region",
        "us-east-1"
      ]
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add sqlite -- npx -y @executeautomation/database-server /path/to/your/database.db
claude mcp add sqlserver -- npx -y @executeautomation/database-server --sqlserver --server your-server-name --database your-database-name --user your-username --password your-password
claude mcp add postgresql -- npx -y @executeautomation/database-server --postgresql --host your-host-name --database your-database-name --user your-username --password your-password
claude mcp add mysql -- npx -y @executeautomation/database-server --mysql --host your-host-name --database your-database-name --port 3306 --user your-username --password your-password
claude mcp add mysql-aws -- npx -y @executeautomation/database-server --mysql --aws-iam-auth --host your-rds-endpoint.region.rds.amazonaws.com --database your-database-name --user your-aws-username --aws-region us-east-1

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

在客户端工具列表中确认出现 read_query、list_tables 等工具,然后让 AI 执行 list_tables;若能返回表清单,说明数据库连接成功。

常见排障

  1. 检查 Node.js 版本是否 >= 18
  2. 确保数据库连接参数(主机、端口、数据库名)正确
  3. 对于 SQL Server,确保服务器版本 >= 2012;对于 PostgreSQL,确保版本 >= 9.5
  4. 检查防火墙或网络设置,确保能够访问数据库端口
  5. 查看日志以获取更详细的错误信息

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 列出数据库中的所有表
  • 查询 employees 表的前 10 行数据
  • 把这张表的结构描述一下
  • 把最近的 SELECT 查询结果导出为 CSV

工具能力 10

read_query 只读
执行 SELECT 查询以读取数据
write_query 写入
执行 INSERT、UPDATE 或 DELETE 查询
create_table 写入
在数据库中创建新表
alter_table 写入
修改现有表结构
drop_table 破坏性
从数据库中删除表
list_tables 只读
获取所有表的列表
describe_table 只读
查看表的模式信息
export_query 只读
将查询结果导出为 CSV 或 JSON
展开其余 2 个工具
append_insight 写入
向备忘录添加业务洞察
list_insights 只读
列出所有业务洞察

使用场景

在本地或远程 SQLite 数据库中通过自然语言查询数据
对 SQL Server、PostgreSQL 或 MySQL 数据库执行写操作
创建和修改表结构
从数据库导出数据为 CSV 或 JSON 格式
记录和检索业务洞察

支持客户端

Claude Desktop

依据项目文档列出,未经本站实测。

详细介绍

MCP Database Server 是一个 Model Context Protocol (MCP) 服务器,使 Claude 能够通过一组工具与多种关系型数据库进行交互。它支持 SQLite、SQL Server、PostgreSQL 和 MySQL。该服务器提供了执行查询、管理表结构、导出数据以及记录业务洞察的能力。

同类可选方案

源版本 d6afa4be08eb 数据同步于 2026-10-19 查看 FMRS 评分方法