Skip to content

test(mcp): add Redis Stack-backed integration coverage for Redis JSON/Search/Bulk/Aliases #922

@joshrotenberg

Description

@joshrotenberg

Summary

The Redis MCP surface now depends on module-specific commands that plain Redis does not provide:

  • RedisJSON
  • RediSearch
  • bulk/seed workflows that benefit from Stack-backed verification
  • session-scoped alias tools that should be exercised in the same Docker-backed suite

We should add a Redis Stack-backed ignored integration suite alongside the existing plain Redis Docker suite so the module-heavy Redis MCP tools are validated against a real server, not just compile/build checks.

Why

The existing plain Redis suite is a good fit for:

  • server
  • keys
  • structures
  • diagnostics
  • raw command safety/policy

But it cannot validate:

  • redis_json_*
  • redis_ft_*
  • redis_bulk_load with module commands
  • alias workflows combined with real Redis operations

Proposed work

  • Add shared Redis MCP test support so plain Redis and Redis Stack containers use the same harness patterns
  • Add a Redis Stack-backed ignored suite under crates/redisctl-mcp/tests/
  • Cover the missing Redis MCP modules:
    • JSON
    • Search
    • Bulk/seed
    • Aliases
  • Make reruns stable with container reuse / reattach behavior so Docker-backed tests do not fail on healthy leftover containers

Acceptance criteria

  • Redis Stack-backed ignored test suite exists and is documented
  • JSON/Search/Bulk/Alias MCP tools are exercised against a real Redis Stack container
  • Test harness is reusable across Redis MCP integration suites
  • Rerunning ignored suites does not fail just because a healthy test container already exists

Context

Related to #628 and #681.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions