mcp-redis-diagnostics
Server Quality Checklist
Latest release: v0.1.14
- Disambiguation5/5
Each tool targets a distinct Redis diagnostic subsystem (memory, slowlog, clients, keyspace, latency, config, replication), with no overlap. The aggregate tool analyze_performance explicitly combines the others, removing any ambiguity about which to call.
Naming Consistency5/5All tools follow the same verb_noun pattern using the prefix 'analyze_' followed by a clear domain noun (e.g., memory, slowlog, clients). This uniform convention makes the tool names predictable and easy to distinguish.
Tool Count5/5Eight tools is well-scoped for a Redis diagnostics server, covering the essential health-check areas without redundancy or bloat. Each tool earns its place, and the aggregate adds value without muddying the scope.
Completeness5/5The tool set comprehensively covers the major Redis diagnostic dimensions: memory, slowlog, clients, keyspace, latency, config, and replication, plus an integrated report. There are no obvious gaps for a diagnostics-focused server; the config analyzer even addresses the prerequisite for latency monitoring.
Average 4.2/5 across 8 of 8 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- 0 of 1 community issues answered or closed in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI is passing
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description bears full responsibility. It discloses what issues are detected and that recommendations are provided, but omits critical behavioral traits such as whether the analysis is read-only, any permission requirements, or the underlying data source (e.g., INFO). This leaves uncertainty for the agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences capture the purpose and expected outcomes without redundancy. The first sentence is action-oriented, and the second enumerates detection targets, making every word valuable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with no output schema, the description adequately covers functionality and output (recommendations). It lacks details on execution context or return format, but this is sufficient for a diagnostic tool in a family of similar analyzers.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero properties, so there are no parameters to explain. The 0-parameter baseline is 4, and the description appropriately focuses on the analysis scope rather than parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes Redis memory usage, listing specific issues it detects (fragmentation, RSS overhead, maxmemory pressure, eviction, swap risk). This distinguishes it from sibling analyze_* tools that target other subsystems like slowlog or clients.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when memory-related diagnostics are needed but does not explicitly contrast with sibling alternatives. Given the sibling names (analyze_slowlog, analyze_clients, etc.), the context is clear, but no exclusion or 'when-not-to-use' guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden of behavioral disclosure. It states that it runs all analyzers and produces a report, which implies a read-only health assessment, but it does not explicitly confirm it makes no changes to the Redis instance, nor does it mention any performance overhead or required permissions. This leaves some ambiguity for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the core purpose ('Comprehensive Redis health assessment') and then efficiently lists the included analyzers and the output ('unified report with prioritized recommendations'). No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one optional parameter and no output schema, the description provides the essential context: scope, included analyzers, and output type. However, it could be more complete by describing the structure of the unified report or noting whether running all analyzers has any significant resource cost, but the current level is adequate for basic selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter slowlog_count is fully described in the schema with a default value and explanation. The description itself does not mention the parameter or how it affects the comprehensive analysis, but since schema coverage is 100%, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as a comprehensive Redis health assessment that runs all analyzers and produces a unified report with recommendations. It distinguishes itself from the individual sibling analyzer tools by explicitly naming them and indicating it combines their functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the go-to tool for an overall health check rather than running individual analyzers separately. However, it does not explicitly state when NOT to use it (e.g., when you only need memory analysis) nor mention alternatives by name, though the sibling list provides that context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It uses read-oriented verbs ('Analyze', 'Detects', 'identifies', 'recommends') making it clear this is an analysis/read operation. However, it does not explicitly state 'read-only' or mention potential side effects (e.g., whether SLOWLOG is cleared), but the intent is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose, and each clause adds value (what it does, what it detects, what it recommends). No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has one optional parameter and no output schema. The description explains the core functionality thoroughly and hints at the output (detected commands, hotspots, recommendations). It is complete enough for an agent to understand the tool's purpose and when to invoke it, though a brief note on output format or typical use cases would make it even more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter (count) with 100% schema description coverage. The schema already fully explains the parameter, and the tool description does not add additional meaning or context beyond what is in the schema. Baseline 3 is appropriate when schema covers parameters well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Analyze Redis SLOWLOG to find slow commands.' It clearly distinguishes this from sibling tools by focusing specifically on SLOWLOG and dangerous O(N) commands, while also mentioning detection and recommendations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage ('to find slow commands') but does not explicitly say when to use this tool versus alternatives like analyze_latency or analyze_performance. It provides clear context but no exclusions or direct comparison to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It enumerates the specific risks it flags, providing substantial transparency about what the tool checks. It also discloses a cross-tool behavioral effect (silencing analyze_latency), which is valuable. However, it does not mention return format or whether it makes changes, though the 'analyze' verb implies read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense sentence that front-loads the main purpose and then lists specific flags. While it is somewhat long and lists many items, it is still compact and contains no filler. The structure could be improved by splitting the list, but it remains easily scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description is remarkably complete. It details all the major risk checks, including maxmemory, eviction policy, network exposure, authentication, persistence, connection timeouts, keepalive, hz, and latency monitoring. It also explains a cross-tool dependency, making it highly informative for an agent deciding to invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the baseline for 0 parameters is 4. The schema is empty, and the description adds meaning by clarifying the scope of analysis (configuration-specific checks) without needing to explain parameters. The description effectively communicates what is analyzed, making the absence of parameters self-evident.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes Redis configuration for security and reliability risks, with a specific list of flags. It distinguishes itself from sibling analyze_* tools by focusing on configuration rather than runtime metrics, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when checking Redis configuration, but does not explicitly state when to use it over alternatives. It does add a useful cross-tool note that disabling latency-monitor-threshold silences the analyze_latency tool, which hints at when to correlate tools, but lacks explicit usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of conveying safety and side effects. 'Analyze' and 'Checks' imply a read-only operation, but the description does not disclose output format, sampling behavior, or potential operational impact, making the transparency only partially adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. It front-loads the purpose and follows with specific checks, ensuring every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema tool, the description lists the major analysis areas, which gives a good sense of what the tool covers. However, it does not describe the return format, which would be helpful given the lack of an output schema, so it is not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline of 4 applies. The description does not need to add parameter semantics, and the schema fully covers the empty parameter set.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource ('Analyze Redis keyspace distribution') and enumerates concrete checks (TTL coverage, cache hit/miss rates, database distribution, expiry patterns). This clearly distinguishes it from sibling analysis tools like analyze_memory or analyze_slowlog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The first sentence provides clear context that this tool is for keyspace analysis, differentiating it from siblings. However, it does not explicitly state when to prefer this tool over alternatives or mention any exclusions, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses what the analysis detects and the required configuration, which is valuable context. However, it does not state whether the operation is read-only, what commands are run, or what the return value looks like, leaving some behavioral aspects unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose and followed by a concise list of detected latency categories and the prerequisite. Every sentence adds meaningful information with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters, no output schema, and no annotations, the description provides a reasonably complete picture: it names the resource, lists specific detection targets, and states a key prerequisite. It stops short of describing the output format or how the threshold is used, but for a focused analysis tool this is sufficient for an agent to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is effectively 100% (empty schema). The baseline for a zero-parameter tool is 4, and the description adds no param-specific semantics because none are needed. It correctly focuses on behavior rather than parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes Redis latency events and enumerates specific latency sources (fork, AOF fsync, slow commands, eviction/expiry, defragmentation). This distinguishes it from sibling analysis tools like analyze_memory and analyze_slowlog. The verb 'Analyze' plus the resource 'Redis latency events' is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when investigating latency issues and explicitly states the prerequisite that latency-monitor-threshold must be set. However, it does not explicitly say when not to use it or name alternative tools, though the sibling set suggests differentiation by metric domain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses an important behavioral nuance: idle connection counts exclude replica (S flag) and pub/sub (P flag) connections to avoid false positives. This goes beyond a simple 'analyzes connections' statement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the primary purpose, then lists detection targets, and explains a key heuristic. Every sentence provides valuable information without repetition or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless analysis tool with no annotations or output schema, the description covers the core behavior and a critical filtering logic. However, it does not specify the return format or how results are presented, which would be useful for a fully complete description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema provides complete coverage. Per the rubric, 0 params baseline is 4. The description adds no parameter information because none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes Redis client connections and lists specific detection targets (blocked clients, connection pool saturation, large output buffers, pub/sub subscriber concentration). This distinguishes it from sibling analysis tools that focus on memory, slowlog, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is clear: use this tool when investigating Redis client connections or related issues. It does not explicitly mention alternatives or exclusions, but the specialized purpose is evident from the description and sibling tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It openly discloses what the tool reports for masters and replicas, including specific metrics like replica state, lag, and sync status. It does not explicitly state read-only behavior or permission requirements, but the analysis nature makes that implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, opening with a concise purpose statement followed by detailed breakdowns for master and replica roles. Every sentence adds value with no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description is remarkably thorough, covering both role-specific behaviors and the exact metrics reported. It does not describe the return format explicitly, but the listed metrics effectively convey what the output will include.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description does not need to explain parameter meanings since none exist, and it adds no redundant parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Analyze') and identifies a clear resource ('Redis replication health'). It distinguishes itself from sibling tools by narrowing scope to replication specifically, covering both master and replica roles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool (for analyzing replication health on either masters or replicas). It does not explicitly name alternatives or exclusions, but the role-specific detail implies appropriate scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Dmitriusan/mcp-redis-diagnostics'
If you have feedback or need assistance with the MCP directory API, please join our Discord server