Skip to main content
Glama

Redis MCP Server

by farhankaz

Redis MCP Server

smithery badge

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

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)

fields

: object (Field-value pairs to set)

hget

Hash Command

Get the value of a hash field

key

: string (Hash key)

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:*")

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)

value

: string (Value to set)

nx

: boolean, optional (Only set if not exists)

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)

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)

start

: number (Start index)

stop

: number (Stop index)

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)

min

: number (Minimum score)

max

: number (Maximum score)

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)

members

: array of strings (Members to remove)

sadd

Set Command

Add one or more members to a set

key

: string (Set key)

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

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    A powerful Model Context Protocol (MCP) tool for exploring and managing different types of databases including PostgreSQL, MySQL, and Firestore.
    Last updated -
    9
    5
    MIT License
  • A
    security
    F
    license
    A
    quality
    Model Context Protocol (MCP) server that integrates Redash with AI assistants like Claude, allowing them to query data, manage visualizations, and interact with dashboards through natural language.
    Last updated -
    73
    42
    • Apple
  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol (MCP) implementation for connecting to and working with various database systems.
    Last updated -
    4
    19
    MIT License
    • Linux
    • Apple
  • A
    security
    A
    license
    A
    quality
    Provides sophisticated tools for interacting with PocketBase databases, enabling advanced database operations, schema management, and data manipulation through the Model Context Protocol (MCP).
    Last updated -
    24
    3
    86
    MIT License

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/farhankaz/redis-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server