MCP server to interact with Redis Server, AWS Memory DB, etc for caching or other use-cases where in-memory and key-value based storage is appropriate
What is mcp-server-redis
Usage
The structure is as follows:
mcp-server-redis/
βββ src/
β βββ __init__.py
β βββ main.py # Main entry point
β βββ config.py # Configuration
β βββ connection.py # Redis connection management
β βββ resources/ # Resource implementations
β β βββ __init__.py
β β βββ status.py # Connection status resources
β β βββ keys.py # Key-related resources
β βββ tools/ # Tool implementations
β βββ __init__.py
β βββ basic.py # Basic Redis operations
β βββ lists.py # List operations
β βββ hashes.py # Hash operations
β βββ sets.py # Set operations
β βββ pubsub.py # Pub/Sub operations
βββ tests/ # Test directory
β βββ __init__.py
βββ README.md
βββ pyproject.toml
To use this server, you'll need to:
Install the required dependencies:
[If not already installed] https://docs.astral.sh/uv/
uv venv
source .venv/bin/activate
uv sync
Refer to the .env.example file to configure your Redis connection by adding the appropriate variables.
Run the server:
python src/server.py
Capabilities of this server
Resources:
- redis://status - Current connection status
- redis://info - Redis server information
- redis://keys/{pattern} - List keys matching a pattern
Tools:
- Basic operations:
- get_value - Get a value
- set_value - Set a value with optional expiry
- delete_key - Delete a key
- increment - Increment a numeric value
- List operations:
- list_push - Push values to a list
- list_range - Get range of list values
- Hash operations:
- hash_set - Set hash fields
- hash_get - Get hash fields
- Set operations:
- set_add - Add to a set
- set_members - Get set members
- Pub/Sub:
- publish_message - Publish a message
Each tool includes error handling and returns meaningful responses. The server will automatically reconnect to Redis if the connection is lost.
You can test it with the MCP Inspector:
mcp dev src/server.py
Or install it in Claude Desktop:
mcp install src/server.py
Example
User: What's the current Redis connection status?
LLM: Let me check the Redis connection status for you.
[Reading resource redis://status]
The Redis server is currently connected and running on localhost:6379, database 0.
User: Can you store my name "Alice" in Redis?
LLM: I'll help you store your name in Redis using the set_value tool.
[Calling set_value with key="name" value="Alice"]
Successfully set key 'name'
I've stored your name "Alice" in Redis under the key "name". Would you like me to verify the value was stored correctly by retrieving it?
User: Yes please verify it
LLM: I'll retrieve the value using the get_value tool.
[Calling get_value with key="name"]
Alice
Yes, I can confirm that your name "Alice" was successfully stored in Redis and can be retrieved correctly. The value matches exactly what we stored.
This implementation provides a solid foundation for Redis integration through MCP. You can extend it further by adding more Redis commands as needed for your specific use case.
Leave a Comment
Frequently Asked Questions
What is MCP?
MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications, providing a standardized way to connect AI models to different data sources and tools.
What are MCP Servers?
MCP Servers are lightweight programs that expose specific capabilities through the standardized Model Context Protocol. They act as bridges between LLMs like Claude and various data sources or services, allowing secure access to files, databases, APIs, and other resources.
How do MCP Servers work?
MCP Servers follow a client-server architecture where a host application (like Claude Desktop) connects to multiple servers. Each server provides specific functionality through standardized endpoints and protocols, enabling Claude to access data and perform actions through the standardized protocol.
Are MCP Servers secure?
Yes, MCP Servers are designed with security in mind. They run locally with explicit configuration and permissions, require user approval for actions, and include built-in security features to prevent unauthorized access and ensure data privacy.
Related MCP Servers
PostgreSQL MCP Server
A Model Context Protocol server that provides read-only access to PostgreSQL databases. This server enables LLMs to inspect database schemas and execute read-only queries.
AWS Knowledge Base Retrieval
An MCP server implementation for retrieving information from the AWS Knowledge Base using the Bedrock Agent Runtime.
prisma prisma
Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
yaoxiaolinglong mcp mongodb mysql server
η¨δΊmysqlεmongodbηmcp
OpenLinkSoftware mcp pyodbc server
A simple MCP ODBC server using FastAPI, ODBC and PyODBC.
executeautomation mcp database server
MCP Database Server is a new MCP Server which helps connect with Sqlite, SqlServer and Posgresql Databases
dreamfactorysoftware df mcp
DreamFactory MCP Server enables AI assistants like Claude to directly query your databases through DreamFactory's auto-generated REST APIs.
attarmau FastMCP RecSys
A mockup full stack app built with React, FastAPI, MongoDB, and Docker, powered by AWS Rekognition & CLIP for multi-tagging and clothing recommendations
TheRaLabs legion mcp
A server that helps people access and query data in databases using the Legion Query Runner with Model Context Protocol (MCP) in Python.
spences10 mcp turso cloud
ποΈ A Model Context Protocol (MCP) server that provides integration with Turso databases for LLMs. This server implements a two-level authentication system to handle both organization-level and database-level operations, making it easy to manage and query Turso databases directly from LLMs.
Submit Your MCP Server
Share your MCP server with the community
Submit Now