This wraps the GitKraken CLI to give Claude direct access to git operations, PRs, issues, and commits across GitHub, GitLab, Bitbucket, and Jira. You get tools for creating work items that span multiple repos, generating AI powered commits and pull requests, and managing issues without leaving your chat. The MCP server exposes GitKraken's cross provider APIs alongside standard git commands, so you can ask Claude to branch, commit, push, and open PRs in one conversation instead of context switching between terminals and browser tabs. Reach for this when you want an AI coding assistant that can actually execute git workflows, not just suggest commands you copy paste.
claude mcp add gk-cli -- npx -y @gitkraken/gk mcpRun in your terminal. Replace YOUR_* placeholders with real values; add --scope user to install for every project.
Review the command, arguments, and environment values before installing — MCP servers run with your local permissions.
Verified live against the running server on Jun 11, 2026.
app_tool_boxInternal helper for GitKraken MCP apps. App-only — agents must not call this tool.3 paramsInternal helper for GitKraken MCP apps. App-only — agents must not call this tool.
action*stringoptionsobjectdirectorystringapp_update_user_preferencesUpdate GitKraken CLI user preferences for MCP apps. App-only; agents must not call this tool.3 paramsUpdate GitKraken CLI user preferences for MCP apps. App-only; agents must not call this tool.
git_graph_app_collapsedbooleangit_status_app_collapsedbooleangit_commit_manager_app_collapsedbooleangit_add_or_commitAdd file contents to the index (git add <pathspec>) OR record changes to the repository (git commit -m <message> [files...]). Use the 'action' parameter to specify which action to perform.4 paramsAdd file contents to the index (git add <pathspec>) OR record changes to the repository (git commit -m <message> [files...]). Use the 'action' parameter to specify which action to perform.
filesarrayaction*stringadd · commitmessagestringdirectory*stringgit_blameShow what revision and author last modified each line of a file (git blame <file>).2 paramsShow what revision and author last modified each line of a file (git blame <file>).
file*stringdirectory*stringgit_branchList or create branches (git branch).3 paramsList or create branches (git branch).
action*stringcreate · listdirectory*stringbranch_namestringgit_checkoutSwitch branches or restore working tree files (git checkout <branch>).2 paramsSwitch branches or restore working tree files (git checkout <branch>).
branch*stringdirectory*stringgit_fetchDownload objects and refs from another repository (git fetch).1 paramsDownload objects and refs from another repository (git fetch).
directory*stringgit_graphShow the commit graph for a repository (git log --graph), will open a UI if client supports it.1 paramsShow the commit graph for a repository (git log --graph), will open a UI if client supports it.
directory*stringgit_log_or_diffShow commit logs or changes between commits (git log --oneline or git diff).6 paramsShow commit logs or changes between commits (git log --oneline or git diff).
sincestringuntilstringaction*stringlog · diffauthorsarraydirectory*stringrevision_rangestringgit_pullFetch from and integrate with another repository or a local branch (git pull).1 paramsFetch from and integrate with another repository or a local branch (git pull).
directory*stringgit_pushUpdate remote refs along with associated objects (git push).1 paramsUpdate remote refs along with associated objects (git push).
directory*stringgit_stashStash the changes in a dirty working directory (git stash).4 paramsStash the changes in a dirty working directory (git stash).
namestringdirectory*stringstaged_onlybooleaninclude_untrackedbooleangit_statusShow the working tree status (git status), will open a UI if client supports it.1 paramsShow the working tree status (git status), will open a UI if client supports it.
directory*stringgit_worktreeList or add git worktrees (git worktree <action>).4 paramsList or add git worktrees (git worktree <action>).
pathstringaction*stringlist · addbranchstringdirectory*stringgitkraken_workspace_listLists all Gitkraken workspacesLists all Gitkraken workspaces
No parameters — call it with no arguments.
gitlens_commit_composerGitlens Commit Composer. Organize your changes into well-formed commits with clear messages and descriptions. Useful for breaking large changes into smaller commits.2 paramsGitlens Commit Composer. Organize your changes into well-formed commits with clear messages and descriptions. Useful for breaking large changes into smaller commits.
directory*stringinstructionsstringgitlens_launchpadGitlens 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.1 paramsGitlens 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.
directory*stringgitlens_start_reviewGitlens Start Review. Creates a dedicated worktree and reviews your PR with an AI agent.3 paramsGitlens Start Review. Creates a dedicated worktree and reviews your PR with an AI agent.
pr_url*stringdirectory*stringinstructionsstringgitlens_start_workGitlens 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.3 paramsGitlens 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.
directory*stringissue_url*stringinstructionsstringissues_add_commentAdd a comment to an issue7 paramsAdd a comment to an issue
comment*stringissue_id*stringprovider*stringgithub · gitlab · jira · azure · linearazure_projectstringrepository_namestringazure_organizationstringrepository_organizationstringissues_assigned_to_meFetch issues assigned to the user4 paramsFetch issues assigned to the user
pagenumberprovider*stringgithub · gitlab · jira · azure · linearazure_projectstringazure_organizationstringissues_createCreate a new issue. For Jira, repository_name is the project key. For Linear, repository_organization is the team UUID, key, or name.9 paramsCreate a new issue. For Jira, repository_name is the project key. For Linear, repository_organization is the team UUID, key, or name.
bodystringtitle*stringlabelsarrayprovider*stringgithub · gitlab · jira · azure · linearassigneesarrayazure_projectstringrepository_namestringazure_organizationstringrepository_organizationstringissues_get_detailRetrieve 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.6 paramsRetrieve 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.
issue_id*stringprovider*stringgithub · gitlab · jira · azure · linearazure_projectstringrepository_namestringazure_organizationstringrepository_organizationstringpull_request_assigned_to_meSearch 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).7 paramsSearch 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).
pagenumberprovider*stringgithub · gitlab · bitbucket · azurereviewerbooleanis_closedbooleanazure_projectstringrepository_namestringrepository_organizationstringpull_request_createCreate a new pull request10 paramsCreate a new pull request
bodystringtitle*stringis_draftbooleanprovider*stringgithub · gitlab · bitbucket · azureassign_to_mebooleanazure_projectstringsource_branch*stringtarget_branch*stringrepository_name*stringrepository_organization*stringpull_request_create_reviewCreate a review for a pull request7 paramsCreate a review for a pull request
review*stringapprovebooleanprovider*stringgithub · gitlab · bitbucket · azureazure_projectstringpull_request_id*stringrepository_name*stringrepository_organization*stringpull_request_get_commentsGet all the comments in a pull requests5 paramsGet all the comments in a pull requests
provider*stringgithub · gitlab · bitbucket · azureazure_projectstringpull_request_id*stringrepository_name*stringrepository_organization*stringpull_request_get_detailGet an specific pull request6 paramsGet an specific pull request
provider*stringgithub · gitlab · bitbucket · azureazure_projectstringpull_request_id*stringrepository_name*stringpull_request_filesbooleanrepository_organization*stringrepository_get_file_contentGet file content from a repository6 paramsGet file content from a repository
ref*stringprovider*stringgithub · gitlab · bitbucket · azurefile_path*stringazure_projectstringrepository_name*stringrepository_organization*stringgk is GitKraken on the command line. The core functionality is focused on "Work Items" which can be thought of as the feature or issue you are trying to tackle. This allows you to work with multiple repos at once and get the same UX as if you were in a monorepo. We also provide robust AI-powered commit messages and Pull Request generation. It also provides an MCP server that streamlines working with git and your Issue and git hosting providers.
GitKraken CLI is available on macOS, Windows, and Unix systems.

The GitKraken MCP server is a local MCP server that is powerful and easy to use. It wraps git, GitHub, Jira MCP actions as well as provides tools to LLMs that work with GitKraken APIs and functionality. You can find specific installation instructions based on your chosen AI application in the Help Center.
If you want to read more about the MCP server, you can check out the introduction blog post
gk help is going to be your best source for exploring the CLI. But also see the workflows below.
Welcome to GitKraken CLI, a premium CLI experience for managing multiple repositories with familiar GIT CLI commands
Usage:
gk [flags]
gk [command]
AUTHENTICATING
auth Authenticate with the GitKraken platform
provider Add or remove provider tokens
CORE COMMANDS
graph Display commit graph in current repository
issue Manage your issues
organization Manage your Gitkraken organizations
work Interact with your work.
workspace Interact with your workspaces. Alias: 'ws'
Additional Commands:
help Help about any command
setup Display information about your current system configuration
version Print the version number of GK CLI
Flags:
-h, --help help for gk
Use "gk [command] --help" for more information about a command.
Start with a single repo. You can add more later.
In general, your process will look like this:
# Authenticate
gk auth login
# Navigate to a git repo directory on your filesystem
cd ./path/to/repo
# Then create a Work Item and the current directory
# will be automatically added to the Work Item
gk work create "My new work item"
# Edit files...
# ...
# Commit your changes using AI
gk work commit --ai
# Push your changes
gk work push
# Create a Pull Request
gk work pr create --ai
Once you have familiarized yourself with using a single repo, try out creating work items and generating commits and PRs for multiple repos at a time by just adding multiple repos to a new Work Item.
# Add a repo to the current work item
gk work add ./path/to/repo # path could be as simple as "." if you are in the directory already
git Command PassthroughYou can also use gk to pass through any git command. eg:
gk status
gk remote -v
# etc
gk is available from Homebrew with the following command:
Homebrew:
brew install gitkraken-cli
Or download it from the releases page and add it to your binaries folder:
mv ~/Downloads/gk /usr/local/bin/gk
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/gk
Or 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.deb
or
sudo rpm -i ./gk.rpm
gk is available from [Winget][winget] with the following command:
winget install gitkraken.cli
The GitKraken CLI supports Nerd Fonts to display icons for some commands. To ensure correct icon rendering, please obtain and install a Nerd Font available at https://www.nerdfonts.com/. After installation, set the selected Nerd Font as the default font for your terminal.
gk login freezes after authenticating in browserThis problem is due to the browser. Currently we know that Safari and Brave do not allow to respond to localhost through port 1314. To fix this, change your default browser or copy the URL before the redirect and open it in another browser.
Oh-My-Zsh has gitk aliased as gk and that can create some problems. To fix this, type in your terminal:
unalias gk
If you install the CLI manually from the releases page on macOS, you will likely run into a security error that looks like this:

To fix this, go to Settings > Security & Privacy > General and click "Allow Anyway".

Try running gk setup again and then click "Open Anyway" to continue.

ray0907/git-mcp-server
cyanheads/git-mcp-server
io.github.b1ff/atlassian-dc-mcp-bitbucket
io.github.b1ff/atlassian-dc-mcp-jira
com.mcparmory/atlassian-jira
sirlordt/vscode-terminal-mcp