Skip to main content
Glama
Ownership verified

Server Details

21 plain-English git tools as an MCP server. No jargon.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsB

Average 3.6/5 across 22 of 22 tools scored. Lowest: 2.9/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose. Even similar tools like 'undo_changes' and 'restore_file' differ in scope (all vs single file), and 'find_changes' vs 'show_change' list files vs show diffs. No two tools overlap ambiguously.

Naming Consistency4/5

All tool names follow a verb_noun snake_case pattern. While verbs are not perfectly uniform (e.g., 'get_vault_status' vs 'show_history'), the naming is consistent and predictable, with no mixed camelCase or confusing conventions.

Tool Count4/5

22 tools is on the higher side but appropriate for a comprehensive Git server covering branch management, commits, pushes, credentials, diagnostics, and more. The number is manageable and each tool serves a distinct function.

Completeness3/5

The tool set covers essential operations but has notable gaps: there's no branch listing, pull/merge, or stash functionality. Agents may encounter dead ends when needing these operations, though core workflows like commit and push are well supported.

Available Tools

22 tools
clear_junkAInspect

Remove untracked files and directories from the working tree (git clean -fd). Returns list of removed paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Describes action as removing untracked files and directories, analogous to 'git clean -fd', and mentions return value. However, lacks warnings about irreversible deletion, which is important for a destructive 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. Front-loaded with action and context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers core action, analogy to git command, and return type. Could mention that operation is permanent, but overall adequate for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, the parameter description already provides meaning. The tool description adds no extra context beyond what's in the schema, so baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states verb (remove), resource (untracked files and directories), and context (git clean). Distinguishes from siblings like 'find_changes' and 'undo_changes'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use vs alternatives like 'undo_changes' or 'restore_file'. Implies use for cleaning untracked files but lacks explicit context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_changesBInspect

List changed files: staged, unstaged, and untracked. Returns file counts and paths by status group.

ParametersJSON Schema
NameRequiredDescriptionDefault
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full behavioral burden. It implies a read operation but does not explicitly state it is read-only, nor does it discuss permissions, performance, or limitations beyond listing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the tool's purpose and output. Every word is necessary, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema, no annotations), the description is nearly complete. It mentions what is returned (file counts and paths by status group). However, it could briefly note that it operates within a git repo and respects .gitignore.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with the 'workingDirectory' parameter documented as 'Git repo path. Default current directory.' The tool description adds no extra meaning beyond the schema, which meets the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists changed files (staged, unstaged, untracked) and returns counts and paths by status group. It distinguishes from sibling tools like 'show_change' or 'restore_file' by focusing on listing rather than showing a single change or restoring.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does 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 siblings. With many sibling tools like 'get_updates', 'show_change', and 'undo_changes', explicit usage context or alternatives are absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_updatesAInspect

Fetch from remote and show incoming commits not yet in local branch. Returns count and commit summaries.

ParametersJSON Schema
NameRequiredDescriptionDefault
remoteNameNoRemote name. Default origin.origin
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description mentions 'fetch from remote' and 'returns count and commit summaries', giving some behavioral insight. However, it does not disclose that fetch updates remote-tracking branches or discuss side effects, permissions, 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that conveys the core action and output without unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core function and return information. While adequate, it could be more complete by noting that remote tracking branches are updated or that network access is required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are well-documented in the schema. The description adds no additional meaning beyond the provided parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Fetch from remote and show incoming commits not yet in local branch') and the specific resource. It distinguishes from siblings like 'show_history' or 'show_remote' by focusing on pending commits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking updates before merging, but does not explicitly state when to use or avoid alternatives. Context is clear but no exclusions or comparisons are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_vault_statusAInspect

Report current git credential helper configuration. Returns helper name and scope.

ParametersJSON Schema
NameRequiredDescriptionDefault
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries burden. It states 'Report' (read operation), implying no side effects, but does not explicitly confirm non-destructiveness or disclose other behaviors like auth requirements or rate limits. Adequate for a simple read tool but could be more transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with action and return info. No wasted words; every sentence contributes to clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool is simple (1 optional param, no output schema). Description states return values ('helper name and scope'), which is sufficient given no output schema. No obvious gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single parameter 'workingDirectory'. Description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'Report' and resource 'git credential helper configuration', and specifies returns 'helper name and scope'. This distinguishes it from sibling tools like set_vault or test_login, as it is a read-only status report.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies use for checking current configuration, but lacks explicit guidance on when to use versus alternatives (e.g., test_login) or when not to use. No exclusions or context provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

new_releaseAInspect

Create an annotated git tag and push it to the remote. Returns the tag name and target commit SHA.

ParametersJSON Schema
NameRequiredDescriptionDefault
messageNoAnnotation message for the tag.
tagNameNoTag name, e.g. v1.2.0.
remoteNameNoRemote to push to. Default origin.origin
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description adequately states the core action and return, but lacks details on side effects (e.g., overwriting existing tags, authentication needs, or failure handling).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no waste. Front-loaded with the action, then returns. Ideal length for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 parameters with full schema descriptions and no output schema, the description explains the tool's purpose and return values adequately. Minor omission: no mention of error conditions or prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds no extra parameter meaning beyond what the schema already provides. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'create' and 'push' with the resource 'annotated git tag', and distinguishes it from sibling tools like 'show_releases' or 'new_work_branch' by specifying the action and return values.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool or alternatives. For instance, it does not explain when to prefer this over 'show_releases' or other sibling tools, which reduces clarity for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

new_work_branchAInspect

Create a new branch from current HEAD and switch to it. Returns branch name and base commit SHA.

ParametersJSON Schema
NameRequiredDescriptionDefault
branchNameNoName of the new branch.
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Discloses creation and switch, mentions return values, but omits edge cases (e.g., behavior if branch exists) and potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that is front-loaded with the action and includes return information. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-param tool with full schema coverage, the description adequately covers main purpose and return values. However, missing details like error conditions and branch name uniqueness constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameter meanings are clear from schema. Description adds context about starting from HEAD and return info, but does not add significant new meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it creates a new branch from current HEAD, switches to it, and returns branch name and commit SHA. Distinguishable from sibling tools like switch_work.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage for creating a new branch, but no explicit guidance on when not to use or alternatives like switch_work for existing branches.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pushAInspect

Send already-committed work to the remote without making a new commit. Pushes the current branch; on a branch's first push, sets the remote branch as its upstream automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
remoteNameNoRemote name. Default origin.origin
workingDirectoryNoGit repo path. Default current directory..
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses key behaviors: no new commit, pushes current branch, auto-sets upstream on first push. Lacks edge cases but covers core behavior. No annotations provided, so description carries full burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words, front-loaded with the main action. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Sufficient for a simple push tool. No output schema, but description notes auto-upstream behavior. Could mention potential failure conditions but not required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of parameters with defaults. Description adds no extra meaning beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action (send already-committed work to remote, no new commit) and the resource (current branch). Distinguishes from siblings like 'save_work' which commits locally.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage (push after committing) but no explicit when-to-use vs alternatives or exclusions. No mention of conditions like requiring remote existence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reset_loginBInspect

Clear stored git credentials by unsetting the credential helper in local git config. Returns confirmation.

ParametersJSON Schema
NameRequiredDescriptionDefault
workingDirectoryNoGit repo path. Default current directory..
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should fully disclose behavior. It mentions the action and return value but omits potential side effects, error conditions, or safety precautions for a mutation 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences that efficiently convey the core action and result. No unnecessary words or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one optional parameter and no output schema, the description covers most needed context. Minor gaps include assumptions about the git repo state and whether clearing affects only the specified directory.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear description for the single parameter. The tool description adds no further meaning beyond what the schema provides, so baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: clearing stored git credentials by unsetting the credential helper. It distinguishes from siblings that set credentials or perform other 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/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like set_token or test_login. The description does not specify prerequisites or situations where it should be avoided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

restore_fileBInspect

Restore a single file to its HEAD state, discarding uncommitted changes. Returns restored file path.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathNoRepo-relative path to the file to restore.
workingDirectoryNoGit repo path. Default current directory..
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 'discarding uncommitted changes', which indicates destructive behavior, but it does not disclose that the operation is irreversible, what happens to staged changes, or any required permissions. For a destructive tool, 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two short sentences that convey the essential information without any fluff. Every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 params, no output schema, no annotations), the description adequately covers the core behavior and return value. However, it lacks information about error cases or prerequisites, which would be helpful for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description does not add additional meaning beyond what is already in the schema parameter descriptions. It merely restates the formatting requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'restore' and resource 'single file to its HEAD state', and adds context about discarding uncommitted changes. However, it does not explicitly differentiate from siblings like 'undo_changes' or 'clear_junk', which could have overlapping purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (to discard uncommitted changes and restore to HEAD), but it offers no guidance on when not to use or what alternatives exist. The usage context 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.

save_workAInspect

Stage changes, commit with a message, and optionally push to remote. Returns commit SHA and push result.

ParametersJSON Schema
NameRequiredDescriptionDefault
filesNoFiles to commit. Default empty (commits all changes).
messageNoCommit message.
pushToRemoteNoPush to remote after commit. Default false.
workingDirectoryNoGit repo path. Default current directory..
Behavior3/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 discloses the main actions (stage, commit, push) and return values, but omits details like handling of conflicts, authentication requirements, what happens on errors, or whether it modifies the working directory. More behavioral context would improve 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise sentence that efficiently conveys the core functionality and return values. No unnecessary words, and the most critical information (actions and outputs) is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (4 parameters, multiple git operations) and no output schema, the description covers the main purpose and return values but lacks details on edge cases, error states, prerequisites, or how it interacts with other tools. It is adequate but not fully complete for all usage scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are already described. The tool description adds the output info (returns SHA and push result) but does not provide additional semantic meaning for individual parameters beyond what the schema already states. The description of default behavior for 'files' is helpful but redundant with the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool stages changes, commits with a message, and optionally pushes to remote, and returns the commit SHA and push result. This distinguishes it from sibling tools like 'push' (which only pushes) and 'undo_changes' (which reverts).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (committing and optionally pushing) but does not explicitly state when not to use or provide alternatives. For example, it doesn't mention that if only pushing is needed, the 'push' tool should be used instead. No prerequisites or context are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_historyAInspect

Search commit history for commits whose message matches a search term. Returns matching commits with SHA, author, date, and message.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax commits to return. Default 20.
searchTermNoText to search for in commit messages.
workingDirectoryNoGit repo path. Default current directory..
Behavior3/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 states the tool returns matching commits, implying a read-only operation, which is accurate. However, it does not explicitly declare it as non-destructive, list authentication requirements, or describe behavior when no matches occur. Basic transparency is achieved but not enhanced beyond obvious inference.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences. The first sentence specifies the core action and resource, the second lists return fields. No extraneous words, and the most critical information is front-loaded. Every sentence serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has three parameters with full schema descriptions, no output schema, and no annotations, the description adequately covers the tool's purpose and return format. Missing minor details like error handling, case sensitivity of search, or behavior when limit is exceeded. Overall sufficiently complete for an agent to use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters (searchTerm, limit, workingDirectory) with default values and clear explanations. The description does not add additional semantic value beyond what the schema provides, such as format constraints or interaction between parameters. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Search commit history'), the specific resource (commits), the filter criterion (message matches a search term), and the return fields (SHA, author, date, message). It effectively distinguishes from sibling tools like 'show_history' and 'find_changes' by specifying the search-on-message behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies proper usage (when you need to find commits by message), but it does not provide explicit guidance on when to use this tool versus alternatives such as 'show_history' (which may show all commits) or 'find_changes' (which may search by file changes). No when-not or exclusionary criteria are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sshAInspect

Change a remote URL to its SSH equivalent. Returns old and new remote URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault
sshUrlNoNew SSH remote URL, e.g. git@github.com:owner/repo.git.
remoteNameNoRemote name to update. Default origin.origin
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden. It discloses that the tool performs a mutation ('Change') and returns old and new URLs. However, it lacks details on side effects (e.g., whether it updates .git/config, checks for existing remote, or requires specific permissions).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that front-load the main purpose and outcome. Every word is necessary, no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with 3 parameters and no output schema, the description covers the core function and return value. It could mention if it validates the new SSH URL or handles errors, but overall it is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (all three parameters have descriptions). The description adds no extra parameter meaning beyond the schema, so it meets the baseline of 3. No improvements or degradations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Change a remote URL to its SSH equivalent') and the resource ('remote URL'). It distinguishes from sibling tools like show_remote and set_token by specifying the SSH conversion purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives (e.g., show_remote to view current remote, or manual change). No mention of prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_tokenAInspect

Store a personal access token for HTTP git authentication. Returns confirmation (token value is never echoed).

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenNoPersonal access token to store.
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses that the token value is never echoed, but lacks other behavioral details such as whether the token overwrites existing ones, persistence, or security implications. Without annotations, this is a partial disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, concise, and front-loaded with the core purpose. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple token storage tool, the description covers the key aspect (storing a token, no echo) and the schema details the parameters. Lacks some implementation details but is largely sufficient given tool complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage of parameter descriptions. The main description adds no additional semantic value beyond what the schema states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the verb 'Store', the resource 'personal access token', and the context 'for HTTP git authentication'. This distinguishes it from sibling tools like set_ssh and reset_login.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose is clear, but there is no explicit guidance on when to use this tool versus alternatives like set_ssh or reset_login. The context of sibling tools implies usage, but lacks direct recommendations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_vaultCInspect

Configure the git credential helper to use a specific vault path. Returns new credential helper value.

ParametersJSON Schema
NameRequiredDescriptionDefault
vaultPathNoPath to the credential helper vault executable.
workingDirectoryNoGit repo path. Default current directory..
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 indicates this is a mutation ('Configure') and returns a value, but fails to mention side effects, required permissions, or whether the change is reversible. For a configuration tool, 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two sentences, zero wasted words, and the important information is front-loaded. Every element serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and annotations, the description should provide more context about the tool's role among 23 siblings. It does not explain what 'vault path' means in the credential helper context or how the return value should be used, leaving the agent with incomplete information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The tool description does not add additional meaning beyond what the parameter descriptions already provide. It mentions 'vault path' generally but does not elaborate on format or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Configure') and identifies the resource ('git credential helper to use a specific vault path'). It clearly states the tool's primary action and return value, making it distinct from siblings like set_ssh or get_vault_status. However, it could explicitly differentiate from other configuration tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does 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 (e.g., set_token, reset_login). There are no prerequisites, context, or exclusions mentioned. The agent receives no help in deciding between this and similar sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

show_changeBInspect

Show the diff for a specific file or all changed files. Returns unified diff text.

ParametersJSON Schema
NameRequiredDescriptionDefault
stagedNoShow staged diff. Default false.
filePathNoRepo-relative file path. If empty, shows all.
workingDirectoryNoGit repo path. Default current directory..
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description discloses that output is unified diff text, but without annotations, it fails to communicate whether the tool modifies state, requires authentication, or has any notable side effects. For a potentially read-only tool, 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single clear sentence, no wasted words. Efficiently communicates core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequately states return type (unified diff text) but lacks details on behavior when no changes exist, error handling, or performance considerations. With 3 parameters and no output schema, more context would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so description adds no extra meaning beyond schema. Baseline of 3 is appropriate; no additional semantic value is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states verb 'show' and resource 'diff for a specific file or all changed files', and specifies output as 'unified diff text'. Distinguishes from sibling tools like show_history and show_releases by focusing on diff 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/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus siblings such as find_changes or get_updates. Context is implied but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

show_diagnosticBInspect

Show git repository diagnostic info: current branch, upstream, HEAD SHA, remote URLs, and status summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
workingDirectoryNoGit repo path. Default current directory..
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, shifting the burden to the description. It only states what info is shown, without disclosing side effects, permissions, or behavioral traits like read-only nature. The agent lacks awareness of any constraints or requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the core purpose and lists specific outputs. Every word is necessary, and the structure is efficient with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one optional param, no output schema), the description adequately covers what the tool does by listing the diagnostic info. It is nearly complete, though it could mention that output is textual or that it requires a valid git repo.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter 'workingDirectory', which is already described as 'Git repo path. Default current directory.' The tool description adds no extra meaning beyond the schema, meeting the baseline for sufficient documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action (show) and resource (git repository diagnostic info), listing specific details like current branch, upstream, HEAD SHA, remote URLs, and status summary. It distinguishes from siblings such as show_remote or show_change by focusing on comprehensive diagnostic info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool versus alternatives like show_remote or show_change. No exclusions or context are given, leaving the agent to infer usage from the purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

show_historyAInspect

Show recent commit history. Returns commits with SHA, author, date, and message.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of commits to return. Default 20.
branchNameNoBranch name. Default current branch.
workingDirectoryNoGit repo path. Default current directory..
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It states 'recent' but does not define recency (e.g., last N commits by time or count). No disclosure of read-only nature, auth needs, or performance implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no redundant information. Every word adds value. Front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with no output schema and no annotations, the description is adequate. It covers purpose, return fields, and parameter hints. Minor gap: 'recent' could be clarified relative to limit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. Description adds 'recent' but parameters are already well-documented in schema. No additional meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Show recent commit history' and specifies return fields (SHA, author, date, message). Distinguishes from sibling tools like 'search_history' and 'show_change' by focusing on listing recent commits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when/when-not or alternatives provided. 'Show recent commit history' implies usage for browsing history, but does not explain when to prefer 'search_history' or 'show_change'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

show_releasesAInspect

List all tags/releases in the repository, newest first. Returns tag names, target SHAs, and annotation messages.

ParametersJSON Schema
NameRequiredDescriptionDefault
workingDirectoryNoGit repo path. Default current directory..
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It transparently states the ordering (newest first) and the fields returned. It does not mention permissions or side effects, but as a read operation, it is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded, and contains no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter, the description covers the core functionality and return values. It could clarify if 'releases' and 'tags' are synonymous or different, and mention any limits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema's description of the workingDirectory parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List', the resource 'tags/releases', and details what is returned (names, SHAs, messages). It distinguishes itself from sibling tools like 'show_remote' and 'show_history'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing releases but does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

show_remoteBInspect

Show all remote names and their fetch/push URLs. Returns list of remotes with URL and type.

ParametersJSON Schema
NameRequiredDescriptionDefault
workingDirectoryNoGit repo path. Default current directory..
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 only states the tool shows remote names and URLs, without disclosing behavioral traits such as read-only nature, network access requirements, or potential failures. This is minimal for a read 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/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences that directly state the purpose and output. It is front-loaded and contains no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (1 optional parameter, no output schema, no nested objects), the description adequately covers what the tool does and returns. It specifies the output ('list of remotes with URL and type'), which is sufficient for an agent to understand the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (the single parameter 'workingDirectory' has a description). The tool description adds no additional meaning beyond the schema, so it meets the baseline. No extra semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Show all remote names and their fetch/push URLs') and resource ('remotes'). It distinguishes itself from sibling tools like 'show_change', 'show_history', etc., by specifying 'remote names' and 'URLs'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does 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. There's no mention of context, prerequisites, or when not to use it. Sibling tools like 'push' or 'fetch' might also be relevant, but no differentiation is made.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

switch_workAInspect

Switch to an existing branch. Returns the branch switched to and current HEAD SHA.

ParametersJSON Schema
NameRequiredDescriptionDefault
branchNameNoName of the branch to switch to.
workingDirectoryNoGit repo path. Default current directory..
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility for behavioral disclosure. The description only mentions the return value and not behavioral traits like whether it requires a clean working directory, if it can discard changes, or error handling for non-existent branches.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no unnecessary words. It efficiently conveys the core action and output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple git switch operation with two parameters and no output schema, the description is adequate but lacks completeness regarding preconditions (e.g., clean index, branch existence) or error states. It could mention that the branch must already exist, as sibling tools like new_work_branch imply creation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, meaning both parameters are clearly documented by the schema. The description does not add extra semantic meaning beyond the schema, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (switch to an existing branch) and the return value (the branch switched to and current HEAD SHA). It is specific about the resource and outcome, distinguishing from sibling tools like new_work_branch which likely creates branches.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for switching to an existing branch, but does not explicitly provide when to use it vs. alternatives, such as new_work_branch for creating branches, or when not to use it (e.g., when there are uncommitted changes).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

test_loginAInspect

Test whether git credentials are working by attempting ls-remote against the origin. Returns success/failure and remote refs count.

ParametersJSON Schema
NameRequiredDescriptionDefault
remoteNameNoRemote to test. Default origin.origin
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Describes operation (ls-remote) and return values (success/failure, ref count), but does not explicitly state it is read-only or discuss side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no unnecessary words. Information is front-loaded with action and outcome.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple test tool with no output schema, description adequately explains what it does and what it returns. Could mention potential error cases (e.g., not a git repo) but overall sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%; both parameters have descriptions and defaults. Description mirrors schema defaults (origin, .) without adding new meaning beyond what is already in schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb (test) and resource (git credentials via ls-remote). Distinguishes from sibling tools like set_token, set_ssh, reset_login which are about configuration rather than testing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like set_token or set_ssh. Does not specify prerequisites (e.g., git repo must exist) or context for testing credentials.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

undo_changesAInspect

Discard uncommitted changes. If filePath given, restores that file; otherwise restores all tracked files. Returns list of restored paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathNoRepo-relative file path to undo. If empty, undoes all tracked changes.
workingDirectoryNoGit repo path. Default current directory..
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavior. It states it discards uncommitted changes (implying data loss) and returns a list of paths, but does not explicitly mention irreversibility or that it only affects tracked files.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, with the first stating the main purpose and the second covering conditional behavior and return value. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool with two parameters and no output schema, the description covers the basic behavior, conditional logic, and return value. However, it could mention that it operates on git-tracked files and potential irreversibility.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are already well-documented. The description adds conditional behavior (if filePath given) but essentially echoes schema information. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool discards uncommitted changes, with specific conditional behavior based on filePath. It distinguishes from sibling tools like restore_file by explicitly mentioning which files are restored.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the conditional logic (filePath vs all tracked files) but does not provide explicit guidance on when to use this tool versus siblings like restore_file, nor does it mention prerequisites (e.g., being in a git repo).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources