GitHub In Go MCP Server

An unofficial implementation of an mcp server for github in go. Used internally at Metoro.

Local serverstdioGo

What is the GitHub In Go MCP server?

An unofficial implementation of an mcp server for github in go. Used internally at Metoro. Exposed over MCP by the github in go mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.

What it actually does

A Go implementation of the GitHub Model Context Protocol (MCP) server. This implementation allows AI assistants to interact with the GitHub API to perform operations such as creating repositories, managing branches, manipulating files, and more.

Its toolset

Everything the assistant can do here goes through one of these:

  • search_repositories — Search for GitHub repositories
  • create_repository — Create a new GitHub repository in your account
  • fork_repository — Fork a GitHub repository to your account or specified organization
  • create_branch — Create a new branch in a GitHub repository
  • get_file_contents — Get the contents of a file or directory from a GitHub repository
  • create_or_update_file — Create or update a single file in a GitHub repository
  • push_files — Push multiple files to a GitHub repository in a single commit
  • create_issue — Create a new issue in a GitHub repository
  • get_issue — Get details of a specific issue in a GitHub repository
  • list_issues — List issues in a GitHub repository with filtering options
  • update_issue — Update an existing issue in a GitHub repository
  • add_issue_comment — Add a comment to an existing issue

Adding it to your client

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.

Configuration

You will need one environment variable: GITHUB_PERSONAL_ACCESS_TOKEN. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

  • Go 1.21 or higher - A GitHub personal access token with appropriate permissions

When to reach for it

This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. GitHub In Go's toolset — search_repositories, create_repository, fork_repository and 11 more — is a fair guide to whether it matches your workflow. It is maintained by metoro-io; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch GitHub In Go.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the github in go mcp server does with a few real requests.

Available tools

ToolWhat it does
search_repositoriesSearch for GitHub repositories
create_repositoryCreate a new GitHub repository in your account
fork_repositoryFork a GitHub repository to your account or specified organization
create_branchCreate a new branch in a GitHub repository
get_file_contentsGet the contents of a file or directory from a GitHub repository
create_or_update_fileCreate or update a single file in a GitHub repository
push_filesPush multiple files to a GitHub repository in a single commit
create_issueCreate a new issue in a GitHub repository
get_issueGet details of a specific issue in a GitHub repository
list_issuesList issues in a GitHub repository with filtering options
update_issueUpdate an existing issue in a GitHub repository
add_issue_commentAdd a comment to an existing issue
list_commitsGet list of commits of a branch in a GitHub repository
search_codeSearch for code across GitHub repositories

Configuration

  • Go 1.21 or higher - A GitHub personal access token with appropriate permissions
VariableDescriptionRequired
GITHUB_PERSONAL_ACCESS_TOKENCredential the server authenticates with.Yes

Example prompts to try

  • Use GitHub In Go to search repositories.
  • Use GitHub In Go to create repository.
  • Use GitHub In Go to fork repository.

Frequently asked questions

Run `go get github.com/metoro-io/github-mcp-server-go` and have Go 1.21 or higher installed.