Github Project Manager
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Supports loading environment configuration from .env files, used to store GitHub tokens and other configuration settings.
Allows management of GitHub issues, pull requests, and projects. Features include creating, updating, and listing issues; adding comments; creating, updating, and merging pull requests; managing pull request reviews; and creating and managing GitHub projects.
GitHub Project Manager
A Model Context Protocol (MCP) implementation for managing GitHub projects and issues. This package provides a seamless interface for AI assistants and applications to interact with GitHub repositories, issues, pull requests, and projects.
Features
GitHub Issue Management
- Create issues
- Update issues
- List issues with filtering options
- Get issue details
- Add comments to issues
- Close issues
GitHub Pull Request Management
- Create pull requests
- Update pull requests
- List pull requests with filtering options
- Get pull request details
- Merge pull requests
- Check if a pull request has been merged
- Create and manage pull request reviews
- Add and list review comments
- Request and remove reviewers
- Update pull request branches
GitHub Project Management
- Create projects
- Add issues to projects
- Update project items (move between columns)
- List project items
Installation
Usage
Quick Start with npx
The quickest way to use the GitHub Project Manager is directly with npx:
This starts the MCP server which can then be connected to by MCP clients.
Transport Options
The GitHub Project Manager supports two transport methods:
Stdio Transport (Default)
This is the default transport, ideal for direct CLI integrations and local usage:
Server-Sent Events (SSE) Transport
For remote setups and web integrations, you can use the SSE transport which starts an HTTP server:
When using SSE transport, the server will be accessible at:
- SSE endpoint:
http://localhost:<PORT>/sse
- Messages endpoint:
http://localhost:<PORT>/messages
Setting Up with MCP Clients
To use this with AI assistants like Claude in Anthropic or Cursor:
Then configure your AI assistant to use this MCP server. The exact configuration depends on the client you're using.
Programmatic Usage
To use the GitHub Project Manager in your own code:
When running your application, provide the GitHub token as a command-line argument:
You can also specify the transport type and other options:
If you need to programmatically start the server with specific transport options:
API Reference
Issue Management
Create an Issue
Get Issue Details
Update an Issue
List Issues
Add Issue Comment
Pull Request Management
Create a Pull Request
Get Pull Request Details
Merge a Pull Request
Create a Review
Project Management
Create a Project
Add Item to Project
List Project Items
Error Handling
The package provides custom error classes for handling common error scenarios:
Available error classes:
MissingGitHubTokenError
: Thrown when a GitHub token is not providedAuthenticationError
: Thrown when authentication failsResourceNotFoundError
: Thrown when a requested resource doesn't existValidationError
: Thrown when input validation failsRateLimitError
: Thrown when GitHub API rate limits are exceededNetworkError
: Thrown when network communication issues occurGitHubApiError
: General error for GitHub API issues
GitHub Token Permissions
Your GitHub personal access token needs the following permissions:
repo
- Full access to repositoriesproject
- Access to projectsissues
- Access to issues
Development
Building
Validation
Testing
Linting
License
MIT
You must be authenticated.
Allow to manage Issues and Project on Github