---
title: "Upstash Redis MCP: review, setup & limitations · Undominated.ai"
canonical: https://undominated.ai/mcp-servers/upstash-redis/
description: "Minimal two-tool Upstash server that runs Redis commands over REST or TCP and searches Redis docs, holding multiple named databases."
---

# Upstash Redis MCP: review, setup & limitations · Undominated.ai

> Minimal two-tool Upstash server that runs Redis commands over REST or TCP and searches Redis docs, holding multiple named databases.

[← Explore all mcp servers](/mcp-servers/)

SERVERLESS REDIS / Upstash

# Upstash Redis MCP

Minimal two-tool Upstash server that runs Redis commands over REST or TCP and searches Redis docs, holding multiple named databases.

 [See setup guidance ↓](#setup)[Original source ↗](https://github.com/upstash/redis-mcp)

SOURCE REVIEW

 Reviewed 2026-10-13
 Evidence 5 linked sources
 Publisher Upstash
 Licence [MIT ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/LICENSE)
 Revision 9bbfcfa03533
 [Read what was—and wasn’t—checked ↓](#review)

“MCP server for Upstash Redis — run Redis commands and look up Upstash Redis Search docs over HTTP or TCP”

 [Upstash · upstream description ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/package.json) Our analysis follows below.

01 / THE REASONING

## Why this made the selection.

 - The README documents exactly two tools, redis_run_commands and redis_search_docs, a smaller surface than the account-management tools of the separate Upstash MCP server record.
- Configuration is environment variables and CLI flags only: one server can hold several named databases over REST or TCP, and an optional --readonly flag rejects write commands on both paths.

### A good fit for

 - Running a Redis command against a serverless Upstash database during development.
- Looking up Redis command documentation without leaving the assistant session.

### Weigh up before choosing

 - redis_run_commands runs any Redis command, EVAL included, as a pipeline or a MULTI/EXEC transaction; the REST token or connection string bounds what it can change.
- The --readonly flag is best-effort: src/redis/readonly.ts allowlists read commands and rejects the rest. The README calls server-side read-only REST tokens the robust option.
- A call may pass rest_url and rest_token or a connection_string inline, overriding the configured databases; the README warns these flow through the model's context.
- Docs search leaves the client for the Context7 public API even when commands stay on Upstash infrastructure.
- The optional HTTP transport (--transport http) serves /mcp with Access-Control-Allow-Origin * and no client authentication in src/index.ts; keep to stdio unless the listener is otherwise protected.

02 / THE REVIEW RECORD

## What we actually inspected.

Source review has boundaries. A clear record is more useful than a “safe” badge.

### Material inspected

 - README.md at 9bbfcfa03533cd97a2e9723a9f3b753ad3932b14: two tools, REST/TCP transports, multi-database configuration, flags, telemetry and per-client setup.
- package.json at the same commit: @upstash/redis-mcp 0.1.0, MIT licence and redis-mcp binary.
- src/index.ts and src/redis/readonly.ts at the same commit: transports, HTTP headers and the read-only allowlist.
- LICENSE at the same commit: MIT License, Copyright (c) 2026 Upstash, Inc.

### Our findings

 - The documented client configuration is stdio via npx with credentials in environment variables; src/index.ts also offers --transport http on port 3000 with a Streamable HTTP endpoint at /mcp.
- One server instance can front multiple named databases, so database naming is part of the access boundary.
- HTTP/REST requests carry Upstash-Telemetry headers unless --disable-telemetry or UPSTASH_DISABLE_TELEMETRY=true is set.
- configExample is the README's Cursor block at this commit, placeholders included. The earlier copy had rewritten them as YOUR_* values.
- Correction: the earlier upstreamDescription ("MCP server for Upstash Redis over REST or TCP with docs search.") is not in the README or package.json; it is now package.json's description. The earlier finding that the configuration is stdio-only missed the HTTP transport.
- Upstream health on 2026-10-13: upstash/redis-mcp is not archived, its default-branch HEAD is this commit, the LICENSE is MIT and package.json names @upstash/redis-mcp.

### Not established by this review

 - Server startup, authentication and command execution were not tested.

The review applies to the material and revision named here. A newer upstream release can change its behavior.

03 / PUT IT TO WORK

## Connect a server deliberately.

[Upstream setup instructions ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/README.md)

DOCUMENTED COMMAND

 npx -y @upstash/redis-mcp Copy command ↗

Copying does not execute this command. It may retrieve a newer version than the reviewed source.

 - The README says any client can add a stdio server that runs the command above with UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN set. It was not run.
- Prefer a read-only REST token, and add --readonly as a second guard, before letting an assistant near production data.

### Before you start

 - Node.js with npx available.
- An Upstash Redis database with REST credentials.

### Documented configuration example

Use the client and authentication context described in the setup guidance. Configuration formats vary between hosts.

 {
 "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>"
 }
 }
 }
} Copy configuration ↗

### Compatibility

MCP clients supporting stdio with Node.js and npx available. · An Upstash Redis database with REST URL and token.

### Implementation

TypeScript

### Transports

stdio · Streamable HTTP

### Upstash Redis REST credentials

 - Credentials come from UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN, a TCP URL, CLI flags, or per-call overrides.
- Runs Redis commands, including writes and scripts, against the configured databases unless --readonly is set.
- Docs search queries the Context7 public API rather than the database.

### Cost model

Upstash plan and request entitlements apply; the source licence does not include service usage.

04 / FOLLOW THE EVIDENCE

## The source trail.

Our notes are separate from the original resource. Check upstream before adopting a new version.

 - [Upstash Redis MCP readme ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/README.md) Checked 2026-10-13 https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/README.md Supports: summary, install, compatibility, access, transports, configExample, whySelected, bestFor, limitations
- [Repository licence ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/LICENSE) Checked 2026-10-13 https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/LICENSE Supports: license
- [Package manifest ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/package.json) Checked 2026-10-13 https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/package.json Supports: upstreamDescription, language, license, review
- [Server entrypoint src/index.ts ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/src/index.ts) Checked 2026-10-13 https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/src/index.ts Supports: transports, limitations, review
- [Read-only allowlist src/redis/readonly.ts ↗](https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/src/redis/readonly.ts) Checked 2026-10-13 https://github.com/upstash/redis-mcp/blob/9bbfcfa03533cd97a2e9723a9f3b753ad3932b14/src/redis/readonly.ts Supports: limitations, access

KEEP COMPARING

## Other approaches to consider.

Related by category or shared topics. These are alternatives to inspect, not a measured quality order.

 [### AWS Serverless MCP Server ↗ Works with AWS serverless resources in an account you administer. A deploy is a write.](/mcp-servers/awslabs-aws-serverless/)[### Redis Cloud API MCP Server ↗ Manages a Redis Cloud account through the Redis Cloud API from an MCP client: account and payment-method lookup, Pro and Essential subscriptions, plans, regions and task tracking.](/mcp-servers/redis-cloud-api/)[### Upstash MCP ↗ Connects a local MCP client to Upstash resource inspection and account-authorized management tools.](/mcp-servers/upstash/)

 [AI Tools ↗](/tools/)[Skills ↗](/skills/)[Agents ↗](/agents/)[MCP Servers ↗](/mcp-servers/)[Workflows ↗](/workflows/)

## Continue your investigation

 - [Inspect resource evidence](/tools/)
- [Choose a host](/agents/)
- [Inspect reusable workflows](/skills/)
- [Use Undominated data](/api/)
