trackmcp
Back to directory
cbuitragoh

customredis

View on GitHub

Redis MCP Server - Python implementation with docker

0 stars PythonServers & Infrastructure Updated Apr 3, 2025

Documentation

Redis MCP Server

A professional implementation of a Redis server with MCP (Model Control Protocol) integration, containerized with Docker.

Features

  • Redis server with persistence
  • MCP server integration for Redis operations
  • Docker and Docker Compose support
  • Comprehensive error handling and logging
  • Environment-based configuration
  • Health checks for Redis service

Prerequisites

  • Docker
  • Docker Compose

Quick Start

1. Clone the repository:

bash
git clone https://github.com/cbuitragoh/customRedis.git
cd customredis

2. Start the services:

bash
docker-compose up -d

3. Check the logs:

bash
docker-compose logs -f

Available Redis Operations

The MCP server provides the following Redis operations:

  • `set_redis_key(key: str, value: str)`: Set a key-value pair
  • `get_redis_key(key: str)`: Retrieve a value by key
  • `delete_redis_key(key: str)`: Delete a key
  • `list_redis_keys(pattern: str = '*')`: List all keys matching a pattern

Configuration

The application can be configured through environment variables:

  • `REDIS_HOST`: Redis server host (default: redis)
  • `REDIS_PORT`: Redis server port (default: 6379)
  • `REDIS_DB`: Redis database number (default: 0)
  • `LOG_LEVEL`: Logging level (default: INFO)

Development

Local Development

1. Create a virtual environment:

bash
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

2. Install dependencies:

bash
pip install -r requirements.txt

3. Run the server:

bash
python src/server.py

Docker Development

1. Build the image:

bash
docker-compose build

2. Run the services:

bash
docker-compose up

Project Structure

code
.
├── src/
│   └── server.py      # Main server implementation
├── Dockerfile         # Docker configuration
├── docker-compose.yml # Docker Compose configuration
├── requirements.txt   # Python dependencies
├── .env              # Environment variables
└── README.md         # This file

Error Handling

The application includes comprehensive error handling:

  • Connection errors
  • Redis operation errors
  • Server startup/shutdown errors
  • Graceful shutdown on keyboard interrupt

Logging

The application uses Python's logging module with the following features:

  • Timestamp-based log entries
  • Different log levels (INFO, WARNING, ERROR)
  • Detailed error messages
  • Operation success/failure logging

Using with Claude Desktop

To use this Redis MCP server with Claude Desktop, add the following configuration to your Claude Desktop settings:

json
{
  "mcpServers": {
    "redis": {
            "command": "docker",
            "args": [
                "run", 
                "-i",
                "--rm",
                "--network",
                "customredis_redis-network",
                "customredis-mcp-server"]
    }
  }
}

This configuration:

  • Uses Docker to run the Redis MCP server
  • Connects to Redis using the host machine's Redis instance
  • Runs in interactive mode (-i)
  • Removes the container after use (--rm)
  • Connect the MCP server to same network to Redis container

Make sure:

1. Redis is running in container from docker-compose redis service

2. The Redis port (6379) is accessible

3. Docker is running on your system

License

MIT License

Frequently asked questions

What is customredis?

customredis is Redis MCP Server - Python implementation with docker

How do I install customredis?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is customredis open source?

Yes — it is hosted on GitHub at https://github.com/cbuitragoh/customRedis.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP