Redis MCP Server - 为 AI 应用提供自然语言 Redis 接口

Redis MCP Server - 为 AI 应用提供自然语言 Redis 接口

简介

Redis MCP Server 是 Redis 官方推出的 Model Context Protocol 服务器实现,为 AI 应用提供了通过自然语言管理和搜索 Redis 数据的强大能力。这个服务器让 Claude Desktop、VS Code 和 OpenAI Agents 等 AI 助手能够直接操作 Redis 的所有核心数据结构,包括 Strings、Hashes、Lists、Sets、Sorted Sets、JSON 文档、Stream 流式数据,以及强大的向量搜索功能。通过标准化的 MCP 协议,开发者可以轻松地将 Redis 的高性能数据存储能力集成到 AI 工作流中,实现会话管理、实时缓存、向量搜索等多种应用场景。

核心特性

  • 完整的数据结构支持 - 支持 Redis 所有主要数据类型,包括 Strings、Hashes、Lists、Sets、Sorted Sets
  • JSON 文档存储 - 原生支持 JSON 文档的存储和操作,支持 JSONPath 查询
  • Vector Search 向量搜索 - 提供向量索引创建和相似度搜索能力,适用于 RAG 应用
  • Pub/Sub 消息系统 - 支持发布订阅模式,实现实时消息传递
  • Redis Streams 流式处理 - 完整支持 Streams 数据结构,适用于事件流和日志处理
  • 自然语言交互 - 通过 AI 助手使用自然语言查询和操作 Redis 数据
  • 标准化协议 - 基于 MCP 标准协议,消除集成碎片化问题
  • 灵活部署 - 支持 PyPI、Docker 等多种部署方式
  • 企业级集成 - 无缝集成 Claude Desktop、VS Code、OpenAI Agents

工具列表

字符串操作

string-set

描述: 设置字符串值,可选设置过期时间

参数:

  • key (string): 键名 [必需]
  • value (string): 字符串值 [必需]
  • ex (number): 过期时间(秒) [可选]

string-get

描述: 获取字符串值

参数:

  • key (string): 键名 [必需]

哈希操作

hash-set

描述: 在单个键内存储字段-值对

参数:

  • key (string): 哈希键名 [必需]
  • field (string): 字段名 [必需]
  • value (string): 字段值 [必需]

hash-get

描述: 获取哈希字段值

参数:

  • key (string): 哈希键名 [必需]
  • field (string): 字段名 [必需]

hash-getall

描述: 获取哈希的所有字段和值

参数:

  • key (string): 哈希键名 [必需]

列表操作

list-push

描述: 向列表添加项目

参数:

  • key (string): 列表键名 [必需]
  • value (string): 要添加的值 [必需]
  • direction (string): 添加方向,可选值:left 或 right [可选]

list-range

描述: 获取列表范围内的元素

参数:

  • key (string): 列表键名 [必需]
  • start (number): 起始索引 [必需]
  • stop (number): 结束索引 [必需]

集合操作

set-add

描述: 向集合添加成员

参数:

  • key (string): 集合键名 [必需]
  • member (string): 要添加的成员 [必需]

set-members

描述: 列出集合所有成员

参数:

  • key (string): 集合键名 [必需]

排序集合操作

sorted-set-add

描述: 添加带分数的排序集合成员

参数:

  • key (string): 排序集合键名 [必需]
  • score (number): 分数 [必需]
  • member (string): 成员 [必需]

sorted-set-range

描述: 按分数范围获取排序集合成员

参数:

  • key (string): 排序集合键名 [必需]
  • start (number): 起始索引 [必需]
  • stop (number): 结束索引 [必需]

发布订阅

pubsub-publish

描述: 向频道发布消息

参数:

  • channel (string): 频道名称 [必需]
  • message (string): 消息内容 [必需]

Stream 流操作

stream-add

描述: 向流添加数据

参数:

  • key (string): 流键名 [必需]
  • fields (object): 字段-值对 [必需]

stream-read

描述: 从流读取数据

参数:

  • key (string): 流键名 [必需]
  • count (number): 读取数量 [可选]

JSON 操作

json-set

描述: 存储 JSON 文档

参数:

  • key (string): 键名 [必需]
  • path (string): JSON 路径 [必需]
  • value (object): JSON 值 [必需]

json-get

描述: 获取 JSON 文档

参数:

  • key (string): 键名 [必需]
  • path (string): JSON 路径 [可选]

向量搜索

vector-create-index

描述: 创建向量索引

参数:

  • indexName (string): 索引名称 [必需]
  • dimensions (number): 向量维度 [必需]

描述: 执行向量搜索

参数:

  • indexName (string): 索引名称 [必需]
  • vector (array): 查询向量 [必需]
  • k (number): 返回结果数 [可选]

Prompts

Redis MCP Server 支持以下自然语言提示:

  • “将整个对话存储在流中” - 使用 Streams 存储对话历史
  • “缓存此项目” - 快速缓存数据
  • “存储带过期时间的会话” - 设置会话数据并自动过期
  • “索引并搜索此向量” - 创建向量索引并执行相似度搜索

配置方式

基础配置

1
2
3
4
5
6
7
8
9
10
11
{
"mcpServers": {
"redis": {
"command": "uvx",
"args": ["redis-mcp-server", "--host", "localhost", "--port", "6379"],
"env": {
"REDIS_PASSWORD": "your-password"
}
}
}
}

使用 Redis URI

1
2
3
4
5
6
7
8
{
"mcpServers": {
"redis": {
"command": "uvx",
"args": ["redis-mcp-server", "--url", "redis://user:pass@localhost:6379"]
}
}
}

环境变量

  • REDIS_HOST - Redis 服务器地址(默认:localhost)
  • REDIS_PORT - Redis 端口(默认:6379)
  • REDIS_PASSWORD - Redis 密码
  • REDIS_URL - 完整的 Redis 连接 URI

使用示例

安装

1
2
3
4
5
6
7
8
# 使用 pip 安装
pip install redis-mcp-server

# 使用 CLI 连接
uvx redis-mcp-server --host localhost --port 6379 --password mypassword

# 使用 Redis URI
uvx redis-mcp-server --url redis://user:pass@localhost:6379

Docker 部署

1
2
3
4
5
docker run -d --name redis-mcp \
-e REDIS_HOST=localhost \
-e REDIS_PORT=6379 \
-e REDIS_PASSWORD=mypassword \
mcp/redis

应用场景示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 会话管理:存储用户会话数据
# 自然语言:Store this user session with 30 minute expiration

# 对话历史:保存 AI 对话记录
# 自然语言:Add this conversation turn to the dialogue stream

# 实时缓存:高性能数据缓存
# 自然语言:Cache this API response for 5 minutes

# 速率限制:API 访问控制
# 自然语言:Increment rate limit counter for user123

# 推荐系统:用户偏好和推荐
# 自然语言:Add product456 to user's preference set

# RAG 语义搜索:向量嵌入搜索
# 自然语言:Create vector index with 1536 dimensions and search for similar documents

实际应用场景

1. AI 会话管理

使用 Redis Strings 和 TTL 功能存储用户会话状态,自动过期清理。非常适合聊天机器人、AI 助手的状态管理。

2. 对话历史存储

利用 Redis Streams 存储完整的对话流,支持时间范围查询和消费者组,便于对话历史回溯和分析。

3. 实时缓存层

将频繁访问的 AI 模型推理结果缓存到 Redis,大幅降低响应时间和 API 调用成本。

4. RAG 向量搜索

使用 Redis Vector Search 存储文档嵌入向量,实现高性能的语义搜索,为 RAG 应用提供知识检索能力。

5. 速率限制和配额管理

通过 Sorted Sets 实现滑动窗口速率限制,精确控制 API 调用频率和用户配额。

技术实现

标准化 MCP 协议

Redis MCP Server 完全遵循 Model Context Protocol 规范,消除了不同 AI 平台集成的碎片化问题。通过统一的协议接口,任何支持 MCP 的 AI 工具都可以直接使用。

Stdio Transport

使用标准输入输出进行通信,简化部署和集成流程,无需额外的网络配置。

完整的日志和调试

内置详细的日志记录和调试选项,方便开发者排查问题和监控运行状态。

轻量级可扩展架构

采用 Python 实现,依赖少,启动快速。模块化设计使得扩展新功能变得简单直接。

灵活配置

支持通过 CLI 参数或环境变量配置,适应不同的部署环境和安全要求。

获取方式

相关资源

© 2026 Generative AI Discovery All Rights Reserved.
Theme by hiero