MCP Redis

by redis• 641•• Scanned•Claim this listing•Request removal
Database Managementdatabasegenaillmmcpmcp server

The official Redis MCP Server is a natural language interface designed for agentic applications to manage and search data in Redis efficiently

MCP Redis is an open-source mcp server by redis, written mainly in Python, with 641 GitHub stars and the MIT license. Its code was last updated Oct 26, 2026.

Scan summary: scanned Nov 5, 2026 at commit f7bd20a. Seen able to read environment and secrets. Scan policy

Scanned
Full scan at f7bd20a · Nov 5, 2026
Scanned Builds Boots No undeclared egress Reproducible
Static code scanpass
Secrets scanpass
Dependency audit0 known vulnerabilitiespass
Manifestserver.jsonpass
Buildpass
Boot & handshake53 toolspass
Network egresspass
Reproducible (×3)pass

Findings (1)

  • low
    Reads environment variables not listed in the manifest
    REDIS_HOST, REDIS_PORT, REDIS_USERNAME, REDIS_PWD, REDIS_SSL, REDIS_SSL_CA_PATH, REDIS_SSL_KEYFILE, REDIS_SSL_CERTFILE, REDIS_SSL_CERT_REQS, REDIS_SSL_CA_CERTS, REDIS_CLUSTER_MODE, REDIS_DB, REDIS_ENTRAID_AUTH_FLOW, REDIS_ENTRAID_CLIENT_ID, REDIS_ENTRAID_CLIENT_SECRET

Network activity

During install
files.pythonhosted.orgpypi.org
While running
No connections

Tools exposed (53)

  • hset

    Set a field in a hash stored at key with an optional expiration time. Args: name: The Redis hash key. key: The field name inside the hash. value: The value to set. expire_seconds: Optional; time in seconds after which the key should expire. Returns:

  • hget

    Get the value of a field in a Redis hash. Args: name: The Redis hash key. key: The field name inside the hash. Returns: The field value or an error message.

  • hdel

    Delete a field from a Redis hash. Args: name: The Redis hash key. key: The field name inside the hash. Returns: A success message or an error message.

  • hgetall

    Get all fields and values from a Redis hash. Args: name: The Redis hash key. Returns: A dictionary of field-value pairs or an error message.

  • hexists

    Check if a field exists in a Redis hash. Args: name: The Redis hash key. key: The field name inside the hash. Returns: True if the field exists, False otherwise.

  • set_vector_in_hash

    Store a vector as a field in a Redis hash. Args: name: The Redis hash key. vector_field: The field name inside the hash. Unless specifically required, use the default field name vector: The vector (list of numbers) to store in the hash. Returns: True if the

  • get_vector_from_hash

    Retrieve a vector from a Redis hash and convert it back from binary blob. Args: name: The Redis hash key. vector_field: The field name inside the hash. Unless specifically required, use the default field name Returns: The vector as a list of floats, or an error mess

  • json_set

    Set a JSON value in Redis at a given path with an optional expiration time. Args: name: The Redis key where the JSON document is stored. path: The JSON path where the value should be set. value: The JSON value to store (as JSON string, or will be auto-converted).

  • json_get

    Retrieve a JSON value from Redis at a given path. Args: name: The Redis key where the JSON document is stored. path: The JSON path to retrieve (default: root '$'). Returns: The retrieved JSON value or an error message.

  • json_del

    Delete a JSON value from Redis at a given path. Args: name: The Redis key where the JSON document is stored. path: The JSON path to delete (default: root '$'). Returns: A success message or an error message.

  • lpush

    Push a value onto the left of a Redis list and optionally set an expiration time.

  • rpush

    Push a value onto the right of a Redis list and optionally set an expiration time.

  • lpop

    Remove and return the first element from a Redis list.

  • rpop

    Remove and return the last element from a Redis list.

  • lrange

    Get elements from a Redis list within a specific range. Returns: str: A JSON string containing the list of elements or an error message.

  • llen

    Get the length of a Redis list.

  • lrem

    Remove elements from a Redis list. Args: name: The name of the list count: Number of elements to remove (0 = all, positive = from head, negative = from tail) element: The element value to remove Returns: A string indicating the number of elements removed.

  • delete

    Delete a Redis key. Args: key (str): The key to delete. Returns: str: Confirmation message or an error message.

  • type

    Returns the string representation of the type of the value stored at key Args: key (str): The key to check. Returns: str: The type of key, or none when key doesn't exist

  • expire

    Set an expiration time for a Redis key. Args: name: The Redis key. expire_seconds: Time in seconds after which the key should expire. Returns: A success message or an error message.

  • rename

    Renames a Redis key from old_key to new_key. Args: old_key (str): The current name of the Redis key to rename. new_key (str): The new name to assign to the key. Returns: Dict[str, Any]: A dictionary containing the result of the operation. On success

  • scan_keys

    Scan keys in the Redis database using the SCAN command (non-blocking, production-safe). ⚠️ IMPORTANT: This returns PARTIAL results from one iteration. Use scan_all_keys() to get ALL matching keys, or call this function multiple times with the returned cursor until cursor becomes 0

  • scan_all_keys

    Scan and return ALL keys matching a pattern using multiple SCAN iterations. This function automatically handles the SCAN cursor iteration to collect all matching keys. It's safer than KEYS * for large databases but will still collect all results in memory. ⚠️ WARNING: With very l

  • search_redis_documents

    Search Redis documentation and knowledge base to learn about Redis concepts and use cases. This tool exposes updated and curated documentation, and must be invoked every time the user wants to learn more in areas including: **Common Use Cases:** - Session Management: User session stora

  • publish

    Publish a message to a Redis channel. Args: channel: The Redis channel to publish to. message: The message to send. Returns: A success message or an error message.

  • subscribe

    Subscribe to a Redis channel and return a reusable subscription handle. Args: channel: The Redis channel to subscribe to. Returns: A dictionary containing the subscription ID or an error message.

  • psubscribe

    Subscribe to Redis channels using a pattern. Args: pattern: The Redis channel pattern to subscribe to. Returns: A dictionary containing the subscription ID or an error message.

  • read_messages

    Read pending pub/sub messages for an existing subscription. Args: subscription_id: The ID returned by subscribe() or psubscribe(). timeout_ms: Time to wait for messages in milliseconds. Use 0 for non-blocking. max_messages: Maximum number of messages to return in one cal

  • unsubscribe

    Unsubscribe and close an existing pub/sub subscription. Args: subscription_id: The ID returned by subscribe() or psubscribe(). Returns: A dictionary describing the closed subscription or an error message.

  • get_indexes

    List of indexes in the Redis database Returns: str: A JSON string containing the list of indexes or an error message.

  • get_index_info

    Retrieve schema and information about a specific Redis index using FT.INFO. Args: index_name (str): The name of the index to retrieve information about. Returns: str: Information about the specified index or an error message.

  • get_indexed_keys_number

    Retrieve the number of indexed keys by the index Args: index_name (str): The name of the index to retrieve information about. Returns: str: Number of indexed keys as a string

  • create_vector_index_hash

    Create a Redis 8 vector similarity index using HNSW on a Redis hash. This function sets up a Redis index for approximate nearest neighbor (ANN) search using the HNSW algorithm and float32 vector embeddings. Args: index_name: The name of the Redis index to create. Unless sp

  • vector_search_hash

    Perform a KNN vector similarity search using Redis 8 or later version on vectors stored in hash data structures. Args: query_vector: List of floats to use as the query vector. index_name: Name of the Redis index. Unless specifically specified, use the default index name.

  • hybrid_search

    Perform a hybrid search combining a Redis filter expression with KNN vector similarity. Hybrid search pre-filters documents by metadata before ranking by vector similarity — the standard pattern for production RAG and semantic search pipelines. Filter expression examples:

  • dbsize

    Get the number of keys stored in the Redis database

  • info

    Get Redis server information and statistics. Args: section: The section of the info command (default, memory, cpu, etc.). Returns: A dictionary of server information or an error message.

  • client_list

    Get a list of connected clients to the Redis server.

  • sadd

    Add a value to a Redis set with an optional expiration time. Args: name: The Redis set key. value: The value to add to the set. expire_seconds: Optional; time in seconds after which the set should expire. Returns: A success message or an error message.

  • srem

    Remove a value from a Redis set. Args: name: The Redis set key. value: The value to remove from the set. Returns: A success message or an error message.

  • smembers

    Get all members of a Redis set. Args: name: The Redis set key. Returns: A list of values in the set or an error message.

  • zadd

    Add a member to a Redis sorted set with an optional expiration time. Args: key (str): The sorted set key. score (float): The score of the member. member (str): The member to add. expiration (int, optional): Expiration time in seconds. Returns: str: C

  • zrange

    Retrieve a range of members from a Redis sorted set. Args: key (str): The sorted set key. start (int): The starting index. end (int): The ending index. with_scores (bool, optional): Whether to include scores in the result. Returns: str: The sorted se

  • zrem

    Remove a member from a Redis sorted set. Args: key (str): The sorted set key. member (str): The member to remove. Returns: str: Confirmation message or an error message.

  • xadd

    Add an entry to a Redis stream with an optional expiration time. Args: key (str): The stream key. fields (dict): The fields and values for the stream entry. expiration (int, optional): Expiration time in seconds. Returns: str: The ID of the added entry or an

  • xrange

    Read entries from a Redis stream. Args: key (str): The stream key. count (int, optional): Number of entries to retrieve. Returns: str: The retrieved stream entries or an error message.

  • xdel

    Delete an entry from a Redis stream. Args: key (str): The stream key. entry_id (str): The ID of the entry to delete. Returns: str: Confirmation message or an error message.

  • xgroup_create

    Create a consumer group for a Redis stream. Args: key (str): The stream key. group_name (str): The consumer group name. start_id (str, optional): Stream ID from which the group starts consuming. mkstream (bool, optional): Create the stream if it does not exist.

  • xgroup_destroy

    Destroy a consumer group for a Redis stream. Args: key (str): The stream key. group_name (str): The consumer group name. Returns: str: Confirmation message or an error message.

  • xreadgroup

    Read entries from a Redis stream using a consumer group. Args: key (str): The stream key. group_name (str): The consumer group name. consumer_name (str): The consumer name. count (int, optional): Maximum number of entries to retrieve. block_ms (int, optio

  • xack

    Acknowledge entries that were processed by a consumer group. Args: key (str): The stream key. group_name (str): The consumer group name. entry_ids (List[str]): Entry IDs to acknowledge. Returns: str: Confirmation message or an error message.

  • set

    Set a Redis string value with an optional expiration time. Args: key (str): The key to set. value (str, bytes, int, float, dict): The value to store. expiration (int, optional): Expiration time in seconds. Returns: str: Confirmation message or an error messa

  • get

    Get a Redis string value. Args: key (str): The key to retrieve. Returns: str, bytes: The stored value or an error message.

Automated result for the commit shown. See our scan policy. View the scan log

Maintainers can claim the listing to rescan, or dispute a result.

MCP Redis alternatives

View more →

Similar mcp servers in Database Management, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.

NameStarsLicenceLast updatedScan
MCP Redis (this page)
redis
641MITOct 26, 2026Scanned, no flagged issues
Codebase Memory MCP
DeusData
48kMITNov 1, 2026Scanned, see report
Xerj
xerj-org
19kApache-2.0Nov 1, 2026Scanned, no flagged issues
MCP Toolbox
googleapis
17kApache-2.0Nov 1, 2026Scanned, no flagged issues
Nightingale
ccfos
13kApache-2.0Oct 30, 2026Scanned, no flagged issues
Dbhub
bytebase
3.8kMITOct 26, 2026Scanned, no flagged issues