Redis MCP Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides access to Redis database operations through a Model Context Protocol (MCP) server. Includes tools for various Redis commands such as HMSET, HGET, HGETALL, SCAN, SET, GET, DEL, ZADD, ZRANGE, ZRANGEBYSCORE, ZREM, SADD, and SMEMBERS.

Redis MCP サーバー

Redis データベース操作へのアクセスを提供するモデル コンテキスト プロトコル (MCP) サーバー。

プロジェクト構造

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

利用可能なツール

道具タイプ説明入力スキーマ
hmsetハッシュコマンド複数のハッシュフィールドに複数の値を設定するkey : 文字列(ハッシュキー) fields : オブジェクト(設定するフィールドと値のペア)
ゲットハッシュコマンドハッシュフィールドの値を取得するkey : 文字列(ハッシュキー) field : 文字列(取得するフィールド)
hgetallハッシュコマンドハッシュ内のすべてのフィールドと値を取得するkey : 文字列(ハッシュキー)
スキャンキーコマンドパターンに一致するRedisキーをスキャンするpattern : 文字列(一致するパターン、例: "user:*") count : 数値、オプション(返されるキーの数)
セット文字列コマンドオプションのNXおよびPXオプションを使用して文字列値を設定するkey : 文字列(設定するキー) value : 文字列(設定する値) nx : ブール値、オプション(存在しない場合にのみ設定) px : 数値、オプション(有効期限(ミリ秒))
得る文字列コマンド文字列値を取得するkey : 文字列(取得するキー)
デルキーコマンドキーを削除するkey : 文字列(削除するキー)
ザッドソートセットコマンドソートされたセットに1つ以上のメンバーを追加するkey : 文字列 (ソートされたセットキー) members : score : 数値、 value : 文字列を持つオブジェクトの配列
zrangeソートセットコマンドインデックスでソートされたセットからメンバーの範囲を返すkey : 文字列(ソートされたセットキー) start : 数値(開始インデックス) stop : 数値(終了インデックス) withScores : ブール値、オプション(出力にスコアを含める)
zrangebyscoreソートセットコマンドソートされたセットから、最小値と最大値の間のスコアを持つメンバーを返します。key : 文字列(ソートされたセットキー) min : 数値(最小スコア) max : 数値(最大スコア) withScores : ブール値、オプション(出力にスコアを含める)
ズレムソートセットコマンドソートされたセットから1つ以上のメンバーを削除しますkey : 文字列(ソートされたセットのキー) members : 文字列の配列(削除するメンバー)
悲しいコマンドの設定セットに1人以上のメンバーを追加するkey : 文字列(キーを設定) members : 文字列の配列(セットに追加するメンバー)
スメンバーコマンドの設定セット内のすべてのメンバーを取得するkey : 文字列(キーの設定)

使用法

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 サーバーを自動的にインストールするには:

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

発達

新しい Redis ツールを追加するには:

  1. src/tools/RedisToolを拡張した新しいツールクラスを作成します。
  2. src/interfaces/types.tsでツールのインターフェースを定義します。
  3. 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

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

ユーザーがモデル コンテキスト プロトコル (MCP) ツールを使用して Redis データベース操作を実行できるようにし、ハッシュ フィールドの設定、取得、スキャンなどのコマンドを通じて効率的なデータ管理を可能にします。

  1. Project Structure
    1. Available Tools
      1. Usage
        1. Command Line Arguments
          1. Installing via Smithery
        2. Development
          1. License
            ID: cbn7lsbp7h