MCP Diagnostics
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation3/5
The tools have overlapping purposes that could cause confusion. getDiagnosticsForFile and getDiagnosticsForPath both retrieve diagnostics for a single file, with the latter described as more flexible and recommended, creating ambiguity about when to use each. However, getDiagnostics and getDiagnosticsSummary serve clearly distinct purposes (all files vs. summary statistics), which helps mitigate some confusion.
Naming Consistency5/5All tool names follow a consistent camelCase pattern with a clear verb_noun structure (getDiagnostics, getDiagnosticsForFile, getDiagnosticsForPath, getDiagnosticsSummary). The naming is predictable and readable throughout the set, with no deviations in style or convention.
Tool Count5/5With 4 tools, the count is well-scoped for a diagnostics server. Each tool appears to serve a specific and necessary function (e.g., retrieving all diagnostics, per-file diagnostics, and summaries), making the set focused and manageable without being overly sparse or bloated.
Completeness4/5The tool surface covers core diagnostics retrieval operations comprehensively, including all files, per-file, and summary views. A minor gap exists in the lack of tools for managing or clearing diagnostics (e.g., reset or update functions), but agents can likely work with the provided read-only operations for most use cases.
Average 3.4/5 across 4 of 4 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 the full burden of behavioral disclosure. It states the tool returns '完整的诊断列表,包含所有文件的详细错误信息' (complete diagnostic list with detailed error information for all files), which describes the output scope but lacks critical behavioral details. It doesn't mention whether this is a read-only operation, potential performance impacts, rate limits, or authentication requirements. For a tool with zero annotation coverage, this is insufficient.
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 concise and well-structured in two sentences. The first sentence states the purpose, and the second clarifies the output scope. There's no wasted text, and it's front-loaded with the core functionality. It could be slightly more efficient by combining ideas, but it's already very tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (diagnostics across all files), lack of annotations, and no output schema, the description is incomplete. It mentions the output includes a 'complete diagnostic list' but doesn't specify the format, structure, or what 'detailed error information' entails. For a tool with no structured output documentation and behavioral gaps, more context is needed to be fully helpful.
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, and schema description coverage is 100%. With no parameters to document, the description appropriately doesn't discuss any. It focuses on the tool's purpose and output, which is sufficient. A baseline of 4 is appropriate for zero-parameter tools when the description is otherwise adequate.
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: '获取当前工作区所有文件的诊断信息(错误/警告/提示)' (Get diagnostic information for all files in the current workspace). It specifies the resource (all files in workspace) and the type of information (diagnostics including errors/warnings/hints). However, it doesn't explicitly differentiate from its siblings (getDiagnosticsForFile, getDiagnosticsForPath, getDiagnosticsSummary), which would be needed for a score of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its siblings. It mentions '所有文件' (all files), which implies a comprehensive scope, but doesn't explicitly contrast with the more targeted sibling tools (for specific files, paths, or summaries). No usage context, exclusions, or alternatives are 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 carries the full burden. It discloses that the tool supports flexible path matching (relative paths, filenames) and is easier to use than getDiagnosticsForFile, which adds some behavioral context. However, it doesn't cover other important aspects like what diagnostic information is returned, error handling, performance implications, or authentication needs. The description adds value but leaves significant gaps in behavioral disclosure.
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 concise with two sentences that efficiently convey key information: the tool's purpose and its flexibility compared to a sibling tool. It's front-loaded with the main function. However, the use of an emoji (🌟) and promotional language ('推荐工具' - recommended tool) adds minor fluff that doesn't earn its place in a tool definition.
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 has 1 parameter with full schema coverage, no annotations, and no output schema, the description is moderately complete. It covers the purpose and some usage context but lacks details on what diagnostic information is returned (since no output schema exists), error cases, or deeper behavioral traits. For a tool that presumably returns diagnostic data, more context on the output would be helpful to compensate for the missing output schema.
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 schema description coverage is 100%, with the parameter 'filePath' fully documented in the input schema (including examples and supported formats). The description adds minimal value beyond the schema by mentioning '支持灵活的路径匹配' (supports flexible path matching) and '可以使用相对路径、文件名等多种格式' (can use relative paths, filenames, and other formats), but this largely repeats what's in the schema. Baseline 3 is appropriate as 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: '根据文件路径获取诊断信息' (get diagnostic information based on file path). It specifies the resource (diagnostic information) and the mechanism (file path). However, it doesn't explicitly differentiate from sibling tools like getDiagnosticsForFile beyond saying it's '更易用' (easier to use), which is somewhat vague rather than specific functional differentiation.
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 provides some usage context by mentioning support for flexible path matching (relative paths, filenames) and comparing it to getDiagnosticsForFile as 'easier to use.' However, it doesn't explicitly state when to use this tool versus alternatives like getDiagnostics or getDiagnosticsSummary, nor does it provide clear exclusions or prerequisites. The guidance is implied rather than explicit.
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?
No annotations are provided, so the description carries the full burden. It discloses that the tool returns statistical information (file count, error count, warning count), which is useful behavioral context. However, it doesn't mention other traits like whether it's read-only, requires specific permissions, has rate limits, or how it handles large projects. For a tool with zero annotation coverage, this leaves significant gaps in behavioral understanding.
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 very concise and well-structured in a single sentence: it states the action, purpose, and return values clearly. There's no wasted text, and it's front-loaded with the key information. Every part of the sentence earns its place by contributing essential details.
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 (simple, no parameters) and lack of annotations and output schema, the description is moderately complete. It explains the purpose and output content (file total, error count, warning count), which is adequate for a basic summary tool. However, it doesn't cover behavioral aspects like performance or limitations, and without an output schema, the return format remains unspecified. This makes it minimally viable but with gaps.
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, and schema description coverage is 100% (since there are no parameters to describe). The description doesn't need to add parameter semantics, but it does clarify the scope ('项目整体代码质量' - overall project code quality) and output content. With no parameters, the baseline is 4, and the description adds value by explaining what the tool does without parameter-related confusion.
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: '获取诊断统计摘要,快速了解项目整体代码质量' (Get diagnostic statistics summary, quickly understand overall code quality of the project). It specifies the verb '获取' (get) and resource '诊断统计摘要' (diagnostic statistics summary), and mentions what information it returns. However, it doesn't explicitly differentiate from sibling tools like getDiagnostics, getDiagnosticsForFile, and getDiagnosticsForPath, which appear to provide more granular diagnostics.
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 by stating it provides a '快速了解项目整体代码质量' (quick understanding of overall project code quality), suggesting it's for high-level summaries rather than detailed analysis. However, it doesn't explicitly state when to use this tool versus the sibling tools (e.g., getDiagnosticsForFile for file-specific details) or provide any exclusions or alternatives. The guidance is implied but not detailed.
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 of behavioral disclosure. It adds useful context about the URI format requirement and the warning symbol (⚠️), which hints at potential issues. However, it doesn't describe what diagnostic information is returned, error conditions, or performance characteristics.
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 and well-structured: two sentences that efficiently convey the purpose, critical requirement, and alternative tool. Every sentence earns its place with no wasted words.
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 (single parameter but with specific format requirements), no annotations, and no output schema, the description is adequate but incomplete. It covers usage and parameter format well but lacks information about what diagnostic information is returned, which is important context for an agent.
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 fully documents the fileUri parameter. The description reinforces the URI format requirement but doesn't add significant semantic meaning beyond what's in the schema. Baseline 3 is appropriate when 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: '获取指定文件的诊断信息' (get diagnostic information for a specified file). It specifies the resource (file) and action (get diagnostics), but doesn't explicitly differentiate from sibling tools like getDiagnostics or getDiagnosticsForPath beyond mentioning the latter as an alternative for uncertain URI formats.
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 guidance on when to use this tool vs. alternatives: it specifies that this tool requires a full workspace URI format and recommends using getDiagnosticsForPath if unsure about the URI format. This clearly defines usage context and exclusions.
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/lin037/mcp-diagnostics-trae'
If you have feedback or need assistance with the MCP directory API, please join our Discord server