mcp-tool-server-redis
@yhwang
A MCP server which provides tools function to get/set key-value pairs data backed by Redis
Overview
What is mcp-tool-server-redis?
mcp-tool-server-redis is a Model Context Protocol (MCP) server that provides tools to get, set, delete, and list key-value pairs backed by Redis. It is intended for developers who want to manage Redis data through the MCP tool interface.
How to use mcp-tool-server-redis?
Start the server using Docker Compose (docker compose up -d), which runs it at http://localhost:3000. Then interact with the server using either the streamable HTTP client from the MCP typescript‑sdk (e.g., npx tsx src/examples/client/simpleStreamableHttp.ts) or the mcp-cli tool (npx @wong2/mcp-cli --url http://localhost:3000/mcp). Use commands like list-tools to see available tools and call-tool set {"key": "...", "value": "..."} to perform operations.
Key features of mcp-tool-server-redis
- Provides four tools:
set,get,delete,list - Supports optional expiration when setting a key
- Runs via Docker Compose with a single command
- Exposes a streamable HTTP endpoint on port 3000
- Works with the MCP typescript‑sdk and
mcp-cli
Use cases of mcp-tool-server-redis
—
FAQ from mcp-tool-server-redis
What tools are available in mcp-tool-server-redis?
The server provides four tools: set (set a key-value pair with optional expiration), get (get value by key), delete (delete one or more keys), and list (list Redis keys matching a pattern).
How do I start the server?
Run docker compose up -d in the project directory. This starts the MCP server with Redis as the backend, available at http://localhost:3000.
How can I interact with the server?
You can use the MCP typescript‑sdk’s simple streamable HTTP client (e.g., npx tsx src/examples/client/simpleStreamableHttp.ts) or the mcp-cli tool (npx @wong2/mcp-cli --url http://localhost:3000/mcp). Both provide an interactive prompt to list and call tools.
What transport does the server use?
The server uses streamable HTTP as its transport mechanism.
Does the server support setting a key with expiration?
Yes, the set tool accepts an optional expiration parameter when setting a key-value pair.