mcpField
G
GitHub MCP Server for Cursor IDE

GitHub MCP Server for Cursor IDE

Local
github.com/alfie-tekDeveloper Tools1Updated 84w ago

About GitHub MCP Server for Cursor IDE

A GitHub MCP server for Cursor IDE that lists and creates repositories through the GitHub API. It uses personal access token authentication and includes rate-limit protection and input validation.

Key features

  1. 01List accessible GitHub repositories
  2. 02Create GitHub repositories
  3. 03Token authentication and input validation
  4. 04Rate-limit protection
  5. 05Logging and error handling

Use cases

  1. 01View repositories from Cursor IDE
  2. 02Create GitHub repositories through the API
  3. 03Investigate token or API errors

MCP support

The server provides a GitHub MCP integration for Cursor IDE, exposing repository listing and creation endpoints.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

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

  1. Clone this repository:
git clone <your-repo-url>
cd github-mcp-server
  1. Install dependencies:
npm install
  1. Create a .env file in the root directory:
cp .env.example .env
  1. 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
  1. 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 .env file
  2. Start the server:

npm run dev

Using with Cursor IDE

  1. Open Cursor IDE
  2. The MCP server will run on http://localhost:3000 by default
  3. 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 logs
  • combined.log: All logs

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.