{
  "data": {
    "similar": [
      {
        "grade": "A",
        "json": "https://www.anchorterminal.com/tools/meilisearch.json",
        "name": "Meilisearch",
        "score": 78.6,
        "shared": [
          "db.vector",
          "db.hybrid"
        ],
        "slug": "meilisearch"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/pinecone.json",
        "name": "Pinecone API + MCP",
        "score": 76.2,
        "shared": [
          "db.vector",
          "db.hybrid"
        ],
        "slug": "pinecone"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/supabase-mcp.json",
        "name": "Supabase API + MCP",
        "score": 75.6,
        "shared": [
          "db.vector",
          "db.hybrid"
        ],
        "slug": "supabase-mcp"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/qdrant.json",
        "name": "Qdrant API + MCP",
        "score": 75.3,
        "shared": [
          "db.vector",
          "db.hybrid"
        ],
        "slug": "qdrant"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/typesense.json",
        "name": "Typesense API + MCP",
        "score": 70.7,
        "shared": [
          "db.vector",
          "db.hybrid"
        ],
        "slug": "typesense"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/vespa.json",
        "name": "Vespa",
        "score": 70,
        "shared": [
          "db.vector",
          "db.hybrid"
        ],
        "slug": "vespa"
      }
    ],
    "tool": {
      "slug": "redis-mcp",
      "name": "Redis MCP",
      "vendor": "Redis",
      "vendorUrl": "https://redis.io",
      "kind": "mcp",
      "category": "data",
      "summary": "Redis's open-source MCP server for Redis databases. The owner runs it locally over stdio, and it gives agents tools for strings, hashes, lists, sets, sorted sets, streams, pub/sub, JSON documents and vector search.",
      "url": "https://www.anchorterminal.com/tools/redis-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/redis-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/redis-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/redis-mcp.json",
      "repo": "https://github.com/redis/mcp-redis",
      "license": "MIT",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "redis-mcp-server"
        },
        {
          "registry": "oci",
          "name": "docker.io/mcp/redis"
        }
      ],
      "auth": "mixed",
      "authNotes": "The server signs in to Redis with a username and password (`--url`, `--username` and `--password`, or `REDIS_USERNAME` and `REDIS_PWD`), which a Redis admin creates, self-serve, and can scope with Redis ACL rules. TLS takes a CA file and an optional client certificate, with `ssl_cert_reqs` defaulting to required. Azure Managed Redis can use Entra ID through a service principal, a managed identity or the default Azure credential, with tokens renewed in the background. stdio needs no caller credential, and every caller shares the one Redis user.",
      "pricing": "free",
      "pricingNotes": "Free and open source under the MIT licence, with nothing to buy for the server. It needs a Redis database, which can be Redis Open Source on the owner's machine or a managed service such as Redis Cloud or Azure Managed Redis. Redis Cloud prices and its free database were not checked. Redis has no hosted version of this server in the pages read (checked 2026-10-09).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, the docs pages or the source (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": 53,
      "popularity": {
        "githubStars": 633,
        "npmWeekly": null,
        "pypiWeekly": 3644,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://redis.io/docs/latest/integrate/redis-mcp/",
      "llmsTxt": "https://redis.io/llms.txt",
      "registryName": "io.github.redis/mcp-redis",
      "capabilities": [
        "db.document",
        "db.vector",
        "db.hybrid"
      ],
      "tags": [
        "official",
        "local",
        "open-source",
        "self-hosted",
        "mcp",
        "python",
        "docker",
        "database",
        "key-value",
        "vector-search"
      ],
      "lastRelease": "2026-08-04",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 55.7,
        "grade": "C",
        "agentReady": false,
        "rank": 652,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 39,
          "maintenance": 57,
          "payments": 60,
          "reliability": 62,
          "schema": 64,
          "security": 54,
          "transparency": 76
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 62,
            "points": 12.4,
            "reason": "Scored as local software, since the owner runs it over stdio. Official PyPI package `redis-mcp-server` with Python 3.10 to 3.14 stated in the metadata, though the README badge says 3.14 and later (20). The CI workflow runs nightly and concluded in success on main on 9 October 2026, on a five-version Python matrix against a live Redis, with 347 test functions and an 80 per cent coverage floor (25). Fresh PyPI installs failed to start from 28 July to 5 August 2026 after `mcp` 2.0.0 removed the module the server imports. The fix merged on 31 July and reached PyPI five days later (issues #163 and #169). Issue #156, where the console command ignores `REDIS_HOST` and `REDIS_PORT`, has been open since 10 July 2026 with an acknowledgement and two unmerged fixes (13 of 25). Tagged releases with numbers in semantic form, but no changelog file, release notes that are lists of pull request titles, and a patch release (0.5.1) that changed the `unsubscribe` input and added six tools. Issue #137 asking for semver tags has no reply (4 of 15). Version 0.5.1 with the classifier `Development Status :: 4 - Beta` (0)."
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 64,
            "points": 10.4,
            "reason": "Each tool is built from a typed Python signature through FastMCP, so inputs carry JSON Schema, read from the source since we do not run vendor software. `get_vector_from_hash` has no return type, several tools return either a value or an error string, and there are no output schemas (21 of 25). redis.io serves llms.txt and a Markdown form of each docs page, and the README is Markdown (10). Most descriptions are one line plus an argument list. `scan_keys`, `scan_all_keys`, `hybrid_search` and `xreadgroup` say when to use them and what to avoid, and the rest do not (11 of 20). Required fields and defaults are typed, but there are no enums (`distance_metric` and the `info` section are free strings) and the bounds on `block_ms`, `timeout_ms` and `max_messages` are checked in code, not declared in the schema (8 of 15). The README and docs pages give client configuration examples. Tool examples exist only inside a few descriptions, and no list of error responses was found (6 of 15). Tagged versions and GitHub release notes, with no changelog file. The 0.4.0 notes name the docs tool `search_documents` where the source has `search_redis_documents`, and Redis's docs page still links a Smithery install that the README dropped in 0.3.5 (8 of 15)."
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 39,
            "points": 6.34,
            "reason": "53 tools load at once, about 15,700 characters of descriptions, with no toolsets, dynamic loading or read-only subset. Pull request #161 for an allowlist has been open since 28 July 2026 (5 of 25). `scan_keys` pages with a cursor, `lrange` and `zrange` take ranges, `xrange` and `xreadgroup` take a count, `read_messages` caps at 100 and the vector tools take `k`. `scan_all_keys`, `hgetall`, `smembers` and `json_get` return everything with no limit (12 of 20). Failures come back as ordinary results, a string starting `Error` or a dictionary with an `error` key, carrying the Redis error text. Input checks return clear messages, such as the refusal of `block_ms=0`. Nothing marks a result as an MCP error and no error list is documented (9 of 20). No tool declares `readOnlyHint`, `destructiveHint` or `idempotentHint`, and pull request #181 adding them was opened on 8 October 2026. No retry guidance was found, and `lpush`, `xadd` and `publish` are not safe to repeat (3 of 20). Most tools need one or two arguments and defaults are stated in the descriptions. The server is a Python package only (10 of 15)."
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 54,
            "points": 9.45,
            "reason": "The server holds one Redis username and password, which Redis ACL rules can scope to keys and command categories and an admin can revoke, or Entra ID credentials for Azure Managed Redis with token renewal. TLS certificate checks are required by default. The README's main example passes the password inside `--url` on the command line, and every caller shares the one user (22 of 30). The server has no read-only mode, no allowlist and no confirmation before `delete`, `json_del`, `xdel` or `xgroup_destroy`. The README gives an ACL example for a read-only user, and no tool runs an arbitrary command, so `FLUSHALL`, `CONFIG` and `EVAL` are out of reach (9 of 20). Stored values, pub/sub messages and docs search results reach the model as they are. No injection guidance was found in the README or the docs pages read (2 of 15). Logging goes to stderr at WARNING by default, so calls are not recorded unless the level is lowered. The connection names itself `redis-py(mcp-server_v0.5.1)`, which Redis shows in `CLIENT LIST` (6 of 15). Redis has a valid security.txt, a HackerOne disclosure programme, and SOC 2 Type 2 and ISO/IEC 27001 on its trust centre. CI runs Bandit and hardened runners, and Dependabot updates are merged within days. The repository has no SECURITY.md and no published advisories (15 of 20)."
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 60,
            "points": 7.5,
            "reason": "Read with the self-hosted rule. The server is free under the MIT licence and needs no signup of its own, so 20 + 20 + 20. No x402, MPP or L402 (0). It needs a Redis database, which can be free Redis Open Source on the owner's machine. Redis Cloud prices were not checked. No hosted version of this server was found on the pages read."
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 57,
            "points": 4.99,
            "reason": "0.5.1 was tagged on 4 August 2026 and published on GitHub and PyPI on 5 August, 65 days before the check (20). It is the only release in the 90 days before the check. The one before, 0.5.0, was on 16 March 2026 (0). 19 open items, 11 issues and 8 pull requests. Redis staff answered #156, #163 and #169 within weeks and merged the `mcp` pin the day it was reported, while #174, #137 and #31 have no reply and #45 on streamable HTTP has been open since August 2025 (14 of 25). Listed in the official MCP registry as `io.github.redis/mcp-redis`, a GitHub-verified namespace, with 0.5.1 published on 5 August 2026 and marked latest (15). Dependabot updates merged up to 2 October 2026, a lock file and a green nightly CI. The unbounded `mcp` dependency that broke installs in July is now pinned below 2 (8 of 10)."
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 76,
            "points": 6.65,
            "note": "editorial 65, provenance 87",
            "reason": "MIT (30). Local software that connects to the configured Redis. `search_redis_documents` sends each question to redis.io, which the README mentions through `MCP_DOCS_SEARCH_URL` without saying what is sent or kept. The Redis Privacy Policy, last updated 29 November 2024, does not address this software, and no telemetry code was found in the 0.5.1 source (18 of 30). No deprecation policy. The README warns that the main branch may contain breaking changes, and the `unsubscribe` change in 0.5.1 came with no notice (4 of 20). No usage statistics on the evidence of the source. The docs search call can be redirected or switched off with an empty `MCP_DOCS_SEARCH_URL`, which the README does not present as an opt-out (13 of 20)."
          }
        ],
        "assessment": {
          "date": "2026-10-09",
          "basis": "public evidence",
          "confidence": "medium",
          "notes": {
            "ergonomics": "53 tools load at once, about 15,700 characters of descriptions, with no toolsets, dynamic loading or read-only subset. Pull request #161 for an allowlist has been open since 28 July 2026 (5 of 25). `scan_keys` pages with a cursor, `lrange` and `zrange` take ranges, `xrange` and `xreadgroup` take a count, `read_messages` caps at 100 and the vector tools take `k`. `scan_all_keys`, `hgetall`, `smembers` and `json_get` return everything with no limit (12 of 20). Failures come back as ordinary results, a string starting `Error` or a dictionary with an `error` key, carrying the Redis error text. Input checks return clear messages, such as the refusal of `block_ms=0`. Nothing marks a result as an MCP error and no error list is documented (9 of 20). No tool declares `readOnlyHint`, `destructiveHint` or `idempotentHint`, and pull request #181 adding them was opened on 8 October 2026. No retry guidance was found, and `lpush`, `xadd` and `publish` are not safe to repeat (3 of 20). Most tools need one or two arguments and defaults are stated in the descriptions. The server is a Python package only (10 of 15).",
            "maintenance": "0.5.1 was tagged on 4 August 2026 and published on GitHub and PyPI on 5 August, 65 days before the check (20). It is the only release in the 90 days before the check. The one before, 0.5.0, was on 16 March 2026 (0). 19 open items, 11 issues and 8 pull requests. Redis staff answered #156, #163 and #169 within weeks and merged the `mcp` pin the day it was reported, while #174, #137 and #31 have no reply and #45 on streamable HTTP has been open since August 2025 (14 of 25). Listed in the official MCP registry as `io.github.redis/mcp-redis`, a GitHub-verified namespace, with 0.5.1 published on 5 August 2026 and marked latest (15). Dependabot updates merged up to 2 October 2026, a lock file and a green nightly CI. The unbounded `mcp` dependency that broke installs in July is now pinned below 2 (8 of 10).",
            "payments": "Read with the self-hosted rule. The server is free under the MIT licence and needs no signup of its own, so 20 + 20 + 20. No x402, MPP or L402 (0). It needs a Redis database, which can be free Redis Open Source on the owner's machine. Redis Cloud prices were not checked. No hosted version of this server was found on the pages read.",
            "reliability": "Scored as local software, since the owner runs it over stdio. Official PyPI package `redis-mcp-server` with Python 3.10 to 3.14 stated in the metadata, though the README badge says 3.14 and later (20). The CI workflow runs nightly and concluded in success on main on 9 October 2026, on a five-version Python matrix against a live Redis, with 347 test functions and an 80 per cent coverage floor (25). Fresh PyPI installs failed to start from 28 July to 5 August 2026 after `mcp` 2.0.0 removed the module the server imports. The fix merged on 31 July and reached PyPI five days later (issues #163 and #169). Issue #156, where the console command ignores `REDIS_HOST` and `REDIS_PORT`, has been open since 10 July 2026 with an acknowledgement and two unmerged fixes (13 of 25). Tagged releases with numbers in semantic form, but no changelog file, release notes that are lists of pull request titles, and a patch release (0.5.1) that changed the `unsubscribe` input and added six tools. Issue #137 asking for semver tags has no reply (4 of 15). Version 0.5.1 with the classifier `Development Status :: 4 - Beta` (0).",
            "schema": "Each tool is built from a typed Python signature through FastMCP, so inputs carry JSON Schema, read from the source since we do not run vendor software. `get_vector_from_hash` has no return type, several tools return either a value or an error string, and there are no output schemas (21 of 25). redis.io serves llms.txt and a Markdown form of each docs page, and the README is Markdown (10). Most descriptions are one line plus an argument list. `scan_keys`, `scan_all_keys`, `hybrid_search` and `xreadgroup` say when to use them and what to avoid, and the rest do not (11 of 20). Required fields and defaults are typed, but there are no enums (`distance_metric` and the `info` section are free strings) and the bounds on `block_ms`, `timeout_ms` and `max_messages` are checked in code, not declared in the schema (8 of 15). The README and docs pages give client configuration examples. Tool examples exist only inside a few descriptions, and no list of error responses was found (6 of 15). Tagged versions and GitHub release notes, with no changelog file. The 0.4.0 notes name the docs tool `search_documents` where the source has `search_redis_documents`, and Redis's docs page still links a Smithery install that the README dropped in 0.3.5 (8 of 15).",
            "security": "The server holds one Redis username and password, which Redis ACL rules can scope to keys and command categories and an admin can revoke, or Entra ID credentials for Azure Managed Redis with token renewal. TLS certificate checks are required by default. The README's main example passes the password inside `--url` on the command line, and every caller shares the one user (22 of 30). The server has no read-only mode, no allowlist and no confirmation before `delete`, `json_del`, `xdel` or `xgroup_destroy`. The README gives an ACL example for a read-only user, and no tool runs an arbitrary command, so `FLUSHALL`, `CONFIG` and `EVAL` are out of reach (9 of 20). Stored values, pub/sub messages and docs search results reach the model as they are. No injection guidance was found in the README or the docs pages read (2 of 15). Logging goes to stderr at WARNING by default, so calls are not recorded unless the level is lowered. The connection names itself `redis-py(mcp-server_v0.5.1)`, which Redis shows in `CLIENT LIST` (6 of 15). Redis has a valid security.txt, a HackerOne disclosure programme, and SOC 2 Type 2 and ISO/IEC 27001 on its trust centre. CI runs Bandit and hardened runners, and Dependabot updates are merged within days. The repository has no SECURITY.md and no published advisories (15 of 20).",
            "transparency": "MIT (30). Local software that connects to the configured Redis. `search_redis_documents` sends each question to redis.io, which the README mentions through `MCP_DOCS_SEARCH_URL` without saying what is sent or kept. The Redis Privacy Policy, last updated 29 November 2024, does not address this software, and no telemetry code was found in the 0.5.1 source (18 of 30). No deprecation policy. The README warns that the main branch may contain breaking changes, and the `unsubscribe` change in 0.5.1 came with no notice (4 of 20). No usage statistics on the evidence of the source. The docs search call can be redirected or switched off with an empty `MCP_DOCS_SEARCH_URL`, which the README does not present as an opt-out (13 of 20)."
          },
          "sources": [
            {
              "what": "README, tools, install, configuration, Redis ACL and Entra ID",
              "url": "https://github.com/redis/mcp-redis",
              "seen": "2026-10-09"
            },
            {
              "what": "tool definitions, read from a clone of main at e89cff9 (2 October 2026)",
              "url": "https://github.com/redis/mcp-redis/tree/main/src/tools",
              "seen": "2026-10-09"
            },
            {
              "what": "command-line entry point and its defaults",
              "url": "https://github.com/redis/mcp-redis/blob/main/src/main.py",
              "seen": "2026-10-09"
            },
            {
              "what": "connection settings and client name",
              "url": "https://github.com/redis/mcp-redis/blob/main/src/common/connection.py",
              "seen": "2026-10-09"
            },
            {
              "what": "package metadata, dependencies, classifier and supported Python versions",
              "url": "https://github.com/redis/mcp-redis/blob/main/pyproject.toml",
              "seen": "2026-10-09"
            },
            {
              "what": "CI workflow definition",
              "url": "https://github.com/redis/mcp-redis/blob/main/.github/workflows/ci.yml",
              "seen": "2026-10-09"
            },
            {
              "what": "workflow runs on main",
              "url": "https://api.github.com/repos/redis/mcp-redis/actions/runs?branch=main",
              "seen": "2026-10-09"
            },
            {
              "what": "repository statistics",
              "url": "https://api.github.com/repos/redis/mcp-redis",
              "seen": "2026-10-09"
            },
            {
              "what": "GitHub release notes, 0.3.3 to 0.5.1",
              "url": "https://api.github.com/repos/redis/mcp-redis/releases",
              "seen": "2026-10-09"
            },
            {
              "what": "open and closed issues and pull requests",
              "url": "https://github.com/redis/mcp-redis/issues",
              "seen": "2026-10-09"
            },
            {
              "what": "issue #163, PyPI package fails to start with mcp 2.0.0",
              "url": "https://github.com/redis/mcp-redis/issues/163",
              "seen": "2026-10-09"
            },
            {
              "what": "issue #169, request to publish 0.5.1 to PyPI",
              "url": "https://github.com/redis/mcp-redis/issues/169",
              "seen": "2026-10-09"
            },
            {
              "what": "issue #156, command-line defaults override environment variables",
              "url": "https://github.com/redis/mcp-redis/issues/156",
              "seen": "2026-10-09"
            },
            {
              "what": "repository security advisories (none)",
              "url": "https://api.github.com/repos/redis/mcp-redis/security-advisories",
              "seen": "2026-10-09"
            },
            {
              "what": "MCP registry search",
              "url": "https://registry.modelcontextprotocol.io/v0/servers?search=io.github.redis",
              "seen": "2026-10-09"
            },
            {
              "what": "PyPI weekly downloads",
              "url": "https://pypistats.org/api/packages/redis-mcp-server/recent",
              "seen": "2026-10-09"
            },
            {
              "what": "Redis MCP docs, overview",
              "url": "https://redis.io/docs/latest/integrate/redis-mcp/index.html.md",
              "seen": "2026-10-09"
            },
            {
              "what": "Redis MCP docs, install and configuration",
              "url": "https://redis.io/docs/latest/integrate/redis-mcp/install/index.html.md",
              "seen": "2026-10-09"
            },
            {
              "what": "Redis MCP docs, client configuration",
              "url": "https://redis.io/docs/latest/integrate/redis-mcp/client-conf/index.html.md",
              "seen": "2026-10-09"
            },
            {
              "what": "llms.txt",
              "url": "https://redis.io/llms.txt",
              "seen": "2026-10-09"
            },
            {
              "what": "robots.txt, with Content-Signal ai-input=yes",
              "url": "https://redis.io/robots.txt",
              "seen": "2026-10-09"
            },
            {
              "what": "security.txt",
              "url": "https://redis.io/.well-known/security.txt",
              "seen": "2026-10-09"
            },
            {
              "what": "trust centre, compliance list",
              "url": "https://trust.redis.io/",
              "seen": "2026-10-09"
            },
            {
              "what": "privacy policy",
              "url": "https://redis.io/legal/privacy-policy/",
              "seen": "2026-10-09"
            },
            {
              "what": "domain registration",
              "url": "https://rdap.identitydigital.services/rdap/domain/redis.io",
              "seen": "2026-10-09"
            }
          ],
          "openQuestions": [
            "The lead was right on the vendor, the repository and the docs page. It did not say the server is stdio only and marked beta",
            "unchecked: the PyPI project page and JSON API, which robots.txt disallows. The 0.5.1 date rests on the git tag (4 August 2026), the GitHub release and the MCP registry entry (both 5 August)",
            "unchecked: tool definitions as a client receives them from `tools/list`. We did not run the server, so input schemas and the absence of annotations are read from the source",
            "unchecked: the `mcp/redis` image on Docker Hub, which the README calls official. Who builds it and from which version was not read",
            "unchecked: what the docs search endpoint at `redis.io/convai/api/docs/search` logs or keeps. We sent it no request",
            "unchecked: Redis Cloud pricing and its free database, which matter only when the server points at Redis Cloud",
            "unchecked: the HackerOne programme page and whether mcp-redis is in scope",
            "unchecked: whether the redis organisation has a default SECURITY.md outside this repository. None is in the repository itself",
            "The trust centre answered a request for its robots.txt with the trust page itself, so it has no robots file. The compliance names were read from that one response",
            "No privacy or terms document addresses this software, so `provenance.privacy` and `provenance.terms` are both left out"
          ]
        },
        "negative": -2,
        "negativeNotes": [
          "-2: release 0.5.1, tagged 4 August 2026 as a patch release, changed the `unsubscribe` tool's input from `channel` to `subscription_id` and the return type of `subscribe` (pull request #133). The release notes give only the pull request title, 'Add stateful Redis pub/sub subscriptions with message polling'. The earlier tools opened a new pub/sub object on each call and so could not deliver messages, which is why the deduction is reduced (https://github.com/redis/mcp-redis/releases/tag/0.5.1)."
        ],
        "verdict": "Redis's server, under the MIT licence, maps 53 tools onto Redis commands, with typed inputs and a nightly CI run that passed on 9 October 2026. It has no read-only mode, no tool annotations and no changelog file, release 0.5.1 changed the `unsubscribe` input without a note, and PyPI installs failed to start from 28 July to 5 August 2026.",
        "bestFor": "Teams with a Redis database that want an agent to read and write keys, streams, JSON documents and vector indexes on a developer's machine.",
        "strengths": [
          "Maintained by Redis under the MIT licence, with 0.5.1 marked latest in the official MCP registry as `io.github.redis/mcp-redis`",
          "Nightly CI passed on main on 9 October 2026 across Python 3.10 to 3.14 against a live Redis, with 347 test functions and an 80 per cent coverage floor",
          "No tool runs an arbitrary Redis command. Each of the 53 tools maps to a named operation, and none exposes `FLUSHALL`, `CONFIG` or `EVAL`",
          "Connects with a Redis ACL user, TLS with certificate checks required by default, client certificates, or Entra ID for Azure Managed Redis",
          "Blocking reads are capped in the server. `xreadgroup` and `read_messages` refuse waits over 5,000 ms, and pub/sub subscriptions are capped at 50"
        ],
        "weaknesses": [
          "53 tools load at once, with no toolsets and no read-only subset. Pull request #161 for a tool allowlist has been open since 28 July 2026",
          "No tool declares `readOnlyHint` or `destructiveHint`, and nothing asks for confirmation before `delete`, `json_del` or `xgroup_destroy`. Pull request #181 was opened on 8 October 2026",
          "Fresh PyPI installs failed to start from 28 July to 5 August 2026, because 0.5.0 had no upper bound on the `mcp` package (issues #163 and #169)",
          "Started through the `redis-mcp-server` command without flags, the server ignores `REDIS_HOST` and `REDIS_PORT` and connects to 127.0.0.1:6379. Issue #156 has been open since 10 July 2026",
          "No changelog file, no SECURITY.md and no prompt-injection guidance. Patch release 0.5.1 changed the `unsubscribe` input from `channel` to `subscription_id` without a note"
        ],
        "agentNotes": [
          "Pass the connection with `--url` or explicit flags. The `redis-mcp-server` command overrides `REDIS_HOST`, `REDIS_PORT`, `REDIS_DB`, `REDIS_SSL` and `REDIS_CLUSTER_MODE` with its own defaults when flags are absent",
          "Use `scan_keys` with the returned cursor until it is 0. `scan_all_keys`, `hgetall`, `smembers` and `json_get` return everything they match with no limit",
          "Read failures from the text. Tools return strings such as `Error ...` or an `error` key in place of an MCP error result",
          "Keep the `subscription_id` from `subscribe` or `psubscribe` and pass it to `read_messages` and `unsubscribe`. Idle subscriptions close after 300 seconds",
          "Connect as a Redis ACL user limited to the keys and command categories needed, since the server has no read-only switch and `delete` runs without confirmation"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 55.7
          }
        ],
        "editorialScores": {
          "ergonomics": 39,
          "maintenance": 57,
          "payments": 60,
          "reliability": 62,
          "schema": 64,
          "security": 54,
          "transparency": 65
        },
        "provenanceScore": 87
      },
      "connect": {
        "install": "pip install redis-mcp-server",
        "config": {
          "mcpServers": {
            "RedisMCPServer": {
              "args": [
                "--from",
                "redis-mcp-server@latest",
                "redis-mcp-server",
                "--url",
                "redis://localhost:6379/0"
              ],
              "command": "uvx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/db.document",
        "tool": "https://letme.dev/redis-mcp"
      },
      "notable": [
        "53 tools in 11 modules at 0.5.1, covering strings (2), hashes (7), lists (7), sets (3), sorted sets (3), streams (7), pub/sub (5), JSON (3), the query engine (6), server information (3) and key utilities with docs search (7) (https://github.com/redis/mcp-redis/tree/main/src/tools)",
        "stdio is the only transport. The README says streamable HTTP will be added later, and issue #45 asking for it has been open since 13 August 2025 (https://github.com/redis/mcp-redis#features)",
        "`search_redis_documents` sends the question as a GET request to `https://redis.io/convai/api/docs/search` with a `Redis-MCP-Server/\u003cversion\u003e` User-Agent. `MCP_DOCS_SEARCH_URL` changes the address, and an empty value turns the tool off (https://github.com/redis/mcp-redis/blob/main/src/tools/misc.py)",
        "Release 0.5.1 of 4 August 2026 added four stream consumer-group tools, `psubscribe` and `read_messages`, and changed `unsubscribe` to take a `subscription_id` in place of a `channel`. The release notes list the pull request titles only (https://github.com/redis/mcp-redis/releases/tag/0.5.1)",
        "The `mcp` package's 2.0.0 release on 28 July 2026 removed the module the server imports. PyPI still served 0.5.0 with no upper bound until 0.5.1 was published on 5 August 2026 (https://github.com/redis/mcp-redis/issues/163)",
        "The README gives a Redis ACL example for a read-only user, `ACL SETUSER readonlyuser on \u003emypassword ~* +@read -@write`. The server itself has no read-only setting (https://github.com/redis/mcp-redis#redis-acl)",
        "The server names itself to Redis as `redis-py(mcp-server_v0.5.1)`, so its connections can be told apart in `CLIENT LIST` (https://github.com/redis/mcp-redis/blob/main/src/common/connection.py)",
        "The package metadata carries the classifier `Development Status :: 4 - Beta`, and the README says the main branch may contain breaking changes (https://github.com/redis/mcp-redis/blob/main/pyproject.toml)"
      ],
      "area": "developer",
      "details": [
        {
          "label": "What is graded",
          "value": "The open-source server in redis/mcp-redis, version 0.5.1, which the owner runs over stdio. Read from the source, the README and Redis's docs pages. We did not install or run it"
        },
        {
          "label": "Install",
          "value": "`uvx --from redis-mcp-server@latest redis-mcp-server --url redis://localhost:6379/0`, or `pip install redis-mcp-server`. Python 3.10 to 3.14 per the package metadata. The README also names the `mcp/redis` image on Docker Hub and a Dockerfile"
        },
        {
          "label": "Transports",
          "value": "stdio only. Streamable HTTP is not supported at 0.5.1"
        },
        {
          "label": "Tools",
          "value": "Strings `set`, `get`. Hashes `hset`, `hget`, `hdel`, `hgetall`, `hexists`, `set_vector_in_hash`, `get_vector_from_hash`. Lists `lpush`, `rpush`, `lpop`, `rpop`, `lrange`, `llen`, `lrem`. Sets `sadd`, `srem`, `smembers`. Sorted sets `zadd`, `zrange`, `zrem`. Streams `xadd`, `xrange`, `xdel`, `xgroup_create`, `xgroup_destroy`, `xreadgroup`, `xack`. Pub/sub `publish`, `subscribe`, `psubscribe`, `read_messages`, `unsubscribe`. JSON `json_set`, `json_get`, `json_del`. Query engine `get_indexes`, `get_index_info`, `get_indexed_keys_number`, `create_vector_index_hash`, `vector_search_hash`, `hybrid_search`. Server `dbsize`, `info`, `client_list`. Keys `delete`, `type`, `expire`, `rename`, `scan_keys`, `scan_all_keys`. Docs `search_redis_documents`"
        },
        {
          "label": "Credentials",
          "value": "`--url redis://user:secret@host:port/db` (or `rediss://` for TLS), or `--host`, `--port`, `--db`, `--username`, `--password`, `--ssl` and the `--ssl-*` flags, or the `REDIS_*` environment variables. Entra ID through `REDIS_ENTRAID_AUTH_FLOW` and its companions. `--cluster-mode` for Redis Cluster"
        },
        {
          "label": "Restrictions",
          "value": "No read-only mode, tool allowlist or confirmation step in the server. Access is limited by the Redis ACL of the user it connects as. No tool runs an arbitrary command"
        },
        {
          "label": "Limits",
          "value": "`xreadgroup` blocks for at most 5,000 ms and refuses 0. `read_messages` waits at most 5,000 ms and returns at most 100 messages. 50 active pub/sub subscriptions, each closed after 300 idle seconds. Docs search times out after 10 seconds. Ten connections in the pool"
        },
        {
          "label": "Logging",
          "value": "Python logging to stderr at WARNING by default, changed with `MCP_REDIS_LOG_LEVEL`. No per-call log at the default level"
        },
        {
          "label": "Usage statistics",
          "value": "No telemetry code was found in the 0.5.1 source. The only outbound call other than to Redis (and to Microsoft for Entra ID tokens) is `search_redis_documents`, which queries redis.io"
        },
        {
          "label": "Releases",
          "value": "0.1.0 tagged 15 April 2025, 0.2.0 on 8 July 2025, 0.3.0 to 0.3.6 between 3 October and 7 November 2025, 0.4.0 and 0.4.1 on 25 and 26 November 2025, 0.5.0 on 16 March 2026, 0.5.1 tagged 4 August 2026 and published on 5 August"
        }
      ],
      "provenance": {
        "legalEntity": "Redis Ltd.",
        "domain": "redis.io",
        "domainRegistered": "2010-05-28",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/redis/mcp-redis/releases",
        "securityTxt": "valid",
        "checked": "2026-10-09",
        "notes": [
          "No terms document governs this software beyond the MIT licence, so `terms` is left out.",
          "`privacy` is left out. The Redis Privacy Policy (last updated 29 November 2024, https://redis.io/legal/privacy-policy/) names Redis Ltd. and its affiliates and covers Redis's sites and services. It does not address this open-source server, which runs on the owner's machine. Questions sent by `search_redis_documents` do go to redis.io.",
          "The copyright line in the `LICENSE` file reads Redis, inc. The privacy policy names Redis Ltd., which is used here.",
          "redis.io/.well-known/security.txt gives a contact page, a HackerOne disclosure programme as policy and an expiry of 19 December 2030.",
          "RDAP for redis.io gives a registration date of 2010-05-28.",
          "The server runs on the owner's machine and connects to the Redis it is configured for, so there is no vendor endpoint to check. The changelog link is the GitHub releases page, since the repository has no changelog file."
        ],
        "score": 87,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "Redis Ltd.",
            "points": 20,
            "max": 20,
            "state": "ok"
          },
          {
            "check": "Domain age",
            "value": "redis.io, registered 2010-05-28 (16 years)",
            "points": 15,
            "max": 15,
            "state": "ok"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "no hosted endpoint",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Terms of service",
            "value": "nothing hosted, so the MIT licence stands in",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Privacy policy",
            "value": "nothing hosted, not scored",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Status page",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "Changelog",
            "value": "published",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "security.txt",
            "value": "valid",
            "points": 10,
            "max": 10,
            "state": "ok"
          }
        ]
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/redis-mcp.json",
      "live": {
        "slug": "redis-mcp",
        "versions": [
          {
            "registry": "github",
            "name": "redis/mcp-redis",
            "version": "0.5.1",
            "released": "2026-08-05",
            "seenAt": "2026-10-09T17:16:10.784079074Z"
          },
          {
            "registry": "pypi",
            "name": "redis-mcp-server",
            "version": "0.5.1",
            "released": "2026-08-05",
            "seenAt": "2026-10-09T17:16:10.590203387Z"
          }
        ],
        "githubStars": 633,
        "pypiWeekly": 3644,
        "updatedAt": "2026-10-09T17:16:10.784079074Z"
      }
    },
    "verify": {
      "accepts": "a page on redis.io or one of its subdomains, or the README of github.com/redis/mcp-redis",
      "badgeUrl": "https://www.anchorterminal.com/badges/redis-mcp.svg",
      "body": {
        "slug": "redis-mcp",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/redis-mcp",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/redis-mcp\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/redis-mcp.svg\" alt=\"Redis MCP on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![Redis MCP on Anchor Terminal](https://www.anchorterminal.com/badges/redis-mcp.svg)](https://www.anchorterminal.com/tools/redis-mcp)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/redis-mcp\"\u003eRedis MCP on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/redis-mcp",
    "json": "https://www.anchorterminal.com/tools/redis-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/redis-mcp.md",
    "slim": "https://www.anchorterminal.com/tools/redis-mcp.min.md"
  },
  "markdown": "## Overview\n\n**Grade C · 55.7/100 · rank #652 of 950 · #9 in Databases \u0026 files · not agent-ready · confidence medium**\n\n\n## Assessment\n\nRedis's server, under the MIT licence, maps 53 tools onto Redis commands, with typed inputs and a nightly CI run that passed on 9 October 2026. It has no read-only mode, no tool annotations and no changelog file, release 0.5.1 changed the `unsubscribe` input without a note, and PyPI installs failed to start from 28 July to 5 August 2026.\n\n## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | Redis (https://redis.io) |\n| Kind | MCP server |\n| Category | Databases \u0026 files (https://www.anchorterminal.com/categories/data) |\n| Transport | stdio |\n| Auth | OAuth or key · The server signs in to Redis with a username and password (`--url`, `--username` and `--password`, or `REDIS_USERNAME` and `REDIS_PWD`), which a Redis admin creates, self-serve, and can scope with Redis ACL rules. TLS takes a CA file and an optional client certificate, with `ssl_cert_reqs` defaulting to required. Azure Managed Redis can use Entra ID through a service principal, a managed identity or the default Azure credential, with tokens renewed in the background. stdio needs no caller credential, and every caller shares the one Redis user. |\n| Pricing | Free (Free · OSS) · Free and open source under the MIT licence, with nothing to buy for the server. It needs a Redis database, which can be Redis Open Source on the owner's machine or a managed service such as Redis Cloud or Azure Managed Redis. Redis Cloud prices and its free database were not checked. Redis has no hosted version of this server in the pages read (checked 2026-10-09). |\n| x402 | No · No x402, MPP or L402 in the README, the docs pages or the source (checked 2026-10-09). |\n| Licence | MIT |\n| Tools exposed | 53 |\n| Packages | pypi: `redis-mcp-server`; oci: `docker.io/mcp/redis` |\n| MCP registry name | `io.github.redis/mcp-redis` |\n| Source | https://github.com/redis/mcp-redis |\n| Docs | https://redis.io/docs/latest/integrate/redis-mcp/ |\n| llms.txt | https://redis.io/llms.txt |\n| Last release | 2026-08-04 |\n| GitHub stars | 633 (as of 2026-10-09) |\n| PyPI downloads / week | 3,644 |\n| What is graded | The open-source server in redis/mcp-redis, version 0.5.1, which the owner runs over stdio. Read from the source, the README and Redis's docs pages. We did not install or run it |\n| Install | `uvx --from redis-mcp-server@latest redis-mcp-server --url redis://localhost:6379/0`, or `pip install redis-mcp-server`. Python 3.10 to 3.14 per the package metadata. The README also names the `mcp/redis` image on Docker Hub and a Dockerfile |\n| Transports | stdio only. Streamable HTTP is not supported at 0.5.1 |\n| Tools | Strings `set`, `get`. Hashes `hset`, `hget`, `hdel`, `hgetall`, `hexists`, `set_vector_in_hash`, `get_vector_from_hash`. Lists `lpush`, `rpush`, `lpop`, `rpop`, `lrange`, `llen`, `lrem`. Sets `sadd`, `srem`, `smembers`. Sorted sets `zadd`, `zrange`, `zrem`. Streams `xadd`, `xrange`, `xdel`, `xgroup_create`, `xgroup_destroy`, `xreadgroup`, `xack`. Pub/sub `publish`, `subscribe`, `psubscribe`, `read_messages`, `unsubscribe`. JSON `json_set`, `json_get`, `json_del`. Query engine `get_indexes`, `get_index_info`, `get_indexed_keys_number`, `create_vector_index_hash`, `vector_search_hash`, `hybrid_search`. Server `dbsize`, `info`, `client_list`. Keys `delete`, `type`, `expire`, `rename`, `scan_keys`, `scan_all_keys`. Docs `search_redis_documents` |\n| Credentials | `--url redis://user:secret@host:port/db` (or `rediss://` for TLS), or `--host`, `--port`, `--db`, `--username`, `--password`, `--ssl` and the `--ssl-*` flags, or the `REDIS_*` environment variables. Entra ID through `REDIS_ENTRAID_AUTH_FLOW` and its companions. `--cluster-mode` for Redis Cluster |\n| Restrictions | No read-only mode, tool allowlist or confirmation step in the server. Access is limited by the Redis ACL of the user it connects as. No tool runs an arbitrary command |\n| Limits | `xreadgroup` blocks for at most 5,000 ms and refuses 0. `read_messages` waits at most 5,000 ms and returns at most 100 messages. 50 active pub/sub subscriptions, each closed after 300 idle seconds. Docs search times out after 10 seconds. Ten connections in the pool |\n| Logging | Python logging to stderr at WARNING by default, changed with `MCP_REDIS_LOG_LEVEL`. No per-call log at the default level |\n| Usage statistics | No telemetry code was found in the 0.5.1 source. The only outbound call other than to Redis (and to Microsoft for Entra ID tokens) is `search_redis_documents`, which queries redis.io |\n| Releases | 0.1.0 tagged 15 April 2025, 0.2.0 on 8 July 2025, 0.3.0 to 0.3.6 between 3 October and 7 November 2025, 0.4.0 and 0.4.1 on 25 and 26 November 2025, 0.5.0 on 16 March 2026, 0.5.1 tagged 4 August 2026 and published on 5 August |\n| Capabilities | db.document, db.vector, db.hybrid |\n| Tags | official, local, open-source, self-hosted, mcp, python, docker, database, key-value, vector-search |\n| JSON | https://www.anchorterminal.com/api/v1/tools/redis-mcp.json |\n\n## Score breakdown (methodology v0.4, October 2026 research run)\n\nAssessed 2026-10-09 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 62 | 12.4 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 64 | 10.4 |\n| Agent ergonomics | 13% | 16.2 | 39 | 6.3 |\n| Security \u0026 auth | 14% | 17.5 | 54 | 9.4 |\n| Payments \u0026 pricing | 10% | 12.5 | 60 | 7.5 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 57 | 5.0 |\n| Transparency \u0026 trust (editorial 65, provenance 87) | 7% | 8.8 | 76 | 6.7 |\n| Negative events | up to −15 | up to −15 | -2: release 0.5.1, tagged 4 August 2026 as a patch release, changed the `unsubscribe` tool's input from `channel` to `subscription_id` and the return type of `subscribe` (pull request #133). The release notes give only the pull request title, 'Add stateful Redis pub/sub subscriptions with message polling'. The earlier tools opened a new pub/sub object on each call and so could not deliver messages, which is why the deduction is reduced (https://github.com/redis/mcp-redis/releases/tag/0.5.1).  | -2 |\n| **Total** | | | | **55.7 → C** |\n\n### Why each score\n\n- Reliability 62: Scored as local software, since the owner runs it over stdio. Official PyPI package `redis-mcp-server` with Python 3.10 to 3.14 stated in the metadata, though the README badge says 3.14 and later (20). The CI workflow runs nightly and concluded in success on main on 9 October 2026, on a five-version Python matrix against a live Redis, with 347 test functions and an 80 per cent coverage floor (25). Fresh PyPI installs failed to start from 28 July to 5 August 2026 after `mcp` 2.0.0 removed the module the server imports. The fix merged on 31 July and reached PyPI five days later (issues #163 and #169). Issue #156, where the console command ignores `REDIS_HOST` and `REDIS_PORT`, has been open since 10 July 2026 with an acknowledgement and two unmerged fixes (13 of 25). Tagged releases with numbers in semantic form, but no changelog file, release notes that are lists of pull request titles, and a patch release (0.5.1) that changed the `unsubscribe` input and added six tools. Issue #137 asking for semver tags has no reply (4 of 15). Version 0.5.1 with the classifier `Development Status :: 4 - Beta` (0).\n- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 64: Each tool is built from a typed Python signature through FastMCP, so inputs carry JSON Schema, read from the source since we do not run vendor software. `get_vector_from_hash` has no return type, several tools return either a value or an error string, and there are no output schemas (21 of 25). redis.io serves llms.txt and a Markdown form of each docs page, and the README is Markdown (10). Most descriptions are one line plus an argument list. `scan_keys`, `scan_all_keys`, `hybrid_search` and `xreadgroup` say when to use them and what to avoid, and the rest do not (11 of 20). Required fields and defaults are typed, but there are no enums (`distance_metric` and the `info` section are free strings) and the bounds on `block_ms`, `timeout_ms` and `max_messages` are checked in code, not declared in the schema (8 of 15). The README and docs pages give client configuration examples. Tool examples exist only inside a few descriptions, and no list of error responses was found (6 of 15). Tagged versions and GitHub release notes, with no changelog file. The 0.4.0 notes name the docs tool `search_documents` where the source has `search_redis_documents`, and Redis's docs page still links a Smithery install that the README dropped in 0.3.5 (8 of 15).\n- Agent ergonomics 39: 53 tools load at once, about 15,700 characters of descriptions, with no toolsets, dynamic loading or read-only subset. Pull request #161 for an allowlist has been open since 28 July 2026 (5 of 25). `scan_keys` pages with a cursor, `lrange` and `zrange` take ranges, `xrange` and `xreadgroup` take a count, `read_messages` caps at 100 and the vector tools take `k`. `scan_all_keys`, `hgetall`, `smembers` and `json_get` return everything with no limit (12 of 20). Failures come back as ordinary results, a string starting `Error` or a dictionary with an `error` key, carrying the Redis error text. Input checks return clear messages, such as the refusal of `block_ms=0`. Nothing marks a result as an MCP error and no error list is documented (9 of 20). No tool declares `readOnlyHint`, `destructiveHint` or `idempotentHint`, and pull request #181 adding them was opened on 8 October 2026. No retry guidance was found, and `lpush`, `xadd` and `publish` are not safe to repeat (3 of 20). Most tools need one or two arguments and defaults are stated in the descriptions. The server is a Python package only (10 of 15).\n- Security \u0026 auth 54: The server holds one Redis username and password, which Redis ACL rules can scope to keys and command categories and an admin can revoke, or Entra ID credentials for Azure Managed Redis with token renewal. TLS certificate checks are required by default. The README's main example passes the password inside `--url` on the command line, and every caller shares the one user (22 of 30). The server has no read-only mode, no allowlist and no confirmation before `delete`, `json_del`, `xdel` or `xgroup_destroy`. The README gives an ACL example for a read-only user, and no tool runs an arbitrary command, so `FLUSHALL`, `CONFIG` and `EVAL` are out of reach (9 of 20). Stored values, pub/sub messages and docs search results reach the model as they are. No injection guidance was found in the README or the docs pages read (2 of 15). Logging goes to stderr at WARNING by default, so calls are not recorded unless the level is lowered. The connection names itself `redis-py(mcp-server_v0.5.1)`, which Redis shows in `CLIENT LIST` (6 of 15). Redis has a valid security.txt, a HackerOne disclosure programme, and SOC 2 Type 2 and ISO/IEC 27001 on its trust centre. CI runs Bandit and hardened runners, and Dependabot updates are merged within days. The repository has no SECURITY.md and no published advisories (15 of 20).\n- Payments \u0026 pricing 60: Read with the self-hosted rule. The server is free under the MIT licence and needs no signup of its own, so 20 + 20 + 20. No x402, MPP or L402 (0). It needs a Redis database, which can be free Redis Open Source on the owner's machine. Redis Cloud prices were not checked. No hosted version of this server was found on the pages read.\n- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 57: 0.5.1 was tagged on 4 August 2026 and published on GitHub and PyPI on 5 August, 65 days before the check (20). It is the only release in the 90 days before the check. The one before, 0.5.0, was on 16 March 2026 (0). 19 open items, 11 issues and 8 pull requests. Redis staff answered #156, #163 and #169 within weeks and merged the `mcp` pin the day it was reported, while #174, #137 and #31 have no reply and #45 on streamable HTTP has been open since August 2025 (14 of 25). Listed in the official MCP registry as `io.github.redis/mcp-redis`, a GitHub-verified namespace, with 0.5.1 published on 5 August 2026 and marked latest (15). Dependabot updates merged up to 2 October 2026, a lock file and a green nightly CI. The unbounded `mcp` dependency that broke installs in July is now pinned below 2 (8 of 10).\n- Transparency \u0026 trust 76: MIT (30). Local software that connects to the configured Redis. `search_redis_documents` sends each question to redis.io, which the README mentions through `MCP_DOCS_SEARCH_URL` without saying what is sent or kept. The Redis Privacy Policy, last updated 29 November 2024, does not address this software, and no telemetry code was found in the 0.5.1 source (18 of 30). No deprecation policy. The README warns that the main branch may contain breaking changes, and the `unsubscribe` change in 0.5.1 came with no notice (4 of 20). No usage statistics on the evidence of the source. The docs search call can be redirected or switched off with an empty `MCP_DOCS_SEARCH_URL`, which the README does not present as an opt-out (13 of 20).\n\nFix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (19 items): https://www.anchorterminal.com/fixes/redis-mcp.md (JSON https://www.anchorterminal.com/fixes/redis-mcp.json)\n\n### What we couldn't check\n\n- The lead was right on the vendor, the repository and the docs page. It did not say the server is stdio only and marked beta\n- unchecked: the PyPI project page and JSON API, which robots.txt disallows. The 0.5.1 date rests on the git tag (4 August 2026), the GitHub release and the MCP registry entry (both 5 August)\n- unchecked: tool definitions as a client receives them from `tools/list`. We did not run the server, so input schemas and the absence of annotations are read from the source\n- unchecked: the `mcp/redis` image on Docker Hub, which the README calls official. Who builds it and from which version was not read\n- unchecked: what the docs search endpoint at `redis.io/convai/api/docs/search` logs or keeps. We sent it no request\n- unchecked: Redis Cloud pricing and its free database, which matter only when the server points at Redis Cloud\n- unchecked: the HackerOne programme page and whether mcp-redis is in scope\n- unchecked: whether the redis organisation has a default SECURITY.md outside this repository. None is in the repository itself\n- The trust centre answered a request for its robots.txt with the trust page itself, so it has no robots file. The compliance names were read from that one response\n- No privacy or terms document addresses this software, so `provenance.privacy` and `provenance.terms` are both left out\n\n### Sources\n\n- README, tools, install, configuration, Redis ACL and Entra ID: \u003chttps://github.com/redis/mcp-redis\u003e (seen 2026-10-09)\n- tool definitions, read from a clone of main at e89cff9 (2 October 2026): \u003chttps://github.com/redis/mcp-redis/tree/main/src/tools\u003e (seen 2026-10-09)\n- command-line entry point and its defaults: \u003chttps://github.com/redis/mcp-redis/blob/main/src/main.py\u003e (seen 2026-10-09)\n- connection settings and client name: \u003chttps://github.com/redis/mcp-redis/blob/main/src/common/connection.py\u003e (seen 2026-10-09)\n- package metadata, dependencies, classifier and supported Python versions: \u003chttps://github.com/redis/mcp-redis/blob/main/pyproject.toml\u003e (seen 2026-10-09)\n- CI workflow definition: \u003chttps://github.com/redis/mcp-redis/blob/main/.github/workflows/ci.yml\u003e (seen 2026-10-09)\n- workflow runs on main: \u003chttps://api.github.com/repos/redis/mcp-redis/actions/runs?branch=main\u003e (seen 2026-10-09)\n- repository statistics: \u003chttps://api.github.com/repos/redis/mcp-redis\u003e (seen 2026-10-09)\n- GitHub release notes, 0.3.3 to 0.5.1: \u003chttps://api.github.com/repos/redis/mcp-redis/releases\u003e (seen 2026-10-09)\n- open and closed issues and pull requests: \u003chttps://github.com/redis/mcp-redis/issues\u003e (seen 2026-10-09)\n- issue #163, PyPI package fails to start with mcp 2.0.0: \u003chttps://github.com/redis/mcp-redis/issues/163\u003e (seen 2026-10-09)\n- issue #169, request to publish 0.5.1 to PyPI: \u003chttps://github.com/redis/mcp-redis/issues/169\u003e (seen 2026-10-09)\n- issue #156, command-line defaults override environment variables: \u003chttps://github.com/redis/mcp-redis/issues/156\u003e (seen 2026-10-09)\n- repository security advisories (none): \u003chttps://api.github.com/repos/redis/mcp-redis/security-advisories\u003e (seen 2026-10-09)\n- MCP registry search: \u003chttps://registry.modelcontextprotocol.io/v0/servers?search=io.github.redis\u003e (seen 2026-10-09)\n- PyPI weekly downloads: \u003chttps://pypistats.org/api/packages/redis-mcp-server/recent\u003e (seen 2026-10-09)\n- Redis MCP docs, overview: \u003chttps://redis.io/docs/latest/integrate/redis-mcp/index.html.md\u003e (seen 2026-10-09)\n- Redis MCP docs, install and configuration: \u003chttps://redis.io/docs/latest/integrate/redis-mcp/install/index.html.md\u003e (seen 2026-10-09)\n- Redis MCP docs, client configuration: \u003chttps://redis.io/docs/latest/integrate/redis-mcp/client-conf/index.html.md\u003e (seen 2026-10-09)\n- llms.txt: \u003chttps://redis.io/llms.txt\u003e (seen 2026-10-09)\n- robots.txt, with Content-Signal ai-input=yes: \u003chttps://redis.io/robots.txt\u003e (seen 2026-10-09)\n- security.txt: \u003chttps://redis.io/.well-known/security.txt\u003e (seen 2026-10-09)\n- trust centre, compliance list: \u003chttps://trust.redis.io/\u003e (seen 2026-10-09)\n- privacy policy: \u003chttps://redis.io/legal/privacy-policy/\u003e (seen 2026-10-09)\n- domain registration: \u003chttps://rdap.identitydigital.services/rdap/domain/redis.io\u003e (seen 2026-10-09)\n\n## Who's behind it (provenance 87/100, checked 2026-10-09)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | Redis Ltd. | 20/20 |\n| Domain age | redis.io, registered 2010-05-28 (16 years) | 15/15 |\n| Endpoint on the vendor's domain | no hosted endpoint | n/a |\n| Terms of service | nothing hosted, so the MIT licence stands in | 10/10 |\n| Privacy policy | nothing hosted, not scored | n/a |\n| Status page | not found | 0/10 |\n| Changelog | published | 10/10 |\n| security.txt | valid | 10/10 |\n\nNo terms document governs this software beyond the MIT licence, so `terms` is left out.\n\n`privacy` is left out. The Redis Privacy Policy (last updated 29 November 2024, https://redis.io/legal/privacy-policy/) names Redis Ltd. and its affiliates and covers Redis's sites and services. It does not address this open-source server, which runs on the owner's machine. Questions sent by `search_redis_documents` do go to redis.io.\n\nThe copyright line in the `LICENSE` file reads Redis, inc. The privacy policy names Redis Ltd., which is used here.\n\nredis.io/.well-known/security.txt gives a contact page, a HackerOne disclosure programme as policy and an expiry of 19 December 2030.\n\nRDAP for redis.io gives a registration date of 2010-05-28.\n\nThe server runs on the owner's machine and connects to the Redis it is configured for, so there is no vendor endpoint to check. The changelog link is the GitHub releases page, since the repository has no changelog file.\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service**. Nothing is hosted by the vendor, so there are no terms of service to read. The MIT licence stands in and the check scores in full.\n\n\n**Privacy policy**. Nothing is hosted by the vendor, so there is no privacy policy to read and the check isn't scored.\n\n\n## Live (updated 2026-10-09 17:16 UTC)\n\n- github `redis/mcp-redis` 0.5.1, released 2026-08-05\n- pypi `redis-mcp-server` 0.5.1, released 2026-08-05\n- Always current: https://www.anchorterminal.com/api/v1/live/redis-mcp.json\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Strengths\n\n- Maintained by Redis under the MIT licence, with 0.5.1 marked latest in the official MCP registry as `io.github.redis/mcp-redis`\n- Nightly CI passed on main on 9 October 2026 across Python 3.10 to 3.14 against a live Redis, with 347 test functions and an 80 per cent coverage floor\n- No tool runs an arbitrary Redis command. Each of the 53 tools maps to a named operation, and none exposes `FLUSHALL`, `CONFIG` or `EVAL`\n- Connects with a Redis ACL user, TLS with certificate checks required by default, client certificates, or Entra ID for Azure Managed Redis\n- Blocking reads are capped in the server. `xreadgroup` and `read_messages` refuse waits over 5,000 ms, and pub/sub subscriptions are capped at 50\n\n## Weaknesses\n\n- 53 tools load at once, with no toolsets and no read-only subset. Pull request #161 for a tool allowlist has been open since 28 July 2026\n- No tool declares `readOnlyHint` or `destructiveHint`, and nothing asks for confirmation before `delete`, `json_del` or `xgroup_destroy`. Pull request #181 was opened on 8 October 2026\n- Fresh PyPI installs failed to start from 28 July to 5 August 2026, because 0.5.0 had no upper bound on the `mcp` package (issues #163 and #169)\n- Started through the `redis-mcp-server` command without flags, the server ignores `REDIS_HOST` and `REDIS_PORT` and connects to 127.0.0.1:6379. Issue #156 has been open since 10 July 2026\n- No changelog file, no SECURITY.md and no prompt-injection guidance. Patch release 0.5.1 changed the `unsubscribe` input from `channel` to `subscription_id` without a note\n\n## Before you call it (notes for agents)\n\n1. Pass the connection with `--url` or explicit flags. The `redis-mcp-server` command overrides `REDIS_HOST`, `REDIS_PORT`, `REDIS_DB`, `REDIS_SSL` and `REDIS_CLUSTER_MODE` with its own defaults when flags are absent\n2. Use `scan_keys` with the returned cursor until it is 0. `scan_all_keys`, `hgetall`, `smembers` and `json_get` return everything they match with no limit\n3. Read failures from the text. Tools return strings such as `Error ...` or an `error` key in place of an MCP error result\n4. Keep the `subscription_id` from `subscribe` or `psubscribe` and pass it to `read_messages` and `unsubscribe`. Idle subscriptions close after 300 seconds\n5. Connect as a Redis ACL user limited to the keys and command categories needed, since the server has no read-only switch and `delete` runs without confirmation\n\n## Connect\n\nInstall:\n\n```bash\npip install redis-mcp-server\n```\n\nMCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"RedisMCPServer\": {\n      \"args\": [\n        \"--from\",\n        \"redis-mcp-server@latest\",\n        \"redis-mcp-server\",\n        \"--url\",\n        \"redis://localhost:6379/0\"\n      ],\n      \"command\": \"uvx\"\n    }\n  }\n}\n```\n\nThrough letme (picks today, calling later): https://letme.dev/redis-mcp. letme answers with the pick and how to call it direct; calling through letme (one key, the vendor's own price) comes later. How it works: https://www.anchorterminal.com/letme/index.md\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| Meilisearch | A | 78.6 | 14 | db.vector, db.hybrid | no | https://www.anchorterminal.com/tools/meilisearch.md |\n| Pinecone API + MCP | BB | 76.2 | 38 | db.vector, db.hybrid | no | https://www.anchorterminal.com/tools/pinecone.md |\n| Supabase API + MCP | BB | 75.6 | 45 | db.vector, db.hybrid | no | https://www.anchorterminal.com/tools/supabase-mcp.md |\n| Qdrant API + MCP | BB | 75.3 | 51 | db.vector, db.hybrid | no | https://www.anchorterminal.com/tools/qdrant.md |\n| Typesense API + MCP | BB | 70.7 | 146 | db.vector, db.hybrid | no | https://www.anchorterminal.com/tools/typesense.md |\n| Vespa | BB | 70 | 165 | db.vector, db.hybrid | no | https://www.anchorterminal.com/tools/vespa.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- 53 tools in 11 modules at 0.5.1, covering strings (2), hashes (7), lists (7), sets (3), sorted sets (3), streams (7), pub/sub (5), JSON (3), the query engine (6), server information (3) and key utilities with docs search (7) (source: \u003chttps://github.com/redis/mcp-redis/tree/main/src/tools\u003e)\n- stdio is the only transport. The README says streamable HTTP will be added later, and issue #45 asking for it has been open since 13 August 2025 (source: \u003chttps://github.com/redis/mcp-redis#features\u003e)\n- `search_redis_documents` sends the question as a GET request to `https://redis.io/convai/api/docs/search` with a `Redis-MCP-Server/\u003cversion\u003e` User-Agent. `MCP_DOCS_SEARCH_URL` changes the address, and an empty value turns the tool off (source: \u003chttps://github.com/redis/mcp-redis/blob/main/src/tools/misc.py\u003e)\n- Release 0.5.1 of 4 August 2026 added four stream consumer-group tools, `psubscribe` and `read_messages`, and changed `unsubscribe` to take a `subscription_id` in place of a `channel`. The release notes list the pull request titles only (source: \u003chttps://github.com/redis/mcp-redis/releases/tag/0.5.1\u003e)\n- The `mcp` package's 2.0.0 release on 28 July 2026 removed the module the server imports. PyPI still served 0.5.0 with no upper bound until 0.5.1 was published on 5 August 2026 (source: \u003chttps://github.com/redis/mcp-redis/issues/163\u003e)\n- The README gives a Redis ACL example for a read-only user, `ACL SETUSER readonlyuser on \u003emypassword ~* +@read -@write`. The server itself has no read-only setting (source: \u003chttps://github.com/redis/mcp-redis#redis-acl\u003e)\n- The server names itself to Redis as `redis-py(mcp-server_v0.5.1)`, so its connections can be told apart in `CLIENT LIST` (source: \u003chttps://github.com/redis/mcp-redis/blob/main/src/common/connection.py\u003e)\n- The package metadata carries the classifier `Development Status :: 4 - Beta`, and the README says the main branch may contain breaking changes (source: \u003chttps://github.com/redis/mcp-redis/blob/main/pyproject.toml\u003e)\n\n- #9 of 12 in Best database, file and memory tools for AI agents: https://www.anchorterminal.com/best/data/index.md\n- All 43 databases comparisons: https://www.anchorterminal.com/compare/data/index.md\n\n## Compare\n\n- [Redis MCP vs Supabase API + MCP](https://www.anchorterminal.com/compare/redis-mcp-vs-supabase-mcp.md): C 55.7 vs BB 75.6\n- [ClickHouse MCP Server vs Redis MCP](https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-redis-mcp.md): B 64.6 vs C 55.7\n- [PlanetScale MCP Server vs Redis MCP](https://www.anchorterminal.com/compare/planetscale-mcp-vs-redis-mcp.md): B 66.4 vs C 55.7\n- [Postgres MCP Pro vs Redis MCP](https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-redis-mcp.md): F 36.7 vs C 55.7\n- [PostgreSQL (archived MCP reference server) vs Redis MCP](https://www.anchorterminal.com/compare/postgres-reference-server-archived-vs-redis-mcp.md): F 18.4 vs C 55.7\n- [Redis MCP vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/redis-mcp-vs-snowflake-managed.md): C 55.7 vs C 56.4\n- [MongoDB MCP Server vs Redis MCP](https://www.anchorterminal.com/compare/mongodb-mcp-vs-redis-mcp.md): A 79.9 vs C 55.7\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page on redis.io or one of its subdomains, or the README of github.com/redis/mcp-redis. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"redis-mcp\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/redis-mcp\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/redis-mcp.svg\" alt=\"Redis MCP on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![Redis MCP on Anchor Terminal](https://www.anchorterminal.com/badges/redis-mcp.svg)](https://www.anchorterminal.com/tools/redis-mcp)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/redis-mcp\"\u003eRedis MCP on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Redis MCP is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/redis-mcp-dark.png\n- Light: https://www.anchorterminal.com/assets/share/redis-mcp-light.png\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Databases \u0026 files",
        "url": "https://www.anchorterminal.com/categories/data"
      },
      {
        "name": "Redis MCP",
        "url": ""
      }
    ],
    "description": "Redis's open-source MCP server for Redis databases. The owner runs it locally over stdio, and it gives agents tools for strings, hashes, lists, sets, sorted sets, streams, pub/sub, JSON documents and vector search.",
    "facts": [
      "rank #652 of 950",
      "OAuth or key auth",
      "0 desk reviews"
    ],
    "h1": "Redis MCP",
    "image": "https://www.anchorterminal.com/assets/og/tools-redis-mcp.png",
    "path": "/tools/redis-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Redis MCP review (2026): pricing, alternatives and grade C",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/tools/redis-mcp"
  },
  "tokens": {
    "markdown": 7650,
    "slim": 1830
  },
  "version": 1
}
