diff --git a/MCP.md b/MCP.md new file mode 100644 index 0000000..7e48d81 --- /dev/null +++ b/MCP.md @@ -0,0 +1,77 @@ +# GitKraken CLI - MCP Server + +The MCP (Model Context Protocol) server for the GitKraken CLI. + +Starts a local server to allow your preferred MCP client to interact with it. + +![](./images/cli-header-wide.png) + + +## Prerequisites + +Before you begin, you need to have the GitKraken CLI (gk) installed. You can find the latest release here: + +[GitKraken CLI Releases](https://github.com/gitkraken/gk-cli/releases) + +## Installation + +Install the GitKraken MCP server directly into your compatible IDE or code editor with a simple command: + +```bash +gk mcp install +``` + +If you need to specify a file path for the installation, you can use the --file-path option: + +```bash +gk mcp install --file-path +``` + +### Officially Supported IDEs + +You can officially install the GitKraken MCP server in the following clients: + +- vscode +- vscode-insiders +- claude +- windsurf +- cursor +- zed +- trae + +## Usage + +To start the MCP server, simply run the following command in your terminal. This will allow your client to connect and start interacting. + +```bash +gk mcp +``` + +## Tools + +The MCP server provides the following tools: + +- `git_add_or_commit` 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. +- `git_blame` Show what revision and author last modified each line of a file (git blame ). +- `git_branch` List or create branches (git branch). +- `git_checkout` Switch branches or restore working tree files (git checkout ). +- `git_log_or_diff` Show commit logs or changes between commits (git log -- oneline or git diff). +- `git_push` Update remote refs along with associated objects (git push). +- `git_stash` Stash the changes in a dirty working directory (git stash). +- `git_status` Show the working tree status (git status). +- `git_worktree` List or add git worktrees (git worktree ). +- `gitkraken_workspace_list` Lists all Gitkraken workspaces +- `issues_add_comment` Add a comment to an issue +- `issues_assigned_to_me` Fetch issues assigned to the user +- `issues_get_detail` Retrieve detailed information about a specific issue by its unique ID +- `pull_request_assigned_to_me` Search pull requests where you are the assignee, author, or reviewer +- `pull_request_create` Create a new pull request +- `pull_request_create_review` Create a review for a pull request +- `pull_request_get_comments` Get all the comments in a pull requests +- `pull_request_get_detail` Get an specific pull request +- `repository_get_file_content` Get file content from a repository + +## Additional Commands + +- `gk mcp config`: Generates the necessary configuration for an MCP client to connect to this server. +- `gk mcp uninstall`: Uninstalls the MCP server from the specified client. \ No newline at end of file diff --git a/README.md b/README.md index ec53c1c..573b081 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ 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](https://help.gitkraken.com/cli/gk-cli-mcp/). -If you want to read more about the MCP server, you can check out the [introduction blog post](https://www.gitkraken.com/blog/introducing-gitkraken-mcp) +If you want to read more about the MCP server, you can check out the [introduction blog post](https://www.gitkraken.com/blog/introducing-gitkraken-mcp) or see the detailed documentation in [MCP.md](./MCP.md). ## Documentation