GitHub Projects MCP Server
An MCP (Model Context Protocol) server that enables AI agents to create and manage Agile Sprint-based projects using GitHub Projects.
Features
- GitHub Projects v2 API: Full support for GitHub's GraphQL Projects v2 API
- GitHub Issues: Create, read, and update GitHub issues
- GitHub Repositories: Fetch repository details
- Type Safety: Built with TypeScript for maximum type safety
Installation
Installing via Smithery
To install GitHub Projects MCP Server for Claude Desktop automatically via Smithery:
Usage
Manual Installation
- Clone this repository:
- Install dependencies:
- Create a
.env
file with your GitHub token: - Build the server:
- Configure your MCP client with the following settings:
Environment Variables
GITHUB_TOKEN
: GitHub Personal Access Token with appropriate permissionsGITHUB_OWNER
: GitHub username or organization nameGITHUB_OWNER_TYPE
: (Optional) Set touser
(default) ororg
. Controls whether project listing and management is done for a user or an organization. Set toorg
if your projects live in a GitHub organization.ALLOWED_REPOS
: (Optional) Comma-separated list of allowed repository slugs (e.g.owner/repo,another/repo
). All write operations (creating/updating issues, adding items to projects, etc.) are restricted to these repositories. If not set or empty, all repositories are allowed by default.
Example:
If you try to perform a write operation on a repository not in this list, the server will throw an error and block the action.
GitHub Token Permissions
This MCP server requires a GitHub Personal Access Token (classic) with the following permissions:
project
- Full control of projectsread:project
- Read access of projectsrepo
- Full control of private repositoriesrepo:status
- Access commit statusrepo_deployment
- Access deployment statuspublic_repo
- Access public repositoriesrepo:invite
- Access repository invitationssecurity_events
- Read and write security events
Development
Commands
- Build:
bun run build
- Generate GraphQL types:
bun run graphql-codegen
Project Structure
This project is a MCP Server for GitHub's GraphQL API, with focus on Project V2 operations. The codebase provides typed access to GitHub projects functionality through GraphQL.
Available Operations
Projects
- Create, read, update, and delete GitHub Projects
- Manage project fields, items, and status updates
- Convert draft issues to actual issues
- Archive and unarchive project items
Issues
- Get issue details
- Add issues to projects
Repositories
- Get repository information
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.
Permite a los usuarios interactuar con la API de Proyectos v2 de GitHub a través del lenguaje natural para la gestión de proyectos ágiles, respaldando los detalles del repositorio, el seguimiento de problemas y las operaciones de gestión del tablero de proyectos.
- Características
- Instalación
- Uso
- Variables de entorno
- Permisos de token de GitHub
- Desarrollo
- Estructura del proyecto
- Operaciones disponibles
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityProvides comprehensive tools for managing GitHub projects, milestones, tasks, and sprints. This server integrates deeply with GitHub Projects V2, offering features like automated kanban workflows, sprint planning, and custom field management.Last updated -46963MIT License
- -securityFlicense-qualityEnables interaction with GitHub through the GitHub API, supporting file operations, repository management, advanced search, and issue tracking with comprehensive error handling and automatic branch creation.Last updated -5491
- AsecurityFlicenseAqualityEnables comprehensive GitHub operations through natural language including file management, repository administration, issue tracking, and advanced code searching.Last updated -4741
- -securityAlicense-qualityEnables interaction with GitHub repositories through the GitHub API, allowing file operations, repository management, issue tracking, and code search through natural language commands.Last updated -102MIT License