README.md•2.55 kB
# 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
## Prerequisites
- Node.js (v18 or higher)
- npm (v8 or higher)
- PowerShell (for Windows installation)
- GitHub Personal Access Token with repo scope
## Installation
### Windows
1. Clone this repository:
```powershell
git clone https://github.com/oghenetejiriorukpegmail/github-mcp.git
```
2. Run the installation script:
```powershell
.\install.ps1
```
The script will:
- Create the necessary directories
- Install dependencies
- Build the TypeScript code
- Configure the MCP settings
### Manual Installation
1. Create the MCP directory:
```powershell
mkdir -p "$env:APPDATA\Roo-Code\MCP\github-mcp"
```
2. Clone this repository into that directory:
```powershell
git clone https://github.com/oghenetejiriorukpegmail/github-mcp.git "$env:APPDATA\Roo-Code\MCP\github-mcp"
```
3. Install dependencies:
```powershell
cd "$env:APPDATA\Roo-Code\MCP\github-mcp"
npm install
```
4. Build the TypeScript code:
```powershell
npm run build
```
5. Add the server configuration to your MCP settings file at:
`%APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json`
```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.
```json
{
"username": "octocat"
}
```
### create_repo
Create a new GitHub repository.
```json
{
"repo_name": "my-new-repo",
"description": "A new repository",
"private": false
}
```
### push_to_repo
Push content to a GitHub repository.
```json
{
"repo_name": "my-repo",
"file_path": "docs/README.md",
"content": "# My Project\nThis is a test file.",
"message": "Add README file"
}
```
## Development
1. Clone the repository
2. Install dependencies: `npm install`
3. Make changes to `src/index.ts`
4. Build: `npm run build`
5. Test your changes
## Contributing
1. Fork the repository
2. Create a feature branch
3. Commit your changes
4. Push to the branch
5. Create a Pull Request
## License
MIT