MCPServers
Github logo
37.0k
1.1k
0

Summary

The GitHub MCP Server provides a comprehensive interface for interacting with the GitHub API, offering features such as automatic branch creation, comprehensive error handling, and Git history preservation. It supports both single and batch file operations, advanced search capabilities for code, issues, pull requests, and users, and tools for creating or updating files, repositories, and issues. This project is particularly useful for developers and teams who need to streamline their GitHub workflow, automate repository management tasks, and maintain efficient version control. By simplifying complex operations and ensuring proper Git history management, it enhances productivity and reduces the risk of errors during repository interactions.

Available Actions(26)

create_or_update_file

Create or update a single file in a repository. Inputs: owner (string), repo (string), path (string), content (string), message (string), branch (string), sha (optional string)

push_files

Push multiple files in a single commit. Inputs: owner (string), repo (string), branch (string), files (array), message (string)

search_repositories

Search for GitHub repositories. Inputs: query (string), page (optional number), perPage (optional number)

create_repository

Create a new GitHub repository. Inputs: name (string), description (optional string), private (optional boolean), autoInit (optional boolean)

get_file_contents

Get contents of a file or directory. Inputs: owner (string), repo (string), path (string), branch (optional string)

create_issue

Create a new issue. Inputs: owner (string), repo (string), title (string), body (optional string), assignees (optional string[]), labels (optional string[]), milestone (optional number)

create_pull_request

Create a new pull request. Inputs: owner (string), repo (string), title (string), body (optional string), head (string), base (string), draft (optional boolean), maintainer_can_modify (optional boolean)

fork_repository

Fork a repository. Inputs: owner (string), repo (string), organization (optional string)

create_branch

Create a new branch. Inputs: owner (string), repo (string), branch (string), from_branch (optional string)

list_issues

List and filter repository issues. Inputs: owner (string), repo (string), state (optional string), labels (optional string[]), sort (optional string), direction (optional string), since (optional string), page (optional number), per_page (optional number)

update_issue

Update an existing issue. Inputs: owner (string), repo (string), issue_number (number), title (optional string), body (optional string), state (optional string), labels (optional string[]), assignees (optional string[]), milestone (optional number)

add_issue_comment

Add a comment to an issue. Inputs: owner (string), repo (string), issue_number (number), body (string)

search_code

Search for code across GitHub repositories. Inputs: q (string), sort (optional string), order (optional string), per_page (optional number), page (optional number)

search_issues

Search for issues and pull requests. Inputs: q (string), sort (optional string), order (optional string), per_page (optional number), page (optional number)

search_users

Search for GitHub users. Inputs: q (string), sort (optional string), order (optional string), per_page (optional number), page (optional number)

list_commits

Gets commits of a branch in a repository. Inputs: owner (string), repo (string), page (optional string), per_page (optional string), sha (optional string)

get_issue

Gets the contents of an issue within a repository. Inputs: owner (string), repo (string), issue_number (number)

get_pull_request

Get details of a specific pull request. Inputs: owner (string), repo (string), pull_number (number)

list_pull_requests

List and filter repository pull requests. Inputs: owner (string), repo (string), state (optional string), head (optional string), base (optional string), sort (optional string), direction (optional string), per_page (optional number), page (optional number)

create_pull_request_review

Create a review on a pull request. Inputs: owner (string), repo (string), pull_number (number), body (string), event (string), commit_id (optional string), comments (optional array)

merge_pull_request

Merge a pull request. Inputs: owner (string), repo (string), pull_number (number), commit_title (optional string), commit_message (optional string), merge_method (optional string)

get_pull_request_files

Get the list of files changed in a pull request. Inputs: owner (string), repo (string), pull_number (number)

get_pull_request_status

Get the combined status of all status checks for a pull request. Inputs: owner (string), repo (string), pull_number (number)

update_pull_request_branch

Update a pull request branch with the latest changes from the base branch. Inputs: owner (string), repo (string), pull_number (number), expected_head_sha (optional string)

get_pull_request_comments

Get the review comments on a pull request. Inputs: owner (string), repo (string), pull_number (number)

get_pull_request_reviews

Get the reviews on a pull request. Inputs: owner (string), repo (string), pull_number (number)

Last Updated: April 8, 2025

Community Reviews

0.0
0 reviews
5
0
4
0
3
0
2
0
1
0

No reviews yet. Be the first to review!

Sign in to join the conversation

Try it now in
HighlightHighlight AI

Quick Setup

Bundle and Download

Our bundler currently only supports TypeScript-based servers. Check back soon!

Language

TypeScript

Categories