mcp-server-redis
Provides tools for interacting with Redis, including data operations (GET, SET, UPDATE, DELETE) and key management (CREATE, DROP, EXISTS, INFO), with permission control and operation logging.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-server-redisget the value for key user:123"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Redis Server
A MCP Redis server with data operations, permission control and operation logs.
Features
✅ Redis data operations (GET, SET, UPDATE, DELETE)
✅ Key management (CREATE, DROP, EXISTS, INFO)
✅ Dynamic tool list based on permissions
✅ Operation logging
✅ Connection management
✅ Auto-reconnection mechanism
✅ Health checks
✅ Error handling and recovery
Related MCP server: mcp-database
Installation
Global Installation (Recommended)
npm install -g @liangshanli/mcp-server-redisLocal Installation
npm install @liangshanli/mcp-server-redisFrom Source
git clone https://github.com/liliangshan/mcp-server-redis.git
cd mcp-server-redis
npm installConfiguration
Set environment variables:
export HOST=localhost
export PORT=6379
export PASSWORD=your_password
export ALLOW_INSERT=true
export ALLOW_UPDATE=true
export ALLOW_DELETE=true
export ALLOW_CREATE=true
export ALLOW_DROP=trueUsage
1. Direct Run (Global Installation)
mcp-server-redis2. Using npx (Recommended)
npx @liangshanli/mcp-server-redis3. Direct Start (Source Installation)
npm start4. Managed Start (Recommended for Production)
npm run start-managedManaged start provides:
Auto-restart (up to 10 times)
Error recovery
Process management
Logging
5. Development Mode
npm run devEditor Integration
Cursor Editor Configuration
Create
.cursor/mcp.jsonfile in your project root:
{
"mcpServers": {
"redis": {
"command": "npx",
"args": ["@liangshanli/mcp-server-redis"],
"env": {
"HOST": "your_host",
"PORT": "6379",
"PASSWORD": "your_password",
"ALLOW_INSERT": "true",
"ALLOW_UPDATE": "true",
"ALLOW_DELETE": "true",
"ALLOW_CREATE": "true",
"ALLOW_DROP": "true"
}
}
}
}VS Code Configuration
Install the MCP extension for VS Code
Create
.vscode/settings.jsonfile:
{
"mcp.servers": {
"redis": {
"command": "npx",
"args": ["@liangshanli/mcp-server-redis"],
"env": {
"HOST": "your_host",
"PORT": "6379",
"PASSWORD": "your_password",
"ALLOW_INSERT": "true",
"ALLOW_UPDATE": "true",
"ALLOW_DELETE": "true",
"ALLOW_CREATE": "true",
"ALLOW_DROP": "true"
}
}
}
}As MCP Server
The server communicates with MCP clients via stdin/stdout after startup:
{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"protocolVersion": "2025-06-18"}}Available Tools
get_data: Get data by key
{ "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": { "name": "get_data", "arguments": { "key": "user:123" } } }set_data: Set/insert data for a key
{ "jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": { "name": "set_data", "arguments": { "key": "user:123", "value": "John Doe", "ttl": 3600 } } }list_keys: List Redis keys with pattern matching
{ "jsonrpc": "2.0", "id": 4, "method": "tools/call", "params": { "name": "list_keys", "arguments": { "pattern": "user:*", "limit": 10 } } }
Dynamic Tool List
The server dynamically shows/hides tools based on environment variables:
Read-Only Tools (Always Available)
get_data- Get data by keylist_keys- List keys with pattern matchingexists_key- Check if key existsget_key_info- Get key informationget_redis_info- Get Redis server informationget_database_stats- Get database statisticsget_memory_info- Get memory usage informationtest_connection- Test Redis connectionget_operation_logs- Get operation logscheck_permissions- Check current permissionsset_ttl- Set time to live for a keyremove_ttl- Remove time to live from a key
Conditional Tools (Based on Permissions)
set_data- RequiresALLOW_INSERT=trueupdate_data- RequiresALLOW_UPDATE=truedelete_data- RequiresALLOW_DELETE=truecreate_key- RequiresALLOW_CREATE=truedrop_key- RequiresALLOW_DROP=truerename_key- RequiresALLOW_CREATE=trueANDALLOW_DROP=true
Connection Management Features
Auto-creation: Automatically creates Redis connection on
notifications/initializedHealth checks: Checks connection status every 5 minutes
Auto-reconnection: Automatically reconnects when connection fails
Connection reuse: Uses connection pool for better performance
Graceful shutdown: Properly closes connections when server shuts down
Logging
Log file location: ./logs/mcp-redis.log
Logged content:
All requests and responses
Redis operation records
Error messages
Connection status changes
Error Handling
Individual request errors don't affect the entire server
Connection errors are automatically recovered
Process exceptions are automatically restarted (managed mode)
Environment Variables
Variable | Default | Description |
HOST | localhost | Redis host address |
PORT | 6379 | Redis port |
PASSWORD | Redis password | |
ALLOW_INSERT | true | Whether to allow insert operations. Set to 'false' to disable |
ALLOW_UPDATE | true | Whether to allow update operations. Set to 'false' to disable |
ALLOW_DELETE | true | Whether to allow delete operations. Set to 'false' to disable |
ALLOW_CREATE | true | Whether to allow create key operations. Set to 'false' to disable |
ALLOW_DROP | true | Whether to allow drop/delete key operations. Set to 'false' to disable |
MCP_LOG_DIR | ./logs | Log directory |
MCP_LOG_FILE | mcp-redis.log | Log filename |
Development
Project Structure
mcp-server-redis/
├── src/
│ ├── server-final.js # Main server file
│ └── utils/ # Utility modules
├── bin/
│ └── cli.js # CLI entry point
├── start-server.js # Managed startup script
├── package.json
└── README.mdTesting
npm testQuick Start
1. Install Package
npm install -g @liangshanli/mcp-server-redis2. Configure Environment Variables
export HOST=localhost
export PORT=6379
export PASSWORD=your_password
export ALLOW_INSERT=true
export ALLOW_UPDATE=true
export ALLOW_DELETE=true
export ALLOW_CREATE=true
export ALLOW_DROP=truePermission Control Examples:
# Default: Enable all operations
export ALLOW_INSERT=true
export ALLOW_UPDATE=true
export ALLOW_DELETE=true
export ALLOW_CREATE=true
export ALLOW_DROP=true
# Read-only mode (safe mode)
export ALLOW_INSERT=false
export ALLOW_UPDATE=false
export ALLOW_DELETE=false
export ALLOW_CREATE=false
export ALLOW_DROP=false
# Allow insert and update, but disable delete operations
export ALLOW_INSERT=true
export ALLOW_UPDATE=true
export ALLOW_DELETE=false
export ALLOW_CREATE=true
export ALLOW_DROP=false
# Allow everything except DROP operations
export ALLOW_INSERT=true
export ALLOW_UPDATE=true
export ALLOW_DELETE=true
export ALLOW_CREATE=true
export ALLOW_DROP=false3. Run Server
mcp-server-redisLicense
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/liliangshan/mcp-server-redis'
If you have feedback or need assistance with the MCP directory API, please join our Discord server