GitKraken MCP
OfficialThis server connects AI assistants to GitKraken workflows, enabling git operations, issue tracking, and pull request management across multiple providers.
Git repository operations: run git commands like add, commit, checkout, push, pull, fetch, stash, and create/list/delete branches.
Pull request management: create pull requests, create reviews (with approval), fetch assigned PRs, get PR details and files, and retrieve comments.
Issue tracking: fetch issues assigned to you, get detailed issue information (including Jira epic children), and add comments to issues.
Provider support: works with GitHub, GitLab, Bitbucket, Azure DevOps, Jira, and Linear; includes provider-specific parameters like Azure project/organization.
GitKraken-specific tools: use GitLens commit composer to organize changes into well-formed commits; get prioritized open pull requests via Launchpad; start work by creating and linking a branch to an issue.
Workspace and preferences: list GitKraken workspaces and update user preferences such as default collapsed state of the Git Graph overview.
Context-aware assistance: can include review focus or implementation context only when explicitly provided by the user.
Enables interaction with Bitbucket repositories, issues, pull requests, and workflows.
Enables interaction with GitHub repositories, issues, pull requests, and workflows.
Enables interaction with GitLab repositories, issues, merge requests, and workflows.
Enables interaction with Jira issues and projects.
GitKraken MCP Server
The GitKraken MCP Server turns your AI assistant into a context-aware development partner by connecting it to git history, branches, issues, pull requests, and multi-repo workflows through GitKraken. It works with all the providers you would expect from the GitKraken software suite such as GitHub, GitLab, Azure DevOps, Bitbucket, Jira and more. Built by the team behind GitLens, the Git tool that 48 million developers chose, from first-time contributors to enterprise teams at Netflix and Adobe.
The GitKraken MCP Server is available on macOS, Windows, and Linux systems and works in VS Code, Cursor, Windsurf, Claude Desktop, Kiro, JetBrains, and more.
If you want to read more about the MCP server, you can check out the introductory blog post.
Table of Contents
Related MCP server: GitPilot MCP
Tools
Tools are the primary purpose of the MCP server. They are a set of finely curated commands that AI can use to interact with GitKraken without exploding your context. Some of those tools include: issues_assigned_to_me, gitlens_commit_composer, and pull_request_create_review. A full list of tools can be found in the GitKraken Help Center's Tools Reference.
The repository also includes a Docker MCP Catalog-compatible tools.json. To refresh it from the GitKraken core version pinned in the Docker image, run:
npm run generate:toolsThe generator builds the image before listing its tools, so Docker must be
available. Set TOOLS_COMMAND to a JSON command array to use an existing image,
or explicitly set GK_BIN to generate from a particular local executable. The
generator intentionally excludes app-only tools that MCP agents must not call.
Prompts
Prompts are the secondary purpose of the MCP server. They are a set of carefully crafted instructions that AI can use to understand how to use the tools, when to use them, and what information to provide when using them. A full list of prompts can be found in the GitKraken Help Center's Prompts Reference.
Installation
There are a few ways of installing the MCP server. Regardless of which installation method you choose, you may still need to configure your AI tools to work with the MCP server. You can find a set of instructions on the Help Center's MCP Getting Started guide.
GitLens
GitLens is by far the easiest way of installing the MCP server. Simply download and install GitLens into a supported IDE (VS Code, Cursor, etc) and the MCP server will be installed alongside it. Once you have GitLens installed, you can start using the tools right away.
NPM
You can also install and use the MCP server via npm. You can find the package on the npm registry.
The installation process details may vary by AI tool, but the general gist is that you will replace the MCP server JSON config with something that looks like this:
{
"mcpServers": {
"GitKraken": {
"args": ["@gitkraken/gk", "mcp"],
"command": "npx",
"type": "stdio"
}
}
}Docker
This repository includes auth-independent Docker packaging for the local MCP server. The image can list tools and run local Git tools against explicitly mounted repositories. Cloud workspaces, issues, pull requests, and provider operations still require a supported non-interactive GitKraken authentication contract.
Build the image:
docker build -t gitkraken-mcp:local .List the tools without authenticating:
docker run --rm gitkraken-mcp:local --list-toolsCheck tools.json against the clean image:
npm install
TOOLS_COMMAND='["docker","run","--rm","gitkraken-mcp:local","--list-tools"]' npm run check:toolsThe image starts gk mcp over stdio as the built-in non-root node user
(UID/GID 1000:1000) by default. On native Linux, bind mounts preserve host
ownership. If a mounted repository belongs to another UID, read operations may
work while write operations fail with permission denied, unable to create '.git/index.lock', or a similar Git error.
For Docker MCP Toolkit, set the optional container_user configuration to your
numeric host UID or UID:GID. Obtain those values with:
id -u
id -gFor example, use 1001 or 1001:1001. Leave container_user empty to retain
the image default. Do not use root or broaden repository permissions as normal
setup; select the numeric identity that already owns or can write the mounted
repositories. One identity applies to the whole server, so every configured
repository path must be accessible to that same UID and GID.
Only mount repository paths that the server should be allowed to read and
modify. Linked Git worktrees also require access to the external Git directory
referenced by their .git file. A draft registry entry is available in
docker/catalog/server.yaml.template.
Copy that template and tools.json into servers/gitkraken/ in a checkout of
docker/mcp-registry when preparing
the catalog pull request.
CLI
macOS
gk is available from Homebrew with the following command:
Homebrew:
brew install gitkraken-cliOr download it from the releases page and add it to your binaries folder:
mv ~/Downloads/gk /usr/local/bin/gkLinux / Ubuntu
gk is available as a downloadable binary from the releases page. Once you have it, add it to your binaries folder:
mv ~/Downloads/gk /usr/local/bin/gkOr create a new directory, move the binary and add it to $PATH:
mkdir "$HOME/cli"
mv ~/Downloads/gk "$HOME/cli"
export PATH="$HOME/gk:$PATH"You can also [download][releases page] your corresponding package (.deb, .rpm) and install it with:
sudo apt install ./gk.debor
sudo rpm -i ./gk.rpmWindows
gk is available from [Winget][winget] with the following command:
winget install gitkraken.cliTroubleshooting
gk from Oh-My-Zsh
If you installed the gitkraken-cli and are using Oh-My-Zsh you can run into a small aliasing issue. Oh-My-Zsh has gitk aliased as gk by default and that can create some problems. To fix this, type in your terminal:
unalias gkSupport
If you run into any issues, double check if we have the problem covered in our Help Center.
You can give feedback and report bugs on GitHub by submitting an issue.
If you would like to reach out to Support directly, you can submit a ticket
Available Tools
28 toolsapp_tool_boxA
Dispatch app-only helper actions for MCP apps. App-only; agents must not call this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | App helper action to execute. Supported values: 'git_status_data', 'git_graph_data', 'git_graph_targets', 'git_status_line_changes', 'git_push', 'git_pull', 'git_fetch', 'git_add_or_commit', 'git_stash', 'app_feedback', 'gitlens_ping', 'gitlens_open_graph', 'update_user_preferences', 'interaction_telemetry'. | |
| directory | No | Path of the working directory. | |
| options | No | Per-action options. Supported keys depend on the 'action' value and include 'app_name', 'comment', 'data', 'files', 'files_json', 'git_action', 'git_graph_app_collapsed', 'git_status_app_collapsed', 'include_untracked', 'interaction', 'message', 'sentiment', 'staged_only', and 'target_branch'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readWrite, non-destructive, non-idempotent behavior. The description adds the app-only restriction but does not describe side effects, permissions, or return behavior. With annotations present, the bar is lower and the description 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste. The first sentence states purpose, the second adds a critical usage restriction. Ideal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the simple description, the tool has a complex schema with many action-dependent options and no output schema. The description does not explain return values, error handling, or how to construct options for different actions, leaving gaps for an agent assessing completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema provides detailed descriptions for all parameters. The description does not add additional meaning beyond what the schema already offers, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool dispatches app-only helper actions for MCP apps and explicitly warns agents not to call it. The purpose is specific and actionable, though it relies on the schema for the list of actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states 'App-only; agents must not call this tool', providing a strong exclusion criterion. It does not elaborate on when an app should use it, but the restriction is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
app_update_user_preferencesA
Update GitKraken CLI user preferences for MCP apps. App-only; agents must not call this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| git_graph_app_collapsed | No | When true, future Git Graph overview app loads start in the collapsed state. | |
| git_status_app_collapsed | No | When true, future Git Status overview app loads start in the collapsed state. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and destructiveHint=false. Description adds scope 'for MCP apps' but no additional behavioral traits such as side effects, authorization needs, or confirmation requirements. With annotations present, the description provides minimal extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is extremely concise—two brief sentences. It front-loads the purpose and immediately follows with a critical usage constraint. No wasted words; every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two boolean parameters and no output schema, the description combined with the well-documented schema provides adequate context. It could optionally mention that preferences are persisted, but the key constraints are covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage for both boolean parameters. The description does not add any additional meaning or context beyond what the schema already provides, so it meets the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Update' and resource 'GitKraken CLI user preferences for MCP apps'. The explicit 'App-only; agents must not call this tool' distinguishes it from sibling tools and clearly defines its intended audience.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description provides explicit guidance that agents must not call this tool, which is a clear when-not usage instruction. However, it does not specify when to call it or offer alternatives, but the prohibition is strong and relevant for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_add_or_commitADestructive
Add file contents to the index (git add ) OR record changes to the repository (git commit -m [files...]). Use the 'action' parameter to specify which action to perform.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | The action to perform: 'add' or 'commit' | |
| directory | Yes | The directory to run git add or commit in | |
| files | No | Optional array of files to add or commit. If omitted, all files are added or all staged changes are committed. | |
| message | No | The commit message (required if action is 'commit') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and readOnlyHint=false. The description adds limited behavioral context (the two modes) but doesn't disclose side effects like irreversible changes or permissions needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main purpose, and contains no wasted words. It efficiently explains the dual functionality and the key parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (dual operations), schema coverage is complete. The description could note that message is required for commit, but it's implicit. No output schema, so return values are acceptable to omit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description only restates that the action parameter chooses the behavior. Schema coverage is 100%, so the description adds no new meaning beyond what's already in the parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs 'git add' or 'git commit' based on the action parameter, using specific command syntax. It distinguishes itself from sibling tools like git_log_or_diff and git_status by combining these two common operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use add vs commit, or when to prefer this tool over other sibling tools like gitlens_commit_composer. It lacks explicit context for usage or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_blameARead-only
Show what revision and author last modified each line of a file (git blame ).
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | The directory to run git blame in | |
| file | Yes | The file to blame |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering safety. The description adds no behavioral context beyond this, but does not contradict annotations. No additional disclosure needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy. Every word is meaningful. Front-loaded with action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two parameters, rich annotations, and no output schema, the description is adequate. It could mention output format, but the purpose is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description adds minimal extra meaning (the command-line equivalent 'git blame <file>'). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Show what revision and author last modified each line of a file', specifying the verb 'show' and resource 'revision and author per line'. This differentiates it from siblings like git_log_or_diff, which show commit history, not line-level attribution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. With many sibling tools (e.g., git_log_or_diff, git_status), explicit context would help the agent select the correct tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_branchBDestructive
List or create branches (git branch).
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Git branch action to be executed | |
| branch_name | No | (Optional) Name of the branch to create or delete | |
| directory | Yes | The directory to run git branch in |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and readOnlyHint=false, so the description does not need to repeat that. However, it adds no additional behavioral details (e.g., what happens when creating an existing branch). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence that is front-loaded with the key verbs (List or create). No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, yet the description does not explain what the tool returns (e.g., list output, success message for create). Also, it does not clarify that branch_name is required for create but not for list, which is critical for proper invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage for all three parameters. The description adds no extra meaning beyond the schema; it simply summarizes the actions. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the two supported actions (list and create) and references the underlying git command, making the tool's purpose unambiguous and distinct from sibling tools like git_checkout or git_add_or_commit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does 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 (e.g., git_checkout for switching branches) or when not to use it. The description merely restates the functionality without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_checkoutBDestructive
Switch branches or restore working tree files (git checkout ).
| Name | Required | Description | Default |
|---|---|---|---|
| branch | Yes | The branch to checkout. This must be a valid branch name without spaces | |
| directory | Yes | The directory to run git checkout in |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint: true; description adds 'switch or restore' confirming mutation. However, it does not mention potential side effects like uncommitted changes or conflicts, but annotations cover the destructive nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single sentence that front-loads the primary action. Every word is necessary given the tool's familiarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-param tool with annotations and no output schema, the description is minimally adequate. It omits prerequisites (e.g., clean working tree) and return values, but annotations partially compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with descriptions (branch: valid name without spaces; directory: run location). The description adds no extra meaning beyond the schema. Baseline 3 due to 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool switches branches or restores working tree files, using the git checkout command. It distinguishes from sibling tools like git_branch (branch management) and git_status (state) by naming the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use vs. alternatives like git_branch for branch creation or git_log_or_diff for history. The description does not clarify that git_checkout is for switching existing branches, not creating new ones.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_fetchADestructive
Download objects and refs from another repository (git fetch).
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | The directory to run git fetch in |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint, readOnlyHint, idempotentHint, openWorldHint. Description adds context of network access ('from another repository') but does not elaborate on behavior like ref updates or authentication. With annotations present, this 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 10 words that is front-loaded with the purpose. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool, the description covers the core action. However, it lacks mention of return behavior (e.g., output not specified) and does not explain typical side effects. Moderate completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter 'directory'. Description does not add any further meaning or examples, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Download' and resource 'objects and refs from another repository', which precisely describes git fetch. It distinguishes from siblings like git_pull by specifying download-only behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 git_pull or git_push. The description is purely functional and does not indicate use cases or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_graphARead-only
Show the commit graph for a repository (git log --graph), will open a UI if client supports it.
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | Path of the working directory. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds value by noting that it will open a UI if the client supports it, providing behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that conveys the purpose and a key behavioral note. It could be slightly rephrased for clarity, but it is not overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 and no output schema, the description adequately covers what the tool does and mentions the UI behavior. No major gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter 'directory' described as 'Path of the working directory.' The description does not add any additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Show the commit graph for a repository (git log --graph)' with a specific verb and resource. It distinguishes itself from siblings like git_log_or_diff by specifying graphical representation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for viewing a commit graph but does not explicitly state when to use this tool versus alternatives like git_log_or_diff or git_blame. No guidance on 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.
gitkraken_workspace_listARead-only
Lists all Gitkraken workspaces
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, non-destructive behavior. The description adds no further behavioral insights beyond the annotation hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (no parameters, read-only) and annotations, the description is largely complete. It could hint at the return format (e.g., workspace names or IDs), but lacking an output schema, this is a minor omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so the description doesn't need to explain them. Baseline for zero parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Lists' and the resource 'all Gitkraken workspaces', which precisely defines the tool's purpose. No sibling tool competes for this functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a straightforward retrieval use case, but lacks explicit guidance on when to use this tool vs. other tools. However, given no similar siblings exist, this is not a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gitlens_commit_composerARead-only
Gitlens Commit Composer. Organize your changes into well-formed commits with clear messages and descriptions. Useful for breaking large changes into smaller commits.
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | Path of the working directory. | |
| instructions | No | OPTIONAL. Use this ONLY if the user explicitly provided specific requirements about how commits should be organized, what commit messages should say, or particular commit structure preferences. Do NOT use this parameter unless you are 100% certain about the user's intentions. Examples: 'use conventional commits', 'prefix each commit with JIRA-123', 'keep commit messages under 50 characters'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, which implies no destructive actions; description aligns by saying 'organize' but doesn't clarify if commits are actually created or only message suggestions. No contradiction found between annotations and description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that directly state purpose and usage hint, with no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Defines purpose and hints at usage, but lacks details on output format or behavior when no changes are detected; no output schema provided, so description could be slightly more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter descriptions are detailed, especially the 'instructions' parameter which includes usage examples and warnings about proper use, adding value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool organizes changes into well-formed commits with clear messages, and distinguishes from siblings like git_add_or_commit by focusing on composing commits rather than executing the full workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Suggests it's 'useful for breaking large changes into smaller commits' but does not specify when not to use it, prerequisites, or compare with alternatives like git_add_or_commit or gitlens_start_review.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gitlens_launchpadARead-only
Gitlens Launchpad. Gets your open pull requests prioritized by what needs attention: ready to merge, has conflicts, awaiting review, etc. Helpful for checking todos, outstanding tasks, or deciding what to work on next.
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | Path of the working directory. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, covering basic safety. The description adds prioritization context but does not disclose additional behavioral traits like network dependencies or result count limits, which is acceptable given the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary action, and no redundant wording. Every sentence provides essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter and no output schema, the description sufficiently covers purpose and usage. Minor missing details like explicit mention of user-scoping or output format, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage for the single required parameter (directory). The tool description adds no extra meaning beyond the schema's description, meeting the baseline but not exceeding it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it gets open pull requests prioritized by attention needs (ready to merge, conflicts, awaiting review), providing a specific verb-resource combination that distinguishes it from sibling tools like pull_request_assigned_to_me.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains it's helpful for checking todos and deciding what to work on next, giving clear usage context. However, it lacks explicit when-not-to-use guidance or direct comparisons to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gitlens_start_reviewBRead-only
Gitlens Start Review. Creates a dedicated worktree and reviews your PR with an AI agent.
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | Path of the working directory. | |
| instructions | No | OPTIONAL. Use this ONLY if the user explicitly provided specific requirements about the review focus, review criteria, or what aspects to check. Do NOT use this parameter unless you are 100% certain about the user's intentions. Examples: 'focus on security issues', 'check for performance regressions', 'review only the authentication logic'. | |
| pr_url | Yes | URL of the PR to start review. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description states it creates a worktree and reviews (write operations), but annotations declare readOnlyHint=true, a direct contradiction. No additional behavioral details provided beyond the contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence front-loads purpose with no unnecessary words. Each part ('creates worktree', 'reviews PR') earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Missing details on worktree creation side effects, AI agent behavior, output format, and resolution of annotation contradiction. No output schema; description insufficient for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions. Tool description adds no extra parameter info beyond schema, achieving the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a dedicated worktree and reviews a PR with an AI agent, using specific verbs and resources that distinguish it from sibling tools like gitlens_start_work or pull_request_create_review.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (e.g., pull_request_create_review, gitlens_start_work). The instructions parameter has a caveat, but overall lacks usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gitlens_start_workBRead-only
Gitlens Start Work. Creates a work based on an issue. This tool will create a branch and link it with the issue, keeping context visible throughout your work.
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | Path of the working directory. | |
| instructions | No | OPTIONAL. Use this ONLY if the user explicitly provided specific requirements about the implementation approach, or additional context to supplement the issue. Do NOT use this parameter unless you are 100% certain about the user's intentions. | |
| issue_url | Yes | URL of the issue to start work on. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description claims creation (a write operation) but annotations set readOnlyHint=true, creating a direct contradiction. No further behavioral details are provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with tool name and action, no redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema provided, and description omits what happens after creation (e.g., branch checkout, return value). The annotation contradiction further undermines completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers all parameters with descriptions (100% coverage), so description adds little beyond schema. The mention of 'issue' maps to issue_url but no additional semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'creates a work based on an issue' and 'create a branch and link it with the issue', specifying the action and resource distinctly from siblings like gitlens_start_review.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when an issue URL is provided, but does not explicitly state when to use this tool versus alternatives (e.g., git_branch, git_checkout) or provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_log_or_diffARead-only
Show commit logs or changes between commits (git log --oneline or git diff).
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | The action to perform: 'log' for commit logs or 'diff' for changes | |
| authors | No | Optional array of author names or emails to filter commits by (only applies to 'log' action) | |
| directory | Yes | The directory to run the command in | |
| revision_range | No | Optional revision range (e.g., 'HEAD', 'main..feature', 'abc123', 'HEAD~5..HEAD'). For 'diff' action, shows differences for the specified range. For 'log' action, shows commits in the range. Defaults to HEAD. | |
| since | No | Optional date/timestamp/relative time to show commits after (e.g., '2024-01-01', '2 weeks ago', 'yesterday', '1 hour ago', '3 days ago'). Only applies to 'log' action. | |
| until | No | Optional date/timestamp/relative time to show commits before (e.g., '2024-12-31', '1 week ago', 'today', 'yesterday', '2 hours ago'). Only applies to 'log' action. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only behavior. The description adds behavioral context by specifying the exact git commands and output format (--oneline), which goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, concise sentence that immediately conveys the tool's purpose. No extraneous information; every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the dual functionality, rich schema descriptions, and presence of annotations, the description is reasonably complete. It covers the main behavior, though it could be slightly more explicit about output results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are well-documented in the schema. The description does not add additional meaning beyond the schema, meeting the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's dual function: showing commit logs or changes. It references specific git commands (git log --oneline and git diff) and is distinguishable from sibling tools like git_blame or git_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. While the description indicates it's for logs or diffs, it doesn't discuss when to prefer other sibling tools like git_blame or git_status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_pullBDestructive
Fetch from and integrate with another repository or a local branch (git pull).
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | The directory to run git pull in |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and readOnlyHint=false, so the description's mention of 'integrate' adds minor context about merging behavior. However, it does not disclose potential side effects like conflict resolution, force pushing, or interaction with remote branches.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently communicates the tool's purpose. No extraneous information is included, but it could be slightly expanded to include usage context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is destructive (modifies local repository) and has no output schema, yet the description does not explain return behavior, prerequisites, or potential issues like uncommitted changes. Given the presence of many sibling tools, more context would help the agent select correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the only parameter 'directory' is described in the schema. The description adds no additional meaning beyond what the schema already provides, meeting the baseline for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch from and integrate with' and specifies the resource as 'another repository or a local branch'. It effectively conveys the core action of git pull. While it distinguishes from siblings like git_fetch by mentioning integration, it does not explicitly differentiate from other sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as git_fetch, git_checkout, or git_merge. The description simply states what it does without any contextual hints about prerequisites or scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_pushADestructive
Update remote refs along with associated objects (git push).
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | The directory to run git push in |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint true and readOnlyHint false. Description adds 'along with associated objects' but no further behavioral traits. No contradiction, but minimal added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 9 words, no redundant information. Efficient and front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with annotations covering destructive nature, the description is adequate. Lacks usage guidance, but overall complete given simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter 'directory' is fully described in the schema. Description does not add meaning beyond schema, meeting baseline for 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool executes 'git push' to update remote refs. The name matches the action, and it is distinct from sibling tools like git_fetch or git_pull.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as git_fetch or git_pull. No prerequisites or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_stashBDestructive
Stash the changes in a dirty working directory (git stash).
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | The directory to run git stash in | |
| include_untracked | No | When true, include untracked files in the stash. | |
| name | No | Optional name for the stash (used as the stash message) | |
| staged_only | No | When true, stash only the currently staged changes and leave unstaged work untouched. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false. The description adds 'dirty working directory' but does not elaborate on other behavioral traits (e.g., that stashing reverts working directory changes, creates a stash entry). It is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no fluff. It is front-loaded and to the point, though it lacks any structural organization.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a git stash tool with four parameters and no output schema, the description only provides the basic action. It does not explain the effect on the working directory, how to retrieve the stash later, or any caveats, leaving significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with clear parameter descriptions. The description does not add any additional context beyond the schema, so it meets the baseline for a fully described schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: stash changes in a dirty working directory, using the git stash command. It is distinct from sibling tools like git_add_or_commit or git_checkout, though it doesn't elaborate on the meaning of 'stash'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use stashing versus alternatives (e.g., committing, discarding). The description does not mention when not to use or provide any context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_statusARead-only
Show the working tree status (git status), will open a UI if client supports it.
| Name | Required | Description | Default |
|---|---|---|---|
| directory | Yes | Path of the working directory. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds the behavioral detail that it will open a UI if the client supports it, which is beyond the annotations. However, it does not elaborate on other aspects like output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the core purpose. Every word adds value, and there is no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (reading git status) and rich annotations, the description is mostly complete. However, since there is no output schema, a hint about the output format (e.g., text or structured object) would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with a description for 'directory'. The description does not add any additional meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Show the working tree status (git status)' which specifies the verb and resource. It also mentions opening a UI if supported, which helps distinguish it from other git sibling tools like git_log_or_diff or git_branch.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that this tool is for checking status and possibly via UI, but it does not explicitly state when to use versus alternatives or when not to use it. No exclusions or alternative tool names are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_worktreeBDestructive
List or add git worktrees (git worktree ).
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Git worktree action to be executed | |
| branch | No | (Optional) Existing branch for the new worktree (used for add) | |
| directory | Yes | The directory to run git worktree in | |
| path | No | (Optional) Path for the worktree (required for add) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructive and non-read-only behavior. The description does not add context about side effects, such as that adding a worktree creates a new working directory or that listing is safe. It relies entirely on annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no wasted words. However, it could be expanded to include more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of git worktrees and the absence of an output schema, the description is too minimal. It does not explain what a worktree is, how the directory parameter is used, or what the output of 'list' looks like, which may confuse an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The tool description does not add meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists or adds git worktrees, specifying the two actions. It distinguishes this tool from sibling git commands like git_branch or git_add_or_commit by focusing specifically on worktree operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. No mention of prerequisites, scenarios, or comparisons with sibling tools like git_checkout or git_branch, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
issues_add_commentBDestructive
Add a comment to an issue
| Name | Required | Description | Default |
|---|---|---|---|
| azure_organization | No | Optionally set the Azure DevOps organization name. Required for Azure DevOps | |
| azure_project | No | Optionally set the Azure DevOps project name. Required for Azure DevOps | |
| comment | Yes | The text content of the comment | |
| issue_id | Yes | The ID of the issue to comment on | |
| provider | Yes | Specify the issue provider | |
| repository_name | No | Repository name. This is required for GitHub and GitLab | |
| repository_organization | No | Organization name. This is required for GitHub and GitLab |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what annotations already provide (destructiveHint=true). It doesn't mention side effects, confirmation, or error conditions, despite the tool being a mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence with no extraneous words. Front-loaded and efficiently communicates the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple write tool with no output schema, the description is minimally adequate but lacks details on expected result or success confirmation. It covers the essential action but not the full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already documented. The main description does not add any additional meaning beyond what the schema provides, meeting the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Add a comment to an issue' uses a specific verb ('Add') and resource ('comment to an issue'), clearly distinguishing from siblings like issues_get_detail or issues_assigned_to_me.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when or why to use this tool versus alternatives, nor any prerequisites or exclusions. For a write operation, context like required permissions or ordering could be helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
issues_assigned_to_meARead-only
Fetch issues assigned to the user
| Name | Required | Description | Default |
|---|---|---|---|
| azure_organization | No | Optionally set the Azure DevOps organization name. Required for Azure DevOps | |
| azure_project | No | Optionally set the Azure DevOps project name. Required for Azure DevOps | |
| page | No | Optional parameter to specify the page number, defaults to 1 | |
| provider | Yes | Specify the issue provider |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description's safety profile is covered. The description adds that it fetches assigned issues, but does not disclose pagination behavior or that it operates on a per-provider basis.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. It is front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description states the basic function, it omits context about pagination (despite the page parameter), the meaning of 'assigned to the user' as the authenticated user, and the fact that it targets a specific provider from the enum. Given no output schema, some return structure detail would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema documentation covers 100% of parameters, so the description does not need to add extra detail. The description itself adds no parameter semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch' and the resource 'issues assigned to the user', making the tool's purpose unambiguous. It distinguishes itself from sibling tools like 'issues_get_detail' and 'issues_add_comment'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as 'issues_get_detail' or when to apply filters. The description lacks context on appropriate use cases or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
issues_get_detailARead-only
Retrieve detailed information about a specific issue by its unique ID. For Jira Epics, the response includes a childIssues array containing all issues linked to the epic.
| Name | Required | Description | Default |
|---|---|---|---|
| azure_organization | No | Optionally set the Azure DevOps organization name. Required for Azure DevOps | |
| azure_project | No | Optionally set the Azure DevOps project name. Required for Azure DevOps | |
| issue_id | Yes | The Number or ID of the issue to retrieve. Supported formats include GitHub/GitLab numeric IDs (e.g., 123 or #123), Jira keys (e.g., PROJ-123), Linear issue IDs (UUID format), etc. | |
| provider | Yes | Specify the issue provider | |
| repository_name | No | Repository name. This is required for GitHub and GitLab | |
| repository_organization | No | Organization name. This is required for GitHub and GitLab |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context: for Jira Epics, the response includes a childIssues array. This goes beyond what annotations provide, though it could mention error/not found behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first line states main purpose, second line adds a key special case. No fluff, front-loaded, efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so description should clarify return structure. It only mentions childIssues for Jira Epics, leaving other providers' responses unspecified. Also lacks guidance on optional parameters like azure_organization. Adequate but with gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all parameters described. The description adds no additional parameter 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'retrieve' and resource 'detailed information about a specific issue', and differentiates from siblings by mentioning Jira Epic childIssues behavior. It is specific and distinguishes from tools like issues_assigned_to_me.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving a single issue by ID but does not explicitly state when to use this tool versus siblings like issues_assigned_to_me (list) or pull_request_get_detail. No alternatives or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pull_request_assigned_to_meARead-only
Search pull requests where you are the author or assignee. Set reviewer to true to also include pull requests where you are a requested reviewer (github and gitlab only).
| Name | Required | Description | Default |
|---|---|---|---|
| azure_project | No | Optionally set the Azure DevOps project name of the pull request. Required for Azure DevOps | |
| is_closed | No | Set to true if you want to search for closed pull requests | |
| page | No | Optional parameter to specify the page number, defaults to 1 | |
| provider | Yes | Specify the git provider | |
| repository_name | No | Set the repository name of the pull request. Required for Azure DevOps and Bitbucket | |
| repository_organization | No | Set the organization name of the pull request. Required for Azure DevOps and Bitbucket | |
| reviewer | No | Set to true to also include pull requests where you are a requested reviewer. Supported by github, github_enterprise, gitlab, gitlab_self_hosted; ignored for Azure DevOps and Bitbucket. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint:true) already indicate safe read operation; description adds precision about reviewer behavior per platform. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff, front-loaded with core action. Every word adds necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Missing clarification on whether search spans all repositories or requires repository_name for some providers. No mention of pagination despite 'page' parameter. Could better describe scope given complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description's mention of 'reviewer' being limited to github/gitlab repeats schema info, adding minimal new value. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb+resource: 'Search pull requests' specifying the role constraints (author or assignee). Distinct from siblings like 'pull_request_get_detail' and 'pull_request_create'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides guidance on using the reviewer parameter with platform restrictions ('github and gitlab only'). Lacks explicit direction on when to choose this over similar tools like 'issues_assigned_to_me' or 'pull_request_get_comments'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pull_request_createCDestructive
Create a new pull request
| Name | Required | Description | Default |
|---|---|---|---|
| azure_project | No | Optionally set the Azure DevOps project name of the pull request. Required for Azure DevOps | |
| body | No | The body/description of the pull request | |
| is_draft | No | Create as draft pull request | |
| provider | Yes | Specify the git provider | |
| repository_name | Yes | Set the repository name of the pull request. Required for Azure DevOps and Bitbucket | |
| repository_organization | Yes | Set the organization name of the pull request. Required for Azure DevOps and Bitbucket | |
| source_branch | Yes | Source branch from which the pull request will be created | |
| target_branch | Yes | Target branch where the pull request will be merged | |
| title | Yes | The title of the pull request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true. The description adds no additional behavioral context such as side effects, authorization needs, or branch requirements. With annotations present, the description should at least mention that branches must exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous words. Highly concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 9 parameters, provider-specific requirements, and no output schema. The description is too minimal; it does not explain provider variations, success behavior, or typical usage patterns. More context is needed for an agent to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% parameter description coverage, so the schema already provides meaning. The tool description adds no extra parameter context. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new pull request' clearly states the verb and resource, and is distinct from sibling pull_request_* tools like 'pull_request_create_review' or 'pull_request_get_detail'. However, it lacks specificity about the repository context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (e.g., other pull request tools). No mention of prerequisites like source/target branch existence or required permissions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pull_request_create_reviewBDestructive
Create a review for a pull request
| Name | Required | Description | Default |
|---|---|---|---|
| approve | No | Set to true if you want to approve the pull request | |
| azure_project | No | Optionally set the Azure DevOps project name of the pull request. Required for Azure DevOps | |
| provider | Yes | Specify the git provider | |
| pull_request_id | Yes | ID of the pull request to create the review for | |
| repository_name | Yes | Set the repository name of the pull request. Required for Azure DevOps and Bitbucket | |
| repository_organization | Yes | Set the organization name of the pull request. Required for Azure DevOps and Bitbucket | |
| review | Yes | Comment to add to the pull request review |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true, so 'Create' aligns but adds no extra behavioral context (e.g., side effects, whether approval is part of review). Acceptable but not improved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no unnecessary words, front-loaded with the core action. Perfectly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no description of return values or postconditions. For a destructive action, more context about what happens when the review is created would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all seven parameters. The description adds no additional meaning beyond the schema, so baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a review for a pull request' with a specific verb and resource, clearly differentiating from sibling tools like 'pull_request_create' which creates a PR itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'gitlens_start_review' or 'pull_request_get_comments'. Missing context on prerequisites or typical usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pull_request_get_commentsBRead-only
Get all the comments in a pull requests
| Name | Required | Description | Default |
|---|---|---|---|
| azure_project | No | Optionally set the Azure DevOps project name of the pull request. Required for Azure DevOps | |
| provider | Yes | Specify the git provider | |
| pull_request_id | Yes | ID of the pull request to add the comment to | |
| repository_name | Yes | Set the repository name of the pull request | |
| repository_organization | Yes | Set the organization name of the pull request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's 'Get' aligns. However, it adds no extra behavioral details like pagination, ordering, or rate limits. Minimal value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is concise but could be improved with additional structure or details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks information about the return format or structure of comments. Since there is no output schema, the description should compensate by describing the response, which it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter having a description. The tool description does not add additional semantics or constraints beyond the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'all the comments in a pull request'. It distinguishes the tool from sibling tools like pull_request_create or pull_request_get_detail by specifying it retrieves comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as pull_request_get_detail, which might also include comments. No explicit when-to-use or when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pull_request_get_detailBRead-only
Get an specific pull request
| Name | Required | Description | Default |
|---|---|---|---|
| azure_project | No | Optionally set the Azure DevOps project name of the pull request. Required for Azure DevOps | |
| provider | Yes | Specify the git provider | |
| pull_request_files | No | Set to true if you want to retrieve the files changed in the pull request. Not supported by Azure DevOps. | |
| pull_request_id | Yes | ID of the pull request to retrieve | |
| repository_name | Yes | Set the repository name of the pull request | |
| repository_organization | Yes | Set the organization name of the pull request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, which cover the key behavioral trait. The description adds minimal extra context beyond stating the action, so it meets but does not exceed expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the verb and resource. Minor grammatical awkwardness ('an specific') does not significantly hinder clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite a rich sibling set and no output schema, the description lacks key context like provider-specific behavior (e.g., the pull_request_files parameter not supported by Azure DevOps). Important caveats are relegated to parameter descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with all six parameters described. The tool description itself adds no additional parameter information, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('pull request'), clearly indicating the action. It distinguishes from sibling tools like pull_request_create and pull_request_get_comments by focusing on retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as pull_request_assigned_to_me or pull_request_get_comments. The description does not mention context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repository_get_file_contentCRead-only
Get file content from a repository
| Name | Required | Description | Default |
|---|---|---|---|
| azure_project | No | Optionally set the Azure DevOps project name of the pull request. Required for Azure DevOps | |
| file_path | Yes | File path to retrieve from the repository | |
| provider | Yes | Specify the git provider | |
| ref | Yes | Set the branch, tag, or commit SHA to retrieve the file from | |
| repository_name | Yes | Set the repository name of the pull request. Required for Azure DevOps and Bitbucket | |
| repository_organization | Yes | Set the organization name of the pull request. Required for Azure DevOps and Bitbucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what annotations already provide (readOnlyHint=true). It doesn't mention return format, authentication needs, or behavior on missing files.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (one sentence) and front-loaded with the core purpose. While it earns its place, it could be slightly expanded for clarity without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal and does not explain the output format (e.g., raw text vs. base64) or any constraints like file size limits. Since there is no output schema, the description should provide more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptive details for all parameters (100% coverage), so the description adds no additional meaning. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves file content from a repository, which is specific and distinguishes it from sibling tools like git_log_or_diff or git_blame. However, it could be more precise by mentioning the file is retrieved at a specific ref.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., git_log_or_diff, git_blame). The description lacks explicit context for choosing this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
28 tool updates
v1.0.0- First observed
app_tool_box - First observed
app_update_user_preferences - First observed
git_add_or_commit - First observed
git_blame - First observed
git_branch - First observed
git_checkout - First observed
git_fetch - First observed
git_graph - First observed
git_log_or_diff - First observed
git_pull - First observed
git_push - First observed
git_stash - First observed
git_status - First observed
git_worktree - First observed
gitkraken_workspace_list - First observed
gitlens_commit_composer - First observed
gitlens_launchpad - First observed
gitlens_start_review - First observed
gitlens_start_work - First observed
issues_add_comment - First observed
issues_assigned_to_me - First observed
issues_get_detail - First observed
pull_request_assigned_to_me - First observed
pull_request_create - First observed
pull_request_create_review - First observed
pull_request_get_comments - First observed
pull_request_get_detail - First observed
repository_get_file_content
TDQS
Scored across 28 tools
Most tools have distinct purposes, but git_add_or_commit and git_log_or_diff combine two actions into one tool, potentially causing confusion. The app-only tools are clearly marked, reducing ambiguity.
Naming convention is mixed: git_ prefix for Git commands, gitkraken_ and gitlens_ for features, and issues_/pull_request_ for issue/PR tools. While each subgroup is consistent, the overall pattern is inconsistent.
28 tools is on the high side for a single server, covering Git, GitKraken features, and issue/PR management. It may be slightly overwhelming but still within a reasonable range for the broad domain.
The tool set covers major Git operations, GitKraken workflows, and issue/PR management well. Minor gaps include lack of git branch delete, issue listing by criteria beyond assigned, and merged git operations could be separate.
Maintenance
Related MCP Connectors
AI-native git hosting — repos, PRs, issues, CI gates, and AI code review over MCP (60 tools).
The OpenRouter MCP server plugs OpenRouter into the AI tools you already use. Once connected, your assistant can pull live OpenRouter data (models, prices, your credits, rankings, and docs) and send quick test messages, all without leaving your editor.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A MCP server built for developers enabling Git based project management with project and personal…
Related MCP Servers
- FlicenseBqualityDmaintenanceThe Git MCP Server allows AI assistants to perform enhanced Git operations via the Model Context Protocol, supporting core Git functions, branch and tag management, GitHub integration, and more.2191 npm6-
- AlicenseNot gradedqualityNot gradedmaintenanceA lightweight MCP server that enables AI assistants to manage local Git repositories by executing commands like status, add, and commit. It streamlines development workflows by providing repository context and diffs directly to the assistant.Apache 2.0
- AlicenseBqualityCmaintenanceAn enhanced Git MCP server that provides AI assistants with powerful code review, commit analysis, and branch management capabilities for Git repositories.534 npm1MIT
- AlicenseNot gradedqualityDmaintenanceA modular MCP server integrating Jira and GitHub to automate developer workflows, enabling AI agents to manage issues, branches, commits, and pull requests directly from the IDE.MIT