Debug MCP
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool has a clearly distinct purpose with no overlap: analyze_bug for bug analysis, clear_debug_logs for log cleanup, detect_environment for environment detection, get_debug_template for code templates, get_server_info for server configuration, get_server_port for port details, list_debug_blocks for listing debug code, and read_debug_logs for log analysis. The descriptions reinforce unique functions, preventing misselection.
Naming Consistency5/5All tools follow a consistent verb_noun naming pattern (e.g., analyze_bug, clear_debug_logs, detect_environment), using snake_case throughout. This predictability makes the tool set easy to navigate and understand, with no deviations in style or convention.
Tool Count5/5With 8 tools, the server is well-scoped for debugging support, covering essential aspects like analysis, environment detection, template generation, log management, and server configuration. Each tool serves a specific role, avoiding bloat while providing comprehensive coverage for the domain.
Completeness5/5The tool set offers complete coverage for a debugging workflow: from initial bug analysis and environment detection to injecting debug code, managing logs, and cleaning up. It includes both proactive (e.g., get_debug_template) and reactive (e.g., read_debug_logs) tools, with no obvious gaps that would hinder an agent's ability to debug effectively.
Average 4.1/5 across 8 of 8 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues 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 status not available
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 provided, so the description carries full burden. It mentions the tool 'helps you understand' but lacks details on behavioral traits such as whether it's read-only, requires specific permissions, has rate limits, or what the response format looks like. The description is vague about how suggestions are generated or their reliability.
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 appropriately sized with two sentences that are front-loaded and efficient. Every sentence earns its place by stating the tool's purpose and its utility, with no redundant or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (analysis with 2 parameters) and lack of annotations/output schema, the description is moderately complete. It covers the purpose and usage context but lacks details on behavioral aspects and output expectations, which are important for an analysis tool without structured output documentation.
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?
Schema description coverage is 100%, so the schema already documents both parameters thoroughly. The description adds no additional meaning beyond what the schema provides, such as examples or constraints on input values. It mentions 'bug description' and 'files' but only repeats schema info.
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 with specific verbs ('analyze', 'provide suggestions') and resources ('bug description'), distinguishing it from sibling tools like clear_debug_logs or read_debug_logs. It explicitly mentions outputs like 'possible causes, affected files, and debugging strategies'.
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 for when to use this tool ('before adding debug logs'), but does not explicitly state when not to use it or name alternatives among siblings. It implies usage for preliminary analysis rather than direct debugging actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states what the tool does but doesn't describe important behavioral traits like whether it's read-only, what format the output returns, whether it scans recursively, error handling, or performance characteristics. For a tool with zero annotation coverage, this leaves significant gaps.
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 perfectly concise with two sentences that each earn their place: the first defines the tool's purpose and scope, the second provides usage guidance. No wasted words, front-loaded with the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (scanning project files for specific markers), no annotations, and no output schema, the description is adequate but incomplete. It explains what the tool does but lacks details about output format, scanning behavior, or error conditions that would be needed for full contextual understanding.
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 input schema has 100% description coverage, with the single parameter 'projectPath' well-documented in the schema. The description doesn't add any parameter-specific information beyond what the schema provides, so it meets the baseline of 3 where schema does the heavy lifting.
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 specific action ('List all debug blocks') and resource ('in project files'), with explicit definition of what debug blocks are ('code between debug-start and debug-end markers'). It distinguishes from siblings by focusing on listing injected debug code rather than analysis, clearing, reading logs, or other operations.
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 for when to use this tool ('to see what debug code has been injected'), which implicitly differentiates it from siblings like clear_debug_logs or read_debug_logs. However, it doesn't explicitly state when NOT to use it or name specific alternatives, keeping it from a perfect score.
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 full burden for behavioral disclosure. It effectively describes the tool's behavior: reading from a specific file path, being used for post-test analysis, and triggering cleanup workflows. It mentions important constraints (user confirmation triggers cleanup) and integration with other tools. However, it doesn't address potential error conditions or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness2/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is poorly structured and overly verbose. The first two sentences describe the tool's purpose appropriately, but the remaining 80% consists of cleanup instructions that belong in usage guidelines rather than tool description. This creates information overload and buries the core purpose. The cleanup section should be more concise or separated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read operation with 2 parameters and 100% schema coverage but no output schema, the description is moderately complete. It explains the tool's purpose and usage context well, but lacks information about return format (log structure, error responses). The extensive cleanup instructions somewhat compensate for missing output schema, but create focus issues.
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?
Schema description coverage is 100%, so the schema already documents both parameters completely. The description mentions the projectPath parameter in context ('Logs are stored in {projectPath}/.debug/debug.log') but adds no additional semantic meaning beyond what the schema provides. The baseline of 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Read debug logs from the project' with specific resource location '{projectPath}/.debug/debug.log'. It distinguishes from siblings like 'clear_debug_logs' by focusing on reading rather than clearing. However, it doesn't explicitly differentiate from 'list_debug_blocks' or 'analyze_bug' which might also involve log analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidelines: 'Use this to analyze what happened during runtime execution after the user has tested the code with injected debug logs.' It also specifies when NOT to use it (when bugs are fixed) and names an alternative tool ('clear_debug_logs') for cleanup operations. The detailed cleanup instructions create clear boundaries for when this tool's purpose ends.
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 carries the full burden. It describes the tool's function (detection) and output (environment type), but lacks details on behavioral traits like error handling (e.g., what happens if the file doesn't exist), performance characteristics, or whether it reads file content vs. metadata. The description doesn't contradict annotations (none provided).
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 core purpose and followed by the usage context. Every word earns its place, with no redundant or vague phrasing, making it efficient and easy to parse.
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 the tool's moderate complexity (environment detection based on a file), no annotations, and no output schema, the description is reasonably complete. It covers the purpose, usage, and possible environments, but could be more complete by detailing the return format (e.g., string enum) or error cases, which are missing from both description and structured data.
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?
Schema description coverage is 100%, with the single parameter 'filePath' well-documented in the schema. The description doesn't add any parameter-specific information beyond what the schema provides (e.g., file format expectations or analysis depth), so it meets the baseline for high schema coverage without compensating value.
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 specific action ('detect the runtime environment') and resource ('of a specific file'), listing the six possible environments (browser, node, python, php, react-native, wechat). It distinguishes from siblings by focusing on environment detection rather than bug analysis, log management, or template retrieval.
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 for usage ('to determine which debug code template to use'), implying this tool should be used before selecting a debug template. However, it doesn't explicitly state when not to use it or name alternatives among siblings, though the purpose naturally differentiates it from tools like analyze_bug or clear_debug_logs.
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 carries the full burden of behavioral disclosure. It indicates a destructive action ('Clear all debug logs'), which is useful context, but lacks details on permissions needed, whether the operation is reversible, or potential side effects (e.g., impact on system performance). The description adds some value but does not fully compensate for the absence of annotations.
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 that are front-loaded with the core purpose and followed by usage guidance, with zero wasted words. Each sentence earns its place by providing essential information without redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a destructive operation with no annotations and no output schema), the description is moderately complete. It covers the purpose and usage context but lacks details on behavioral aspects like error handling or return values, which would be beneficial for a tool that modifies data.
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?
Schema description coverage is 100%, with the single parameter 'projectPath' documented in the schema as 'The absolute path to the project directory'. The description does not add any additional meaning or context beyond what the schema provides, such as format examples or constraints, so it meets the baseline for high schema coverage.
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 specific action ('Clear all debug logs') and resource ('from the project log file'), distinguishing it from sibling tools like 'read_debug_logs' and 'list_debug_blocks' that involve reading rather than deletion. It precisely communicates the tool's function without being vague or tautological.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool ('before starting a new debugging session') and why ('to avoid confusion from old logs'), providing clear context for its application. It distinguishes it from alternatives by implying that other tools (e.g., 'read_debug_logs') are for viewing logs, not clearing them.
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 carries the full burden. It implies a read-only operation ('Get') but doesn't disclose behavioral traits like authentication needs, rate limits, or response format. However, it adds context about verifying server status, which is useful but not comprehensive for a tool with no annotation coverage.
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 appropriately sized and front-loaded, with two sentences that efficiently convey the tool's function and recommended usage without any wasted words, making it easy for an agent to quickly understand its role.
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 the tool's low complexity (0 parameters, no annotations, no output schema), the description is complete enough for a diagnostic tool. It explains what the tool does and when to use it, though it could benefit from more behavioral details like response format, but this is mitigated by the simple nature of the 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?
With 0 parameters and 100% schema description coverage, the baseline is 4. The description adds value by explaining the tool's purpose and usage context, which compensates for the lack of parameters, making it clear that no inputs are required for this diagnostic check.
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 with specific verbs ('Get') and resources ('debug MCP server configuration, HTTP endpoints, and supported environments'), distinguishing it from siblings like 'analyze_bug' or 'clear_debug_logs' by focusing on server-level diagnostic information rather than bug analysis or log management.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit guidance on when to use this tool ('Use this first to verify the server is running correctly'), suggesting it as an initial diagnostic step, which helps differentiate it from alternatives like 'detect_environment' or 'get_server_port' that might serve more specific purposes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It thoroughly explains behavioral traits: it's a read-only operation (no destructive effects), requires specific parameter handling (e.g., absolute path for projectPath), outputs a template for manual insertion, and includes detailed post-usage workflows and cleanup requirements. This covers safety, constraints, and operational context effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness2/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is overly verbose and includes extensive procedural instructions (e.g., post-insertion user communication, temporary modification marking) that are not core to the tool's purpose. While informative, this bloats the description with content better suited for external documentation, reducing conciseness and front-loading of key information.
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 complexity of the tool (5 parameters, no output schema, no annotations), the description is highly complete. It covers purpose, usage guidelines, behavioral traits, parameter nuances, and integration with sibling tools like 'read_debug_logs'. It provides all necessary context for an AI agent to use the tool correctly, despite the lack of structured annotations or output schema.
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 100% description coverage, so the baseline is 3. The description adds value by emphasizing the importance of the 'projectPath' parameter with specific instructions and warnings, and it implicitly clarifies the purpose of 'environment' and 'logMessage' through usage context. However, it doesn't provide additional semantics for all parameters beyond the schema's 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 explicitly states the tool's purpose: 'Get a debug code template for a specific environment.' It specifies the verb ('Get') and resource ('debug code template'), and distinguishes it from sibling tools like 'read_debug_logs' by focusing on template generation rather than log analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage instructions, including when to use it (for generating debug templates), when not to use it (e.g., not for direct logging with console.log()), and alternatives like 'read_debug_logs' for analyzing results. It also outlines prerequisites and post-usage steps, such as manual insertion and user communication.
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 full burden and does well by disclosing key behavioral traits: it explains that the port is 'dynamically assigned by the system to avoid conflicts,' which is crucial operational context not inferable from the schema alone. However, it lacks details on response format or error conditions.
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 front-loaded with the core purpose, followed by behavioral context and usage guidance in just two sentences, with zero wasted words. Every sentence earns its place by adding essential information.
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 the tool's low complexity (0 parameters, no output schema), the description is nearly complete: it covers purpose, behavioral traits, and usage context effectively. A minor gap is the lack of output details, but this is acceptable without an output schema.
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 0 parameters with 100% schema description coverage, so the baseline is high. The description adds value by explaining why parameters are unnecessary (port is dynamically assigned) and the tool's purpose, compensating for the lack of parameter documentation needs.
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 with specific verbs ('Get') and resources ('current HTTP server port and URL information'), and distinguishes it from siblings by focusing on port/URL retrieval rather than debugging analysis or log management.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use this tool ('to get the actual port number and endpoints for sending debug logs'), providing clear context for its application in debugging workflows, which differentiates it from sibling tools like get_server_info or list_debug_blocks.
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/ahao0150/debug-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server