Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

github-projects-mcp

MCP.Pizza Chef: Arclio

The github-projects-mcp is an MCP server that integrates with GitHub Projects V2 using the GitHub GraphQL API. It enables MCP clients like Claude to list, view, and manage GitHub Projects V2 for users and organizations. Features include creating and updating issues, managing project items and fields, and deleting items, streamlining project management workflows within an MCP-enabled environment.

Use This MCP server To

List GitHub Projects V2 for users and organizations View detailed fields and items in GitHub Projects V2 Create new issues and add them to GitHub projects Create draft issues directly within GitHub Projects V2 Update field values of project items in GitHub Projects Delete project items from GitHub Projects V2

README

GitHub Projects V2 MCP Server

A Model Context Protocol (MCP) server that provides tools for managing GitHub Projects V2 through Claude and other MCP clients. This server uses the GitHub GraphQL API for interacting with GitHub Projects V2.

Features

  • List and view GitHub Projects V2 for users and organizations
  • Get project fields and items (issues, PRs, draft issues)
  • Create issues and add them to projects
  • Create draft issues directly in projects
  • Update project item field values
  • Delete items from projects

Usage

This server can be used with any MCP client, such as Claude Desktop. Add it to your MCP client configuration (e.g., claude_desktop_config.json).

Option 1: Using Published Package

Here's an example configuration using uvx as the command runner:

{
  "mcpServers": {
    "github-projects": {
      "command": "uvx",
      "args": [
        "mcp-github-projects"
      ],
      "env": {
        "GITHUB_TOKEN": "your_pat_here"
      }
    }
  }
}

Make sure to replace your_pat_here with your actual GitHub Personal Access Token.

Option 2: From Source Code

To run the project directly from source code, follow these steps:

Setup
  1. Clone the repository:

    git clone git@github.com:Arclio/github-projects-mcp.git
    cd github-projects-mcp
    
  2. Create and activate a virtual environment:

    uv venv
    source venv/bin/activate
    
  3. Install dependencies:

    uv pip install -e .
    
  4. Set your GitHub token as an environment variable:

    Create a GitHub Personal Access Token and give it the necessary permissions. The required permissions are: repo, project, and read:org.

    Add the token to your .env file after running this command:

    cp .env.example .env
    

    Then add the following to your .env file:

    export GITHUB_TOKEN=your_personal_access_token
    

Usage from source code

When using from source code, configure your MCP client as follows:

{
  "mcpServers": {
    "github-projects": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/github-projects-mcp",
        "run",
        "mcp-github-projects"
      ],
      "env": {
        "GITHUB_TOKEN": "your_pat_here"
      }
    }
  }
}

Make sure to replace /path/to/github-projects-mcp and your_pat_here with your actual repository path and GitHub Personal Access Token.

Available Tools

  • list_projects: List GitHub Projects V2 for a given organization or user
  • get_project_fields: Get fields available in a GitHub Project V2
  • get_project_items: Get items in a GitHub Project V2 (supports filtering by state or custom single-select fields)
  • create_issue: Create a new GitHub issue
  • add_issue_to_project: Add an existing GitHub issue to a Project V2
  • update_project_item_field: Update a field value for a project item
  • create_draft_issue: Create a draft issue directly in a GitHub Project V2
  • delete_project_item: Delete an item from a GitHub Project V2

See tool documentation in the server code for detailed usage information.

Development

The project is structured as follows:

  • src/github_projects_mcp/: Main package directory
    • server.py: MCP server implementation with tool definitions
    • github_client.py: GraphQL client for GitHub API interactions

To contribute, make sure to:

  1. Add proper error handling for all GraphQL operations
  2. Add type annotations for all functions and parameters
  3. Update documentation when adding new tools or features

github-projects-mcp FAQ

How do I authenticate the github-projects-mcp server?
You authenticate by providing a GitHub Personal Access Token (PAT) via the GITHUB_TOKEN environment variable.
Can I use github-projects-mcp with any MCP client?
Yes, it is compatible with any MCP client, such as Claude Desktop, by adding it to the client's configuration.
What GitHub API does github-projects-mcp use?
It uses the GitHub GraphQL API to interact with GitHub Projects V2.
Does github-projects-mcp support managing draft issues?
Yes, it supports creating draft issues directly within GitHub Projects V2.
How do I configure github-projects-mcp in my MCP client?
You add the server configuration with the command and environment variables, including your GitHub token, in the MCP client config file.
Can github-projects-mcp update project item fields?
Yes, it allows updating field values for items within GitHub Projects V2.
Is it possible to delete project items using github-projects-mcp?
Yes, the server supports deleting items from GitHub Projects V2.