Upstash Redis
БесплатноНе проверенLightweight MCP server for Redis that allows running any Redis command and searching Redis documentation. Supports multiple named databases with HTTP/REST or TC
Описание
Lightweight MCP server for Redis that allows running any Redis command and searching Redis documentation. Supports multiple named databases with HTTP/REST or TCP transport.
README
Upstash Redis MCP
Lightweight MCP server for Redis with only two tools:
- 🧪
redis_run_commands: run one or more Redis commands over HTTP/REST or TCP, as a pipeline or an atomic transaction. - 📚
redis_search_docs: search the Redis docs using Context7 public api.
One server can hold multiple named databases. Configuration is pure environment variables and CLI flags.
🔌 Quickstart
Claude Code
Run this in your terminal. See the Claude Code MCP docs for more.
claude mcp add upstash-redis \
-e UPSTASH_REDIS_REST_URL=https://<your-db>.upstash.io \
-e UPSTASH_REDIS_REST_TOKEN=<your-rest-token> \
-- npx -y @upstash/redis-mcp
Cursor
Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project), or go to Settings → MCP → Add new MCP server. See the Cursor MCP docs.
{
"mcpServers": {
"upstash-redis": {
"command": "npx",
"args": ["-y", "@upstash/redis-mcp"],
"env": {
"UPSTASH_REDIS_REST_URL": "https://<your-db>.upstash.io",
"UPSTASH_REDIS_REST_TOKEN": "<your-rest-token>"
}
}
}
}
VS Code
Add to .vscode/mcp.json (per-project) or your user mcp settings. See the VS Code MCP docs.
{
"servers": {
"upstash-redis": {
"command": "npx",
"args": ["-y", "@upstash/redis-mcp"],
"env": {
"UPSTASH_REDIS_REST_URL": "https://<your-db>.upstash.io",
"UPSTASH_REDIS_REST_TOKEN": "<your-rest-token>"
}
}
}
}
Codex
Add to ~/.codex/config.toml (or a project-level .codex/config.toml). See the Codex MCP docs.
[mcp_servers.upstash-redis]
command = "npx"
args = ["-y", "@upstash/redis-mcp"]
env = { UPSTASH_REDIS_REST_URL = "https://<your-db>.upstash.io", UPSTASH_REDIS_REST_TOKEN = "<your-rest-token>" }
OpenCode
Add to opencode.json (project) or ~/.config/opencode/opencode.json (global). See the OpenCode MCP docs.
{
"mcp": {
"upstash-redis": {
"type": "local",
"command": ["npx", "-y", "@upstash/redis-mcp"],
"environment": {
"UPSTASH_REDIS_REST_URL": "https://<your-db>.upstash.io",
"UPSTASH_REDIS_REST_TOKEN": "<your-rest-token>"
}
}
}
}
[!TIP] Any MCP-compatible client works. If yours isn't listed, add a stdio server that runs
npx -y @upstash/redis-mcpwith the two env vars above.
🧰 Tools
🧪 redis_run_commands
Run any Redis command: GET, SET, SCAN, ZADD, EVAL, the SEARCH.* family, and everything else. Each command is an array of args (numbers are accepted and coerced to strings). By default multiple commands run as a pipeline: each returns its own result/error, aligned to the input, and one failure doesn't abort the rest. Set transaction: true for an atomic MULTI/EXEC.
{
"commands": [
["SET", "visits", 0],
["INCR", "visits"],
["GET", "visits"],
],
"transaction": false, // optional: true => atomic MULTI/EXEC
// "database": "prod" // only when more than one database is configured
// raw credential overrides (optional):
// "rest_url", "rest_token" // HTTP
// "connection_string" // TCP, rediss://
}
The transport (HTTP vs TCP) is determined by how the target database is configured; the agent never picks it.
📚 redis_search_docs
Searches the Upstash Redis documentation live and returns the most relevant pages. Reach for it whenever you're unsure about a command or feature, especially Upstash-specific ones like the SEARCH.* full-text search family. It's powered by Context7's free tier, so no API key or extra setup is required.
{ "query": "SEARCH.AGGREGATE date histogram" }
⚙️ Configuration
Everything is set through environment variables and CLI flags; there are no config files.
Single database
| Transport | Environment | CLI |
|---|---|---|
| HTTP | UPSTASH_REDIS_REST_URL + UPSTASH_REDIS_REST_TOKEN |
--rest-url <url> --rest-token <token> |
| TCP | UPSTASH_REDIS_TCP_URL (or REDIS_URL) |
--url <rediss://…> |
Multiple databases
Give each database a name. The name becomes a selectable database value in redis_run_commands.
Environment: insert a <NAME> segment:
UPSTASH_REDIS_PROD_REST_URL="https://prod-db.upstash.io"
UPSTASH_REDIS_PROD_REST_TOKEN="<prod-rest-token>"
UPSTASH_REDIS_CACHE_TCP_URL="rediss://default:<password>@cache-db.upstash.io:6379"
CLI: repeat --database to start each group:
npx -y @upstash/redis-mcp \
--database prod --rest-url https://prod-db.upstash.io --rest-token <prod-rest-token> \
--database cache --url rediss://default:<password>@cache-db.upstash.io:6379
[!NOTE] Raw credentials per call. A
redis_run_commandscall may also passrest_url+rest_token(HTTP) orconnection_string(TCP) inline; these override the registry and work even with no configured database. They flow through the model's context, so prefer env/CLI for anything sensitive.
Flags & options
| Flag | Env | Default | Purpose |
|---|---|---|---|
--transport <stdio|http> |
stdio |
Server transport | |
--port <n> |
3000 |
Port for the http transport |
|
--readonly |
UPSTASH_REDIS_READONLY |
off | Best-effort: reject write commands on both transports. Server-side read-only REST tokens remain the robust option. |
--disable-telemetry |
UPSTASH_DISABLE_TELEMETRY |
off | Stop sending Upstash-Telemetry-* headers on HTTP requests |
--debug |
off | Verbose logging to stderr + redis-mcp-debug.log |
📡 Telemetry
HTTP/REST requests carry Upstash-Telemetry-{Sdk,Platform,Runtime} headers. Disable with --disable-telemetry or UPSTASH_DISABLE_TELEMETRY=true.
🏃 Run it locally
bun install
bun run build # emits dist/index.js
cp .env.example .env # add UPSTASH_REDIS_REST_URL + UPSTASH_REDIS_REST_TOKEN
node dist/index.js # stdio (what clients spawn)
node dist/index.js --transport http --port 3000 # HTTP: endpoint /mcp, health /ping
The server auto-loads .env. To point a client at your local build, swap npx -y @upstash/redis-mcp in any Quickstart config for node /absolute/path/to/redis-mcp/dist/index.js.
🛠️ Development
bun install
bun run build
bun test
bun run lint
📄 License
MIT © Upstash
Установка Upstash Redis
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/upstash/redis-mcpFAQ
Upstash Redis MCP бесплатный?
Да, Upstash Redis MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Upstash Redis?
Нет, Upstash Redis работает без API-ключей и переменных окружения.
Upstash Redis — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Upstash Redis в Claude Desktop, Claude Code или Cursor?
Открой Upstash Redis на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
wenb1n-dev/SmartDB_MCP
A universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim
автор: wenb1n-devPostgres Server
This server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools
автор: madhurprashPostgres
Query your database in natural language
автор: AnthropicPostgreSQL
Read-only database access with schema inspection.
автор: modelcontextprotocolCompare Upstash Redis with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории data
