Redis MCP Server
使用户能够使用模型上下文协议 (MCP) 工具执行 Redis 数据库操作,从而可以通过设置、获取和扫描哈希字段等命令实现高效的数据管理。
Tools
hmset
Set multiple hash fields to multiple values
hget
Get the value of a hash field
hgetall
Get all the fields and values in a hash
scan
Scan Redis keys matching a pattern
set
Set string value with optional NX (only if not exists) and PX (expiry in milliseconds) options
get
Get string value
del
Delete a key
zadd
Add one or more members to a sorted set
zrange
Return a range of members from a sorted set by index
zrangebyscore
Return members from a sorted set with scores between min and max
zrem
Remove one or more members from a sorted set
sadd
Add one or more members to a set
smembers
Get all members in a set
README
Redis MCP 服务器
一个模型上下文协议 (MCP) 服务器,提供对 Redis 数据库操作的访问。
<a href="https://glama.ai/mcp/servers/cbn7lsbp7h"><img width="380" height="200" src="https://glama.ai/mcp/servers/cbn7lsbp7h/badge" alt="Redis Server MCP server" /></a>
项目结构
src/
├── interfaces/
│ └── types.ts # 共享的 TypeScript 接口和类型
├── tools/
│ ├── base_tool.ts # Redis 工具的抽象基类
│ ├── tool_registry.ts # 管理所有可用 Redis 工具的注册表
│ ├── hmset_tool.ts # HMSET Redis 操作
│ ├── hget_tool.ts # HGET Redis 操作
│ ├── hgetall_tool.ts # HGETALL Redis 操作
│ ├── scan_tool.ts # SCAN Redis 操作
│ ├── set_tool.ts # SET Redis 操作
│ ├── get_tool.ts # GET Redis 操作
│ ├── del_tool.ts # DEL Redis 操作
│ ├── zadd_tool.ts # ZADD Redis 操作
│ ├── zrange_tool.ts # ZRANGE Redis 操作
│ ├── zrangebyscore_tool.ts # ZRANGEBYSCORE Redis 操作
│ └── zrem_tool.ts # ZREM Redis 操作
└── redis_server.ts # 主要服务器实现
可用工具
| 工具 | 类型 | 描述 | 输入模式 |
|---|---|---|---|
| hmset | Hash 命令 | 将多个哈希字段设置为多个值 | key: string (哈希键)<br>fields: object (要设置的字段-值对) |
| hget | Hash 命令 | 获取哈希字段的值 | key: string (哈希键)<br>field: string (要获取的字段) |
| hgetall | Hash 命令 | 获取哈希中的所有字段和值 | key: string (哈希键) |
| scan | Key 命令 | 扫描匹配模式的 Redis 键 | pattern: string (要匹配的模式,例如 "user:*")<br>count: number, 可选 (要返回的键的数量) |
| set | String 命令 | 设置字符串值,带有可选的 NX 和 PX 选项 | key: string (要设置的键)<br>value: string (要设置的值)<br>nx: boolean, 可选 (仅当不存在时才设置)<br>px: number, 可选 (以毫秒为单位的过期时间) |
| get | String 命令 | 获取字符串值 | key: string (要获取的键) |
| del | Key 命令 | 删除一个键 | key: string (要删除的键) |
| zadd | Sorted Set 命令 | 向排序集合添加一个或多个成员 | key: string (排序集合键)<br>members: array of objects with score: number and value: string |
| zrange | Sorted Set 命令 | 从排序集合中按索引返回一系列成员 | key: string (排序集合键)<br>start: number (起始索引)<br>stop: number (停止索引)<br>withScores: boolean, 可选 (在输出中包含分数) |
| zrangebyscore | Sorted Set 命令 | 从排序集合中返回分数在 min 和 max 之间的成员 | key: string (排序集合键)<br>min: number (最小分数)<br>max: number (最大分数)<br>withScores: boolean, 可选 (在输出中包含分数) |
| zrem | Sorted Set 命令 | 从排序集合中删除一个或多个成员 | key: string (排序集合键)<br>members: array of strings (要删除的成员) |
| sadd | Set 命令 | 向集合添加一个或多个成员 | key: string (集合键)<br>members: array of strings (要添加到集合的成员) |
| smembers | Set 命令 | 获取集合中的所有成员 | key: string (集合键) |
用法
在您的 MCP 客户端中配置 (例如,Claude Desktop, Cline):
{
"mcpServers": {
"redis": {
"command": "npx",
"args": ["redis-mcp", "--redis-host", "localhost", "--redis-port", "6379"],
"disabled": false
}
}
}
命令行参数
--redis-host: Redis 服务器主机 (默认: localhost)--redis-port: Redis 服务器端口 (默认: 6379)
通过 Smithery 安装
要通过 Smithery 为 Claude Desktop 自动安装 Redis Server:
npx -y @smithery/cli install redis-mcp --client claude
开发
要添加新的 Redis 工具:
- 在
src/tools/中创建一个新的工具类,继承RedisTool - 在
src/interfaces/types.ts中定义工具的接口 - 在
src/tools/tool_registry.ts中注册该工具
示例工具实现:
export class MyTool extends RedisTool {
name = 'mytool';
description = 'Description of what the tool does';
inputSchema = {
type: 'object',
properties: {
// Define input parameters
},
required: ['requiredParam']
};
validateArgs(args: unknown): args is MyToolArgs {
// Implement argument validation
}
async execute(args: unknown, client: RedisClientType): Promise<ToolResponse> {
// Implement tool logic
}
}
许可证
MIT: https://opensource.org/license/mit
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。