Redis MCP Server

Redis MCP Server

Enables users to perform Redis database operations using the Model Context Protocol (MCP) tools, allowing for efficient data management through commands like setting, getting, and scanning hash fields.

Category
Visit Server

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 Server

smithery badge

A Model Context Protocol (MCP) server that provides access to Redis database operations.

<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>

Project Structure

src/
├── interfaces/
│   └── types.ts           # Shared TypeScript interfaces and types
├── tools/
│   ├── base_tool.ts       # Abstract base class for Redis tools
│   ├── tool_registry.ts   # Registry managing all available Redis tools
│   ├── hmset_tool.ts      # HMSET Redis operation
│   ├── hget_tool.ts       # HGET Redis operation
│   ├── hgetall_tool.ts    # HGETALL Redis operation
│   ├── scan_tool.ts       # SCAN Redis operation
│   ├── set_tool.ts        # SET Redis operation
│   ├── get_tool.ts        # GET Redis operation
│   ├── del_tool.ts        # DEL Redis operation
│   ├── zadd_tool.ts       # ZADD Redis operation
│   ├── zrange_tool.ts     # ZRANGE Redis operation
│   ├── zrangebyscore_tool.ts # ZRANGEBYSCORE Redis operation
│   └── zrem_tool.ts       # ZREM Redis operation
└── redis_server.ts        # Main server implementation

Available Tools

Tool Type Description Input Schema
hmset Hash Command Set multiple hash fields to multiple values key: string (Hash key)<br>fields: object (Field-value pairs to set)
hget Hash Command Get the value of a hash field key: string (Hash key)<br>field: string (Field to get)
hgetall Hash Command Get all fields and values in a hash key: string (Hash key)
scan Key Command Scan Redis keys matching a pattern pattern: string (Pattern to match, e.g., "user:*")<br>count: number, optional (Number of keys to return)
set String Command Set string value with optional NX and PX options key: string (Key to set)<br>value: string (Value to set)<br>nx: boolean, optional (Only set if not exists)<br>px: number, optional (Expiry in milliseconds)
get String Command Get string value key: string (Key to get)
del Key Command Delete a key key: string (Key to delete)
zadd Sorted Set Command Add one or more members to a sorted set key: string (Sorted set key)<br>members: array of objects with score: number and value: string
zrange Sorted Set Command Return a range of members from a sorted set by index key: string (Sorted set key)<br>start: number (Start index)<br>stop: number (Stop index)<br>withScores: boolean, optional (Include scores in output)
zrangebyscore Sorted Set Command Return members from a sorted set with scores between min and max key: string (Sorted set key)<br>min: number (Minimum score)<br>max: number (Maximum score)<br>withScores: boolean, optional (Include scores in output)
zrem Sorted Set Command Remove one or more members from a sorted set key: string (Sorted set key)<br>members: array of strings (Members to remove)
sadd Set Command Add one or more members to a set key: string (Set key)<br>members: array of strings (Members to add to the set)
smembers Set Command Get all members in a set key: string (Set key)

Usage

Configure in your MCP client (e.g., Claude Desktop, Cline):

{
  "mcpServers": {
    "redis": {
      "command": "npx",
      "args": ["redis-mcp", "--redis-host", "localhost", "--redis-port", "6379"],
      "disabled": false
    }
  }
}

Command Line Arguments

  • --redis-host: Redis server host (default: localhost)
  • --redis-port: Redis server port (default: 6379)

Installing via Smithery

To install Redis Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install redis-mcp --client claude

Development

To add a new Redis tool:

  1. Create a new tool class in src/tools/ extending RedisTool
  2. Define the tool's interface in src/interfaces/types.ts
  3. Register the tool in src/tools/tool_registry.ts

Example tool implementation:

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
  }
}

License

MIT: https://opensource.org/license/mit

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured