项目简介

SurrealDB MCP Server 是一个实现了 Model Context Protocol (MCP) 的服务器,它充当 AI 助手与 SurrealDB 数据库之间的桥梁。通过这个服务器,AI 助手可以以标准化的方式安全地访问和操作 SurrealDB 数据库中的数据,从而扩展 AI 应用的功能。

主要功能点

  • 数据查询与操作: 提供多种工具,允许 AI 助手查询、创建、更新、删除和合并 SurrealDB 数据库中的数据。
  • SurrealQL 查询: 支持执行原生的 SurrealQL 查询语句,进行复杂的数据检索和操作。
  • 记录管理: 能够选择、创建、更新、删除和合并数据库记录,支持单个和批量操作。
  • 关系管理: 支持在不同记录之间创建关系(图数据库的边),用于构建和查询复杂的数据关联。
  • 标准化接口: 遵循 MCP 协议,确保与各种支持 MCP 协议的 AI 客户端兼容。

安装步骤

  1. 安装 Node.js: 确保你的系统中已安装 Node.js (版本 >= 18.0.0)。
  2. 全局安装: 打开终端或命令提示符,运行以下命令全局安装 'surrealdb-mcp-server':
    npm install -g surrealdb-mcp-server

服务器配置

MCP 服务器需要配置才能被 MCP 客户端(如 AI 助手)使用。以下是一些常见 MCP 客户端的配置示例。你需要在 MCP 客户端的设置中添加一个新的 MCP 服务器配置,并填入以下信息。

通用配置 (JSON 格式):

{
  "服务器名称": "surrealdb",
  "启动命令": "npx",
  "命令参数": [
    "-y",
    "surrealdb-mcp-server"
  ],
  "环境变量": {
    "SURREALDB_URL": "ws://localhost:8000",
    "SURREALDB_NS": "your_namespace",
    "SURREALDB_DB": "your_database",
    "SURREALDB_USER": "your_db_user",
    "SURREALDB_PASS": "your_db_password"
  }
}

配置参数说明:

  • '"服务器名称"': 为该服务器配置指定一个名称,例如 '"surrealdb"',在客户端中用于识别。
  • '"启动命令"': 指定启动 MCP 服务器的命令,通常为 '"npx"' 或 Node.js 的执行路径 '"node"'。 使用 '"npx"' 可以自动查找并执行全局安装的 'surrealdb-mcp-server' 包。 如果使用 '"node"',则 '"命令参数"' 中需要指定 'surrealdb-mcp-server' 入口文件 ('index.js') 的完整路径。
  • '"命令参数"': 启动命令的参数,对于 '"npx"',通常设置为 '["-y", "surrealdb-mcp-server"]'。 '"-y"' 参数用于在使用 'npx' 时自动确认安装。
  • '"环境变量"': 配置服务器连接 SurrealDB 数据库所需的凭据,包括:
    • '"SURREALDB_URL"': SurrealDB 数据库的 WebSocket 连接地址,例如 '"ws://localhost:8000"'。
    • '"SURREALDB_NS"': 要连接的 SurrealDB 命名空间 (Namespace)。
    • '"SURREALDB_DB"': 要连接的 SurrealDB 数据库名 (Database)。
    • '"SURREALDB_USER"': 连接 SurrealDB 的用户名。
    • '"SURREALDB_PASS"': 连接 SurrealDB 的密码。

不同客户端配置示例:

  • Cline (VS Code 扩展): Cline 客户端通常需要指定 'node.exe' 的完整路径和 'surrealdb-mcp-server' 入口文件的路径。请参考 README.md 中 Cline 安装部分的详细配置。
  • Claude (桌面应用): Claude 桌面应用可以使用 '"npx"' 命令简化配置,如上面的通用配置示例所示。
  • GitHub Copilot (VS Code): Copilot 可以在工作区配置文件 '.vscode/mcp.json' 中配置,并使用 '${input:...}' 变量安全地获取数据库凭据。请参考 README.md 中 Copilot 安装部分的详细配置。
  • Roo Code, Windsurf, Cursor: 这些客户端的配置方式与 Cline 或 Claude 类似,通常也支持 '"npx"' 或指定 'node' 路径的方式启动 MCP 服务器。请参考 README.md 中对应客户端的安装说明。

重要提示:

  • 确保根据你的 SurrealDB 数据库实际配置,修改 '"环境变量"' 中的连接信息。
  • 不同的 MCP 客户端配置文件的位置和格式可能有所不同,请参考对应客户端的文档或 README.md 中的安装指南进行配置。

基本使用方法

  1. 启动 MCP 服务器: 当 MCP 客户端连接到 SurrealDB MCP Server 时,服务器会自动启动。无需手动启动服务器。
  2. 在 AI 助手中使用: 在配置好 MCP 服务器后,你可以在支持 MCP 协议的 AI 助手中使用预定义的工具来操作 SurrealDB 数据库。例如,你可以指示 AI 助手执行 SurrealQL 查询、查询特定表的数据、创建新的记录等。
  3. 查看可用工具: 你可以让 AI 助手列出可用的 MCP 服务器和工具,确认 SurrealDB MCP Server 是否成功加载,以及可用的数据库操作工具。

示例对话 (与 AI 助手):

  • 用户: 列出可用的 MCP 服务器。
  • AI 助手: 已找到 MCP 服务器: surrealdb。
  • 用户: 列出 surrealdb 服务器的可用工具。
  • AI 助手: surrealdb 服务器可用工具: query, select, create, update, delete, merge, patch, upsert, insert, insertRelation。
  • 用户: 使用 surrealdb 的 query 工具查询 'SELECT * FROM user'。
  • AI 助手: (执行查询并返回结果)

通过以上步骤,你就可以使用 SurrealDB MCP Server 将 AI 助手连接到 SurrealDB 数据库,实现更智能的数据交互应用。

信息

分类

数据库与文件