GitHub MCP Server
Provides tools for interacting with GitHub's API, enabling repository creation, pushing content to repositories, and retrieving user information.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@GitHub MCP Server create a new repository called 'project-notes' with description 'My personal notes repository'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GitHub MCP Server
A Model Context Protocol (MCP) server implementation for GitHub integration. This server provides tools for interacting with GitHub's API through the MCP protocol.
Features
Create GitHub repositories
Push content to repositories
Get user information
Proper error handling and TypeScript type safety
Automatic installation script
Related MCP server: github-mcp-tool
Prerequisites
Node.js (v18 or higher)
npm (v8 or higher)
PowerShell (for Windows installation)
GitHub Personal Access Token with repo scope
Installation
Windows
Clone this repository:
git clone https://github.com/oghenetejiriorukpegmail/github-mcp.gitRun the installation script:
.\install.ps1The script will:
Create the necessary directories
Install dependencies
Build the TypeScript code
Configure the MCP settings
Manual Installation
Create the MCP directory:
mkdir -p "$env:APPDATA\Roo-Code\MCP\github-mcp"Clone this repository into that directory:
git clone https://github.com/oghenetejiriorukpegmail/github-mcp.git "$env:APPDATA\Roo-Code\MCP\github-mcp"Install dependencies:
cd "$env:APPDATA\Roo-Code\MCP\github-mcp"
npm installBuild the TypeScript code:
npm run buildAdd the server configuration to your MCP settings file at:
%APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json
{
"mcpServers": {
"github": {
"command": "node",
"args": [
"%APPDATA%\Roo-Code\MCP\github-mcp\build\index.js"
],
"env": {
"GITHUB_TOKEN": "your-github-token-here"
},
"disabled": false,
"alwaysAllow": []
}
}
}Available Tools
get_user
Get GitHub user information.
{
"username": "octocat"
}create_repo
Create a new GitHub repository.
{
"repo_name": "my-new-repo",
"description": "A new repository",
"private": false
}push_to_repo
Push content to a GitHub repository.
{
"repo_name": "my-repo",
"file_path": "docs/README.md",
"content": "# My Project\nThis is a test file.",
"message": "Add README file"
}Development
Clone the repository
Install dependencies:
npm installMake changes to
src/index.tsBuild:
npm run buildTest your changes
Contributing
Fork the repository
Create a feature branch
Commit your changes
Push to the branch
Create a Pull Request
License
MIT
Available Tools
3 toolscreate_repoC
Create a new GitHub repository
Inputs: repo_name (required), description, private.
get_userC
Get GitHub user information
Inputs: username (required).
push_to_repoC
Push content to a GitHub repository
Inputs: repo_name (required), file_path (required), content (required), message.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: create_repo handles repository creation, get_user retrieves user information, and push_to_repo manages content pushes to repositories. There is no overlap in functionality, making it easy for an agent to select the correct tool for each task.
The tools follow a consistent verb_noun pattern (create_repo, get_user, push_to_repo), which is predictable and readable. The minor deviation is that 'push_to_repo' includes a preposition, but this does not significantly impact consistency or clarity.
With only 3 tools, the server feels thin for a GitHub domain, which typically involves more operations like listing repositories, managing issues, or handling pull requests. While the tools are well-scoped, the count is borderline low for comprehensive GitHub functionality.
The tool surface has significant gaps for a GitHub server. It lacks core operations such as listing repositories, updating or deleting repositories, managing issues or pull requests, and searching code. This incomplete coverage will likely cause agent failures when trying to perform common GitHub workflows.
Related MCP Connectors
GitHub MCP — wraps the GitHub public REST API (no auth required for public endpoints)
Create, deploy, and operate MCP servers directly from your GitHub repositories.
Access the GitHub API, enabling file operations, repository management, search functionality, and…
GitHub Private MCP Pack — access private repos, org data via OAuth. Complements the existing…
Related MCP Servers
- -licenseNot gradedqualityBmaintenanceMCP Server for the GitHub API, enabling file operations, repository management, search functionality, and more.127,455 npm91,952MIT
- FlicenseNot gradedqualityDmaintenanceEnables managing GitHub repositories, files, and user information through MCP, with support for creating, updating, and deleting repository contents, as well as fetching user profiles.1-
- AlicenseBqualityDmaintenanceMCP (Model Context Protocol) server for GitHub API integration. This server provides comprehensive tools for interacting with GitHub repositories, issues, pull requests, branches, and code search through a unified interface.156 npmMIT
- AlicenseNot gradedqualityNot gradedmaintenanceMCP server for the GitHub API, enabling file operations, repository management, search functionality, issues, pull requests, and more.295 npmMIT