Redis MCP Server 使用说明

项目简介

Redis MCP Server 是一个实现了 Model Context Protocol (MCP) 的服务器,它允许大型语言模型 (LLM) 客户端通过预定义的工具与 Redis 数据库进行交互。该服务器将 Redis 的常用操作封装成 MCP 工具,使得 LLM 能够安全、可控地访问和操作 Redis 数据,从而扩展 LLM 的上下文理解和数据处理能力。

主要功能点

  • Redis 数据访问工具: 提供多种工具,涵盖 Redis 常见的 String, Hash, Set, Sorted Set 和 Key 命令操作,例如:
    • 字符串操作:设置 (set)、获取 (get)
    • 哈希操作:设置多个字段 (hmset)、获取字段值 (hget)、获取所有字段和值 (hgetall)
    • 集合操作:添加成员 (sadd)、获取所有成员 (smembers)
    • 有序集合操作:添加成员 (zadd)、按索引范围获取成员 (zrange)、按分数范围获取成员 (zrangebyscore)、移除成员 (zrem)
    • 键操作:删除键 (del)、扫描键 (scan)
  • 基于 MCP 协议: 遵循 Model Context Protocol,易于与支持 MCP 协议的 LLM 客户端集成,实现标准化的上下文服务。
  • 可扩展的工具集: 项目结构清晰,易于扩展和添加新的 Redis 工具,满足不同的数据操作需求。
  • 灵活的配置: 支持通过命令行参数配置 Redis 服务器的连接信息(主机和端口)。

安装步骤

  1. 克隆仓库
    git clone https://github.com/farhankaz/redis-mcp.git
    cd redis-mcp
  2. 安装依赖: 确保你已经安装了 Node.js 和 npm。在项目根目录下运行:
    npm install
  3. 构建项目
    npm run build

服务器配置

要将 Redis MCP Server 集成到 MCP 客户端(例如 Claude Desktop),你需要配置 MCP 服务器的启动命令。以下是配置示例,请添加到你的 MCP 客户端的服务器配置中:

{
  "mcpServers": {
    "redis": {
      "command": "npx",
      "args": ["redis-mcp",
               "--redis-host", "localhost",  // Redis 服务器主机地址,默认为 localhost
               "--redis-port", "6379"        // Redis 服务器端口号,默认为 6379
              ],
      "disabled": false
    }
  }
}

配置参数说明

  • '"redis"': 服务器名称,可以自定义。
  • '"command": "npx"': 启动服务器的命令,这里使用 'npx' 运行本地安装的 'redis-mcp' 包。
  • '"args"': 传递给 'redis-mcp' 命令的参数数组:
    • '"redis-mcp"': 指定要执行的 npm 包为 'redis-mcp'。
    • '"--redis-host", "localhost"': 可选参数,指定 Redis 服务器的主机地址,如果 Redis 服务器运行在本地,则使用 'localhost'。
    • '"--redis-port", "6379"': 可选参数,指定 Redis 服务器的端口号,默认端口为 '6379'。
  • '"disabled": false': 设置为 'false' 启用该服务器。

注意

  • 确保你的 Redis 服务器已启动并运行,并且 MCP 客户端能够访问到 Redis 服务器。
  • 你可以根据实际 Redis 服务器的配置修改 'redis-host' 和 'redis-port' 参数。

基本使用方法

  1. 启动 Redis MCP Server: 当你在 MCP 客户端中启用并连接到 Redis MCP Server 后,服务器会自动启动。你无需手动运行服务器,它会作为 MCP 客户端的子进程运行。

  2. 在 LLM 中调用工具: 在支持 MCP 协议的 LLM 应用中,你可以通过工具名称和参数来调用 Redis MCP Server 提供的工具。例如,要使用 'get' 工具获取 Redis 中键为 'mykey' 的值,你可以在 LLM 中指示其调用 'redis-server.get' 工具,并提供参数 '{"key": "mykey"}'。

    具体的工具名称和参数请参考仓库 'README.md' 文件中 "Available Tools" 表格的描述和输入 Schema。LLM 客户端会根据工具的 'inputSchema' 自动生成用户界面或指令,方便用户输入参数。

示例工具调用 (在支持工具调用的 LLM 客户端中)

  • 获取键值 (get):

    {
      "tool_code": "redis-server.get",
      "tool_input": {
        "key": "mykey"
      }
    }
  • 设置哈希字段 (hmset):

    {
      "tool_code": "redis-server.hmset",
      "tool_input": {
        "key": "user:123",
        "fields": {
          "name": "John Doe",
          "email": "[email protected]"
        }
      }
    }

请参考 'README.md' 中的工具列表和描述,结合你的 LLM 客户端的使用方法,灵活运用 Redis MCP Server 提供的工具。

信息

分类

数据库与文件