Redis MCP logo

Redis MCP

Run Redis commands against Upstash databases and search Redis documentation through two MCP tools.

Install Redis MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "redis-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@upstash/redis-mcp"
      ],
      "env": {
        "UPSTASH_REDIS_REST_URL": "YOUR_VALUE_HERE",
        "UPSTASH_REDIS_REST_TOKEN": "YOUR_VALUE_HERE",
        "UPSTASH_REDIS_TCP_URL": "YOUR_VALUE_HERE",
        "REDIS_URL": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 2 tools correctly (5d ago).

Overview

The redis-mcp MCP server lets AI agents execute Redis commands against Upstash Redis over HTTP/REST or TCP. Its command tool supports pipelines, atomic transactions, arbitrary Redis commands, and optional database selection. A second tool searches Upstash Redis documentation through Context7, including guidance for features such as the SEARCH.* command family. Use it when an MCP client needs controlled access to one or more Upstash databases through a stdio or HTTP server.

Use cases

  • Execute Redis commands from an MCP-compatible coding client
  • Run batches of Redis operations as pipelines
  • Apply related Redis writes atomically
  • Query Redis documentation for unfamiliar commands
  • Switch between named Upstash databases

Key features

  • Redis command execution over HTTP/REST or TCP
  • Pipeline and atomic transaction modes
  • Multiple named database configurations
  • Live Redis documentation search through Context7
  • Optional read-only command mode
  • Stdio and HTTP server transports

Tools2

What Redis MCP lets your agent do. Expand a tool for its parameters.

Verified live~909 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

7/7 checks healthy over the last 45d

What it can do

From the 2 tools this server returned when we ran it.

Runs commands · 1Makes network requests · 1Read-only tools · 1
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceSigned build
Package age101 days
Maintainers8

Observed 2026-10-18 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 8d ago via OSV.dev · @upstash/redis-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads349Package downloads in the last 30 days.
Last commit3mo agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed2Callable tools this server registers over MCP.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

How Redis MCP works

What redis-mcp MCP server does

The redis-mcp MCP server exposes Upstash Redis to MCP-compatible clients through two tools. redis_run_commands accepts one or more Redis commands, with each command represented as an array of arguments. It can execute commands such as GET, SET, SCAN, ZADD, EVAL, and the SEARCH.* family, as well as other Redis commands supported by the target database.

redis_search_docs queries Redis documentation through Context7's public API and returns relevant pages. It is intended for checking command syntax and feature behavior, particularly when an agent needs information about Upstash-specific Redis capabilities.

How it works

The server can connect through Upstash REST/HTTP or through a TCP connection. The selected transport comes from the configured database, rather than from an option supplied to each command request. Multiple commands run as a pipeline by default: results and errors remain aligned with the input commands, and one failed command does not stop the others. Setting transaction to true changes execution to an atomic MULTI/EXEC transaction.

One process can register several named databases. A command call can select a configured database by name. The command tool also accepts optional inline REST credentials or a TCP connection string, which override the configured registry and can be used without a registered database. Because inline credentials pass through model context, environment variables or CLI options are preferable for sensitive values.

Setup and configuration

The redis-mcp MCP server uses environment variables and command-line flags rather than a configuration file. For REST access, set UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN. For TCP access, set UPSTASH_REDIS_TCP_URL or REDIS_URL with a rediss:// connection string. The package can be started with npx -y @upstash/redis-mcp; MCP clients should configure it as a stdio server and pass the relevant environment variables.

The server also supports an HTTP transport with --transport http; its default port is 3000. The HTTP endpoint is /mcp, and /ping provides a health endpoint. Use repeated --database groups or database-specific environment-variable prefixes such as UPSTASH_REDIS_PROD_REST_URL to register multiple targets.

--readonly enables best-effort rejection of write commands on both transports. A read-only REST token remains the stronger server-side control. HTTP telemetry headers can be disabled with --disable-telemetry or UPSTASH_DISABLE_TELEMETRY=true. --debug enables verbose stderr logging and writes redis-mcp-debug.log.

Tools and capabilities

  • redis_run_commands: Executes arbitrary Redis commands over the configured REST or TCP connection.
  • Pipeline execution: Runs multiple commands independently and returns an aligned result or error for each one.
  • Atomic transactions: Uses MULTI/EXEC when transaction: true is supplied.
  • Named database selection: Targets one of several configured databases through a database value.
  • redis_search_docs: Searches Redis documentation through Context7 without requiring a separate API key.

The package can be built locally with Bun, producing dist/index.js. Running that file without transport flags starts stdio mode; passing --transport http --port 3000 starts the HTTP mode instead.

Limitations and notes

The read-only option is best effort, so it should not replace permissions enforced by the Redis or Upstash credentials. The documentation search depends on Context7's public service and is separate from command execution. Raw credentials supplied in a tool call are exposed through the model's context, making preconfigured environment variables or CLI settings safer for normal use. The material does not describe a separate command allowlist; use the target database's permissions and the server's read-only option to constrain access.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Redis MCP

redis-mcp is an MCP server that connects AI agents to Upstash Redis over HTTP/REST or TCP. Its main tools are redis_run_commands, for executing Redis commands as pipelines or atomic transactions, and redis_search_docs, for querying Redis documentation through Context7.

Run it with `npx -y @upstash/redis-mcp` and configure the process as a stdio MCP server. Provide `UPSTASH_REDIS_REST_URL` and `UPSTASH_REDIS_REST_TOKEN` for REST access, or configure `UPSTASH_REDIS_TCP_URL` or `REDIS_URL` for TCP access.

Yes, redis-mcp can register multiple named databases. Use database-specific environment-variable groups or repeat the `--database` CLI option with the connection settings for each target, then pass the selected name to `redis_run_commands`.

Yes, set `transaction` to `true` in `redis_run_commands` to execute the supplied commands as an atomic `MULTI`/`EXEC` transaction. Without that setting, multiple commands run as a pipeline and return separate results or errors.

Yes, redis-mcp works with Cursor through a stdio MCP configuration. Add `npx -y @upstash/redis-mcp` as the command and provide the required Upstash REST URL and token in Cursor's MCP settings.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewRedis MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/redis-mcp?style=directory)](https://allmcps.com/mcp/redis-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/redis-mcp"><img src="https://allmcps.com/api/badge/redis-mcp?style=directory" alt="Redis MCP on AllMCPs" /></a>