mcp-server-code-assist
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool has a clearly distinct purpose with no ambiguity. For example, create_file vs. modify_file vs. rewrite_file handle different file operations, while git tools target specific git commands. The descriptions make it easy to tell tools apart.
Naming Consistency5/5All tools follow a consistent verb_noun pattern with snake_case throughout. The naming is predictable and readable, such as create_directory, list_directory, git_status, and modify_file, with no deviations in style.
Tool Count5/5With 12 tools, the count is well-scoped for code assistance, covering file operations and git commands. Each tool earns its place without feeling excessive or thin, aligning with the server's purpose.
Completeness4/5The tool surface is nearly complete for code assistance, covering file CRUD and key git operations. Minor gaps exist, such as no git commit or branch management tools, but agents can work around this with the provided tools.
Average 2.5/5 across 12 of 12 tools scored. Lowest: 1.7/5.
See the Tool Scores section below for per-tool breakdowns.
This repository is archived. Archived repositories automatically receive an F maintenance tier.
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.
This server has been verified by its author.
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
- Behavior1/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 action ('creates') but fails to describe critical traits: whether this requires specific permissions, if it overwrites existing directories, what happens on success or error (e.g., returns a path or error message), or any rate limits. This is inadequate for a mutation tool with zero 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 extremely concise with a single sentence ('Creates a new directory'), which is front-loaded and wastes no words. However, this conciseness comes at the cost of under-specification, but per the scoring rules, it earns full points for brevity and structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness1/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a mutation operation with no annotations), low schema coverage (0%), and no output schema, the description is completely inadequate. It lacks essential details: parameter meaning, behavioral traits, usage context, and expected outcomes. For a tool that creates directories—a potentially destructive or permission-sensitive action—this leaves the agent ill-equipped to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters1/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, meaning the parameter 'path' is undocumented in the schema. The description adds no information about this parameter—it does not explain what 'path' represents (e.g., absolute or relative path, format requirements like slashes), valid values, or examples. With one required parameter and no compensation in the description, this is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose2/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Creates a new directory' is essentially a tautology that restates the tool name 'create_directory' with minimal elaboration. While it does specify the verb ('creates') and resource ('directory'), it lacks any distinguishing details from sibling tools like 'create_file' or specificity about what constitutes a directory in this context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines1/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 alternatives. It does not mention prerequisites (e.g., permissions, existing parent directories), exclusions (e.g., cannot create nested directories in one call), or comparisons to siblings like 'create_file' or 'list_directory'. This leaves the agent without context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior1/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. 'Shows git diff' gives no information about whether this is a read-only operation, what permissions might be required, whether it modifies any state, what format the output takes, or any error conditions. For a tool with two required parameters and no output schema, this is completely inadequate behavioral transparency.
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 maximally concise at just two words. While this represents severe under-specification, from a pure conciseness perspective, it contains zero wasted words and is front-loaded with the core function. Every word earns its place, even though those words provide insufficient information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness1/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 required parameters, 0% schema description coverage, no annotations, no output schema, and multiple sibling git tools, the description is completely inadequate. 'Shows git diff' doesn't explain what the tool actually does, how to use its parameters, what behavior to expect, or how it differs from alternatives. This fails to provide the necessary context for an agent to effectively select and invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters1/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage for both parameters (repo_path and target), the description provides absolutely no information about what these parameters mean or how they should be used. 'Shows git diff' doesn't mention parameters at all, leaving the agent with no guidance about what 'repo_path' and 'target' represent in the context of showing git differences.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose2/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Shows git diff' is essentially a tautology that restates the tool name with minimal elaboration. While it correctly identifies the verb ('shows') and resource ('git diff'), it lacks specificity about what 'git diff' means in this context or how it differs from similar operations like git_show or git_status among the sibling tools. The description doesn't clarify whether this shows differences between commits, branches, working directory changes, or other git comparisons.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines1/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 alternatives. With sibling tools like git_log, git_show, and git_status available, there's no indication of what scenarios warrant using git_diff over these other git-related tools. No context about prerequisites, typical use cases, or exclusions is mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior1/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. 'Reads file content' implies a read-only operation, but it doesn't disclose any behavioral traits such as error handling (e.g., what happens if the file doesn't exist or isn't readable), performance characteristics, encoding considerations, or what 'content' specifically includes (e.g., binary vs. text). This leaves significant gaps for an agent to understand how to use it effectively.
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 extremely concise with just three words, front-loaded with the core action. There's no wasted language or unnecessary elaboration, making it easy to parse quickly.
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 (a file operation with no annotations, 0% schema coverage, and no output schema), the description is incomplete. It doesn't provide enough context for an agent to reliably invoke the tool, missing details on parameters, behavior, and output. For a tool that reads files, more information is needed to ensure correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no meaning beyond what the input schema provides. With 0% schema description coverage and one parameter ('path'), the schema only indicates it's a required string. The description doesn't explain what 'path' represents (e.g., absolute vs. relative, file system specifics), its format, or any constraints, failing to compensate for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose3/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Reads file content' clearly states the verb ('reads') and resource ('file content'), making the basic purpose understandable. However, it doesn't distinguish this tool from potential sibling read operations (like 'git_show' or 'git_diff' which might also read file content), and it's somewhat vague about what exactly is being read (e.g., metadata vs. content).
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 alternatives. With siblings like 'git_show', 'git_diff', 'file_tree', and 'list_directory' that might involve reading file information, there's no indication of when 'read_file' is the appropriate choice versus these other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior1/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. 'Deletes a file' implies a destructive, irreversible mutation, but the description doesn't specify whether deletion is permanent, requires specific permissions, has confirmation prompts, or what happens on success/failure. For a destructive tool with zero annotation coverage, this is critically inadequate.
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 extremely concise at just three words, with zero wasted language. It's front-loaded with the core action and resource. While it's too brief to be helpful, it earns full marks for conciseness as every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness1/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a destructive mutation tool with no annotations, 0% schema description coverage, no output schema, and multiple sibling tools that modify files, the description is completely inadequate. It doesn't address safety concerns, error conditions, return values, or differentiation from similar tools, leaving the agent with insufficient information to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter information beyond what the input schema provides. With 0% schema description coverage and 1 parameter ('path'), the description doesn't explain what 'path' represents (e.g., absolute vs relative, file system constraints), expected format, or examples. It fails to compensate for the schema's lack of descriptions.
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 verb ('Deletes') and resource ('a file'), making the purpose immediately understandable. It distinguishes this from sibling tools like 'create_file', 'read_file', or 'modify_file' by specifying a deletion operation. However, it doesn't specify whether this is permanent deletion or moves to trash, which would make it more specific.
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 alternatives. It doesn't mention prerequisites (e.g., file must exist), when not to use it (e.g., for directories - though 'create_directory' is a sibling), or alternatives like moving to trash if available. With sibling tools like 'modify_file' and 'rewrite_file' that also alter files, the lack of differentiation is a significant gap.
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 the full burden of behavioral disclosure. 'Shows git commit history' implies a read-only operation, but it doesn't specify output format (e.g., list of commits with metadata), pagination behavior (handled by max_count), or potential errors (e.g., invalid repo_path). For a tool with two parameters and no 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—a single three-word phrase—with zero wasted words. It's front-loaded with the core purpose. While brevity risks under-specification, every word ('Shows git commit history') directly contributes to understanding the tool's function, making it efficient in structure.
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 tool's moderate complexity (two parameters, no output schema, no annotations), the description is incomplete. It lacks details on parameter usage, output format, error conditions, and differentiation from sibling git tools. For a tool that interacts with version control systems, more context is needed to ensure reliable agent invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the schema provides no parameter descriptions. The tool description adds no information about parameters—it doesn't explain what 'repo_path' means (e.g., local path to git repository) or how 'max_count' affects output (e.g., limits number of commits shown). With two undocumented parameters, the description fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose3/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Shows git commit history' clearly states the tool's function with a specific verb ('Shows') and resource ('git commit history'), distinguishing it from non-git siblings like file operations. However, it doesn't differentiate from other git tools (git_diff, git_show, git_status), leaving ambiguity about its specific scope within git operations.
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 alternatives. It doesn't mention when to prefer git_log over git_show (for viewing specific commits) or git_status (for current state), nor does it specify prerequisites like needing a git repository. This lack of context leaves the agent to infer usage from the tool name alone.
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 of behavioral disclosure. 'Shows' implies a read-only operation, but it doesn't specify what 'details' include (e.g., commit message, author, diff), whether it requires git to be initialized, or if there are any error conditions. The description is too vague to inform the agent about how the tool behaves beyond a basic read action.
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 extremely concise with just three words: 'Shows git commit details.' It's front-loaded and wastes no words, making it easy to parse. However, this conciseness comes at the cost of completeness, as noted in other dimensions.
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 (a git tool with 2 required parameters), no annotations, 0% schema coverage, and no output schema, the description is incomplete. It doesn't explain what the tool returns, how to interpret parameters, or any behavioral nuances. For a tool that likely outputs structured commit data, this minimal description leaves significant gaps for the agent to operate effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning the input schema provides no descriptions for the two parameters (repo_path and revision). The description 'Shows git commit details' doesn't add any semantic meaning to these parameters—it doesn't explain what repo_path should be (e.g., a file path or URL) or what revision entails (e.g., a commit hash, branch name). The description fails to compensate for the lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose3/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Shows git commit details' clearly states the verb ('shows') and resource ('git commit details'), which is better than a tautology. However, it doesn't distinguish this from sibling tools like git_log or git_diff, which also show git-related information. The purpose is understandable but lacks specificity about what makes this tool unique.
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 alternatives. It doesn't mention when git_show is appropriate compared to git_log (which might list commits) or git_diff (which shows changes). There's no context about prerequisites, such as needing a valid git repository or revision. The agent must infer usage from the tool name alone.
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, the description carries the full burden of behavioral disclosure. 'Rewrites entire file content' implies a destructive mutation (overwrites existing content), but it doesn't address permissions, error handling (e.g., if file doesn't exist), or side effects. This is a significant gap for a mutation tool with zero 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 a single, efficient sentence with zero waste. It's appropriately sized and front-loaded, making it easy to parse quickly, though it sacrifices detail for brevity.
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 (a destructive file operation), no annotations, no output schema, and low schema coverage, the description is incomplete. It lacks details on behavior, error cases, and output, making it insufficient for safe and effective tool invocation by an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It mentions 'file content' which hints at the 'content' parameter, but doesn't explain 'path' or add meaning beyond the schema's basic titles. With 2 parameters and no schema descriptions, this is inadequate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose3/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Rewrites entire file content' clearly states the action (rewrites) and target (file content), but it's vague about scope and lacks differentiation from sibling tools like 'modify_file'. It doesn't specify whether this replaces all content or handles partial updates, making it adequate but with clear gaps.
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?
No guidance is provided on when to use this tool versus alternatives like 'modify_file' or 'create_file'. The description implies a full rewrite but doesn't mention prerequisites (e.g., file must exist), exclusions, or specific contexts, leaving the agent without usage direction.
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 the action ('creates') but doesn't mention permissions needed, whether it overwrites existing files, error conditions, or what happens on success. This leaves significant gaps for a mutation tool.
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, efficient sentence with zero wasted words. It's appropriately sized for a basic tool and front-loads the essential information.
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?
For a file creation tool with 2 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what the tool returns, error conditions, or important behavioral aspects like whether it overwrites existing files at the same path.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but doesn't. It mentions 'content' but not 'path', and provides no details about parameter formats, constraints, or relationships. Both parameters remain essentially undocumented beyond their schema titles.
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 action ('creates') and resource ('new file with content'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'modify_file' or 'rewrite_file', which also involve file content manipulation.
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?
No guidance is provided about when to use this tool versus alternatives like 'modify_file' (for existing files) or 'create_directory' (for directories). The description offers no context about prerequisites, constraints, or appropriate scenarios for file creation.
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 the full burden of behavioral disclosure. It mentions 'git tracking support,' hinting at additional functionality beyond basic listing, but doesn't specify what that entails (e.g., shows git status per file, includes untracked files, or handles git repositories only). It lacks details on output format, error handling, or any constraints, making it insufficient for a mutation-free tool.
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, efficient sentence: 'Lists directory tree structure with git tracking support.' It's front-loaded with the core purpose and includes the key feature without unnecessary words. Every part earns its place, making it highly concise and well-structured.
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 tool's moderate complexity (directory tree with git support), no annotations, no output schema, and 0% schema description coverage, the description is incomplete. It doesn't explain the output (e.g., tree format, git indicators), error cases, or how git tracking integrates, leaving significant gaps for an AI agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 1 parameter ('path') with 0% description coverage, so the schema provides no semantic details. The description adds no information about the parameter—it doesn't explain what 'path' represents (e.g., absolute vs. relative, default to current directory), its format, or any constraints. This fails to compensate for the low schema coverage.
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: 'Lists directory tree structure with git tracking support.' It specifies the verb ('Lists') and resource ('directory tree structure'), and adds the unique feature of 'git tracking support.' However, it doesn't explicitly distinguish it from sibling tools like 'list_directory' or 'git_status,' which prevents a perfect score.
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 alternatives. It doesn't mention when to choose 'file_tree' over 'list_directory' (which might list files without tree structure or git info) or 'git_status' (which might show git status without a full tree). No exclusions or prerequisites are stated, leaving usage unclear.
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. 'Shows' implies a read-only operation, but it doesn't specify what information is included in the status output, whether it's safe to run, or any performance considerations. The description is too minimal for a tool that likely returns complex repository state information.
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 maximally concise with just three words that directly convey the core function. There's zero wasted language, and it's perfectly front-loaded with the essential information.
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?
For a git status tool with no annotations, no output schema, and 0% schema description coverage, the description is inadequate. It doesn't explain what information will be returned (staged/unstaged changes, untracked files, etc.), doesn't document the single parameter, and provides no behavioral context for a potentially complex operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but fails to do so. It mentions no parameters at all, leaving the single required 'repo_path' parameter completely undocumented. Users wouldn't know what format or constraints apply to the repository path.
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 verb ('shows') and resource ('git repository status'), making the purpose immediately understandable. However, it doesn't differentiate from sibling git tools like git_diff, git_log, or git_show, which prevents a perfect score.
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 alternatives like git_diff or git_log. It doesn't mention prerequisites (e.g., needing a git repository) or context for when status checks are appropriate versus other git operations.
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 states the tool modifies a file, implying mutation, but doesn't disclose critical behavioral traits: whether it requires write permissions, if changes are destructive or reversible, error handling (e.g., for invalid paths), or output format. The description is minimal and lacks necessary context for safe operation.
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, efficient sentence with zero waste. It is front-loaded with the core action and mechanism, making it easy to parse. Every word earns its place, though this conciseness comes at the cost of completeness.
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 (mutation tool with 2 parameters, 0% schema coverage, no annotations, no output schema), the description is inadequate. It doesn't explain return values, error conditions, or behavioral nuances. For a tool that modifies files, more context is needed to ensure correct and safe usage, especially with sibling tools like 'rewrite_file' present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It mentions 'string replacements' which hints at the 'replacements' parameter, but doesn't explain the structure (object mapping) or the 'path' parameter's role. No details on format, constraints, or examples are provided, leaving significant gaps beyond the schema's basic property definitions.
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 verb ('modifies') and resource ('parts of a file') with the specific mechanism 'using string replacements'. It distinguishes from siblings like 'rewrite_file' (likely full rewrite) and 'read_file' (read-only), though it doesn't explicitly name alternatives. The purpose is specific but lacks explicit sibling differentiation.
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 alternatives like 'rewrite_file' or 'create_file'. It doesn't mention prerequisites (e.g., file must exist), exclusions, or typical use cases. The context is implied but not articulated, leaving the agent to infer usage from the name and description alone.
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 mentions using 'system ls/dir command', which implies platform-specific behavior (Unix vs. Windows) and potential command-line output formatting, but doesn't disclose critical details like error handling, permissions required, output format, or whether it's read-only (though implied by 'Lists'). 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 a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core action and includes a useful implementation detail, making it highly concise and well-structured.
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 no annotations, no output schema, and low schema coverage, the description is incomplete for a tool that interacts with the filesystem. It lacks details on output format, error conditions, permissions, and how it differs from siblings like 'file_tree'. For a directory listing tool, this leaves the agent with insufficient context to use it effectively.
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 0%, with one parameter 'path' undocumented in the schema. The description adds no specific meaning about the parameter beyond what's implied by the tool name (e.g., it doesn't clarify if 'path' is absolute/relative, supports wildcards, or has default values). However, with only one parameter and a straightforward purpose, the baseline is met but not exceeded.
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 action ('Lists directory contents') and the resource ('directory'), with the specific implementation detail 'using system ls/dir command' adding precision. However, it doesn't explicitly differentiate from sibling tools like 'file_tree' or 'read_file', which might have overlapping functionality for directory inspection.
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 alternatives. With siblings like 'file_tree' that might also list directory contents, there's no indication of when this tool is preferred or what its specific scope or limitations are compared to others.
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
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/abhishekbhakat/mcp_server_code_assist'
If you have feedback or need assistance with the MCP directory API, please join our Discord server