Dockerized GitHub MCP Server logo

Dockerized GitHub MCP Server

by yuki-koma2

This is a Dockerized Model Context Protocol (MCP) server that interacts with the GitHub API to provide repository file operations, repository management, and search functionality. It's designed to be used with tools like Cursor via standard input/output (stdio).

View on GitHub

Last updated: N/A

What is Dockerized GitHub MCP Server?

The Dockerized GitHub MCP Server is a containerized application that leverages the GitHub API to offer a range of repository management and file manipulation capabilities. It's designed to integrate with tools like Cursor, enabling automated interactions with GitHub repositories.

How to use Dockerized GitHub MCP Server?

To use the server, you need a GitHub Personal Access Token with the appropriate scopes (repo or public_repo). Build and run the Docker container, then configure your tool (like Cursor) to communicate with the server via stdio using the specified command and arguments. Send requests to the server in the MCP message format, including the tool name and input parameters.

Key features of Dockerized GitHub MCP Server

  • Automatic branch creation

  • Comprehensive error handling

  • Git history preservation

  • Batch operations support

  • Advanced search capabilities

Use cases of Dockerized GitHub MCP Server

  • Automated file creation and updates in GitHub repositories

  • Repository searching and management

  • Issue and pull request creation and management

  • Code searching within repositories

  • Integration with development tools like Cursor for automated workflows

FAQ from Dockerized GitHub MCP Server

What is a GitHub Personal Access Token and why do I need it?

A GitHub Personal Access Token is a credential that allows you to authenticate with the GitHub API. You need it to authorize the MCP server to access and modify your repositories.

What scopes should my GitHub Personal Access Token have?

The token should have either the repo scope (for full control of private repositories) or the public_repo scope (for operating on public repositories only).

How do I configure Cursor to use the GitHub MCP server?

You need to add a configuration block to your claude_desktop_config.json file, specifying the command and arguments to run the Docker container and pass the GitHub Personal Access Token as an environment variable.

What is the message format for sending requests to the server?

Requests should be in the MCP message format, which includes a role and a content field. The content field should contain the tool_name and input parameters for the desired operation.

Where can I find more information about the available tools and their input parameters?

Refer to the official repository documentation at https://github.com/modelcontextprotocol/servers/tree/main/src/github for detailed information on each tool's input parameters and usage.