使用说明
项目简介
本项目实现了一个 MCP (Model Context Protocol) 服务器,它将 Redis 数据库的功能封装成一系列资源 (Resources) 和工具 (Tools),通过标准的 MCP 协议与 LLM 客户端进行交互。这使得 LLM 可以利用 Redis 数据库存储和检索信息,执行各种数据操作,从而增强 LLM 的上下文理解和功能扩展能力。
主要功能点
- 资源 (Resources):
- 'redis://status': 获取 Redis 服务器的连接状态,例如是否连接成功、连接配置等。
- 'redis://info': 获取 Redis 服务器的详细信息,例如版本、运行状态、内存使用情况等。
- 'redis://keys/{pattern}': 根据指定的模式 (pattern) 列出 Redis 中匹配的键 (keys)。
- 工具 (Tools):
- 基础操作: 'get_value' (获取键值), 'set_value' (设置键值,可设置过期时间), 'delete_key' (删除键), 'increment' (自增数值)。
- 列表操作: 'list_push' (向列表推送值), 'list_range' (获取列表指定范围的值)。
- 哈希操作: 'hash_set' (设置哈希字段), 'hash_get' (获取哈希字段)。
- 集合操作: 'set_add' (向集合添加成员), 'set_members' (获取集合所有成员)。
- 发布/订阅: 'publish_message' (向 Redis 频道发布消息)。
- 配置灵活: 通过 '.env' 文件配置 Redis 服务器的连接参数,方便用户根据实际环境进行调整。
- 错误处理: 每个工具都包含完善的错误处理机制,当 Redis 操作失败时,会返回清晰的错误信息。
- 自动重连: 服务器具有自动重连 Redis 的能力,当连接丢失时会自动尝试重新连接。
安装步骤
- 安装 uv (如果未安装): 访问 https://docs.astral.sh/uv/ 按照官方文档指引安装 uv。
- 创建虚拟环境: 打开终端,导航到仓库根目录 ('mcp-server-redis'),运行命令 'uv venv' 创建虚拟环境。
- 激活虚拟环境: 运行命令 'source .venv/bin/activate' 激活虚拟环境。
- 安装依赖: 运行命令 'uv sync' 安装项目依赖。
- 配置 Redis 连接:
- 复制仓库根目录下的 '.env.example' 文件并重命名为 '.env'。
- 根据你的 Redis 服务器配置,修改 '.env' 文件中的以下变量:
- 'REDIS_HOST': Redis 服务器主机名或 IP 地址 (默认为 'localhost')
- 'REDIS_PORT': Redis 服务器端口号 (默认为 '6379')
- 'REDIS_DB': Redis 数据库编号 (默认为 '0')
- 'REDIS_PASSWORD': Redis 数据库密码 (如果需要)
服务器配置 (MCP 客户端)
以下 JSON 配置信息用于 MCP 客户端连接到此 MCP 服务器。请将以下配置添加到你的 MCP 客户端 (例如 Claude Desktop 或 MCP Inspector) 的服务器配置中。
{ "serverName": "RedisMCP", "command": "python", "args": ["src/main.py"] }
- 'serverName': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。
- 'command': 启动服务器的命令,这里使用 'python' 解释器。
- 'args': 启动服务器命令的参数,这里指定服务器入口文件为 'src/main.py'。
基本使用方法
- 启动 MCP 服务器: 在虚拟环境激活的状态下,在仓库根目录运行命令 'python src/main.py' 启动 MCP 服务器。
- 配置并连接 MCP 客户端: 在 MCP 客户端 (如 MCP Inspector 或 Claude Desktop) 中,按照上述 "服务器配置" 部分的信息添加并连接到 "RedisMCP" 服务器。
- 使用资源和工具: 在 MCP 客户端中,你可以像与任何其他 MCP 服务器一样,通过资源浏览器查看可用的资源 (例如 'redis://status', 'redis://info', 'redis://keys/{pattern}'),并通过工具调用界面调用各种 Redis 工具 (例如 'get_value', 'set_value', 'list_push' 等)。具体工具的使用方法和参数可以在 MCP 客户端的工具描述中查看。
信息
分类
数据库与文件