
github mcp server
GitHub MCP server for Cursor IDE
Repository Info
About This Server
GitHub MCP server for Cursor IDE
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
GitHub MCP Server for Cursor IDE
A powerful GitHub integration server that allows you to manage your GitHub repositories directly from Cursor IDE. This server provides a RESTful API to interact with GitHub's API, making it easier to create and manage repositories.
Features
- Create new GitHub repositories
- List existing repositories
- Secure token-based authentication
- Rate limiting protection
- Comprehensive error handling
- Detailed logging
- Webhook support (coming soon)
Prerequisites
- Node.js (v14 or higher)
- npm (v6 or higher)
- A GitHub account with a Personal Access Token
- Cursor IDE
Setup
- Clone this repository:
git clone <your-repo-url>
cd github-mcp-server
- Install dependencies:
npm install
- Create a
.envfile in the root directory:
cp .env.example .env
- Configure your environment variables in
.env:
# Server Configuration
PORT=3000
NODE_ENV=development
# GitHub Configuration
GITHUB_TOKEN=your_github_token_here
GITHUB_WEBHOOK_SECRET=your_webhook_secret_here
# Rate Limiting
RATE_LIMIT_WINDOW_MS=900000 # 15 minutes
RATE_LIMIT_MAX_REQUESTS=100
-
Generate a GitHub Personal Access Token:
- Go to GitHub.com → Settings → Developer Settings → Personal Access Tokens → Tokens (classic)
- Click "Generate new token" → "Generate new token (classic)"
- Give your token a descriptive name (e.g., "MCP Server Integration")
- Select these permissions:
repo(Full control of private repositories)read:org(Read organization data)admin:repo_hook(Full control of repository hooks)
- Copy the generated token and paste it in your
.envfile
-
Start the server:
npm run dev
Using with Cursor IDE
- Open Cursor IDE
- The MCP server will run on
http://localhost:3000by default - You can use the following endpoints:
Create a New Repository
curl -X POST http://localhost:3000/api/github/repos \
-H "Content-Type: application/json" \
-d '{
"name": "my-new-repo",
"description": "A new repository created via MCP",
"private": false,
"auto_init": true
}'
List Your Repositories
curl http://localhost:3000/api/github/repos
API Endpoints
GET /health
Health check endpoint to verify server status.
GET /api/github/repos
Lists all repositories accessible to the authenticated user.
POST /api/github/repos
Creates a new repository.
Request body:
{
"name": "repository-name",
"description": "Repository description",
"private": false,
"auto_init": true
}
Error Handling
The server includes comprehensive error handling for:
- Invalid GitHub tokens
- Rate limiting
- Validation errors
- GitHub API errors
- Server errors
All errors are logged and returned with appropriate HTTP status codes.
Security Features
- Token-based authentication
- Rate limiting protection
- Input validation
- Secure environment variable handling
- CORS protection
- Helmet security headers
Development
To run the server in development mode with auto-reload:
npm run dev
To run tests:
npm test
Logging
Logs are stored in:
error.log: Error-level logscombined.log: All logs
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Quick Start
Clone the repository
git clone https://github.com/alfie-tek/github-mcp-serverInstall dependencies
cd github-mcp-server
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.