GitHub
About
Integrates with GitHub's API to enable repository management, file operations, issue tracking, pull request handling, and workflow automation with configurable security controls for development workflows.
Details
- Repository
- geropl/github-mcp-go
Explore
- Comprehensive GitHub API Access: See Tools below
- Setup Command: Easy automatic setup for AI assistants
- --auto-approve allows to pre-fill the auto-approval checkbox
- --write-access enables write access for remote operations
- Copies the binary into a stable location
- Updates the tool MCP server config (cline and claude-desktop are supported)
- Security Controls:
- Write access is disabled by default for safety
- Fine-grained auto-approval options
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
GitHubCommand (node, npx, python, etc.)npxArguments-
Argument 1
-y -
Argument 2
@highlight/mcp-server
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
- GitHub Personal Access Token with appropriate permissions
./github-mcp-go setup --write-access="${GITHUB_MCP_WRITE_ACCESS:-false}" --auto-approve=allow-read-only || true
rm -f ./github-mcp-go
The server requires a GitHub Personal Access Token to authenticate with the GitHub API:
bashexport GITHUB_PERSONAL_ACCESS_TOKEN=your_token_here
./github-mcp-go setup --help
```bash
search_repositories
Search for GitHub repositories.
create_repository
Create a new GitHub repository.
fork_repository
Fork a GitHub repository.
create_pull_request
Create a new pull request.
get_pull_request
Get detailed information about a pull request.
get_pull_request_diff
Get the diff of a pull request.
get_file_contents
Get the contents of a file or directory.
create_or_update_file
Create or update a file.
push_files
Push multiple files in a single commit.
create_issue
Create a new issue.
list_issues
List issues with filtering options.
update_issue
Update an existing issue.
add_issue_comment
Add a comment to an issue.
get_issue
Get details of a specific issue.
list_issue_comments
List comments on an issue.
list_branches
List branches in a repository.
get_branch
Get details about a specific branch.
create_branch
Create a new branch.
merge_branches
Merge one branch into another.
delete_branch
Delete a branch.
get_commit
Get details of a specific commit.
list_commits
List commits in a repository.
compare_commits
Compare two commits or branches.
get_commit_status
Get the combined status for a specific commit.
create_commit_comment
Add a comment to a specific commit.
list_commit_comments
List comments for a specific commit.
create_commit
Create a new commit directly.
search_code
Search for code across repositories.
search_issues
Search for issues and pull requests.
search_commits
Search for commits across repositories.
list_workflows
List all workflows in a repository.
get_workflow
Get detailed information about a specific workflow.
list_workflow_runs
List workflow runs for a repository or specific workflow.
get_workflow_run
Get detailed information about a specific workflow run.
download_workflow_run_logs
Download and process logs for a workflow run.
list_workflow_jobs
List jobs for a workflow run.
get_workflow_job
Get detailed information about a specific job.
./github-mcp-go setup --auto-approve allow-read-only --tool cline
./github-mcp-go setup --auto-approve search_repositories,get_file_contents --tool claude-desktop
- search_repositories: Search for GitHub repositories
- create_repository: Create a new GitHub repository
- fork_repository: Fork a GitHub repository
- create_pull_request: Create a new pull request
- get_pull_request: Get detailed information about a pull request
- get_pull_request_diff: Get the diff of a pull request
- get_file_contents: Get the contents of a file or directory
- create_or_update_file: Create or update a file
- push_files: Push multiple files in a single commit
- create_issue: Create a new issue
- list_issues: List issues with filtering options
- update_issue: Update an existing issue
- add_issue_comment: Add a comment to an issue
- get_issue: Get details of a specific issue
- list_issue_comments: List comments on an issue
- list_branches: List branches in a repository
- get_branch: Get details about a specific branch
- create_branch: Create a new branch
- merge_branches: Merge one branch into another
- delete_branch: Delete a branch
- get_commit: Get details of a specific commit
- list_commits: List commits in a repository
- compare_commits: Compare two commits or branches
- get_commit_status: Get the combined status for a specific commit
- create_commit_comment: Add a comment to a specific commit
- list_commit_comments: List comments for a specific commit
- create_commit: Create a new commit directly
- search_code: Search for code across repositories
- search_issues: Search for issues and pull requests
- search_commits: Search for commits across repositories
- list_workflows: List all workflows in a repository
- get_workflow: Get detailed information about a specific workflow
- list_workflow_runs: List workflow runs for a repository or specific workflow
- get_workflow_run: Get detailed information about a specific workflow run
- download_workflow_run_logs: Download and process logs for a workflow run
- list_workflow_jobs: List jobs for a workflow run
- get_workflow_job: Get detailed information about a specific job
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"github": {
"env": {},
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
}
}
Linux
{
"env": [],
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
Macos
{
"env": [],
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
Windows
{
"env": [],
"args": [
"/c",
"npx",
"-y",
"@highlight/mcp-server"
],
"command": "cmd"
}
A Model Context Protocol (MCP) server for GitHub, implemented in Go. This server allows LLMs to interact with GitHub repositories, issues, pull requests, and more through a standardized interface.
Features
- Comprehensive GitHub API Access: See Tools below
- Setup Command: Easy automatic setup for AI assistants
- --auto-approve allows to pre-fill the auto-approval checkbox
- --write-access enables write access for remote operations
- Copies the binary into a stable location
- Updates the tool MCP server config (cline and claude-desktop are supported)
- Security Controls:
- Write access is disabled by default for safety
- Fine-grained auto-approval options
Planned Features
- [ ] "get_diff"
- diff between two commits
- ? Should this be in the output of compare_commits?
Installation
Prerequisites
- GitHub Personal Access Token with appropriate permissions
Using Pre-built Binaries
You can download pre-built binaries for your platform from the GitHub Releases page.
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



