GitHub Projects V2 MCP server

Integrates with GitHub Projects V2 to enable direct management of project boards, issues, and field values through natural language commands without switching contexts.
Back to servers
Setup instructions
Provider
Arclio
Release date
May 03, 2025
Stats
15 stars

The GitHub Projects V2 MCP server is a specialized server that implements the Model Context Protocol (MCP), allowing you to manage GitHub Projects V2 through Claude and other MCP clients. It interacts with the GitHub GraphQL API to provide a range of project management capabilities.

Installation

There are two ways to install and set up the GitHub Projects V2 MCP server: using the published package or running from source code.

Using Published Package

  1. Add the server to your MCP client configuration file (e.g., claude_desktop_config.json):
{
  "mcpServers": {
    "github-projects": {
      "command": "uvx",
      "args": [
        "mcp-github-projects"
      ],
      "env": {
        "GITHUB_TOKEN": "your_pat_here"
      }
    }
  }
}
  1. Replace your_pat_here with your GitHub Personal Access Token. You'll need to create a token with repo, project, and read:org permissions.

From Source Code

  1. Clone the repository:
git clone [email protected]:Arclio/github-projects-mcp.git
cd github-projects-mcp
  1. Create and activate a virtual environment:
uv venv
source venv/bin/activate
  1. Install dependencies:
uv pip install -e .
  1. Set up your GitHub token:

    cp .env.example .env
    
    • Add your token to the .env file:
    export GITHUB_TOKEN=your_personal_access_token
    
  2. Configure your MCP client:

{
  "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 with your actual repository path and your_pat_here with your GitHub Personal Access Token.

Usage

The GitHub Projects V2 MCP server provides several tools to help you manage your GitHub Projects:

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

Example Workflows

Viewing Project Information

You can ask Claude to:

  • List all projects in your organization
  • Show fields available in a specific project
  • View all items in a project or filter them by state

Managing Project Items

You can use Claude to:

  • Create new issues and add them to projects
  • Create draft issues directly in projects
  • Update field values for project items
  • Remove items from projects

Best Practices

  • Ensure your GitHub token has the necessary permissions
  • Use specific project IDs when working with multiple projects
  • Provide complete information when creating issues or draft items

With these tools, you can automate many aspects of your GitHub Projects management through Claude or other MCP clients.

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "github-projects" '{"command":"uvx","args":["mcp-github-projects"],"env":{"GITHUB_TOKEN":"your_pat_here"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

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

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

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

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later