Skip to main content

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

Metadata

Release files for mcp-github-projects 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-github-projects 0.3.0
File Size Uploaded Provenance
mcp_github_projects-0.3.0.tar.gz 26.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for mcp-github-projects 0.3.0
File Interpreter ABI Platform
mcp_github_projects-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 43.9 kB

Release files / mcp_github_projects-0.3.0.tar.gz

Download URL mcp_github_projects-0.3.0.tar.gz
Size 26.3 kB
Tags Source
SHA-256 checksum
How to use checksums
cc45c73cb22c0ceba4e6650ed5cd6cd7c2bb45a059cc3f2445003c67a7a38502
BLAKE2b-256 checksum
How to use checksums
c524295455007107fd04008e269149716e60f7e3028ac50072d2724cd78aed30
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.10

Release files / mcp_github_projects-0.3.0-py3-none-any.whl

Download URL mcp_github_projects-0.3.0-py3-none-any.whl
Size 17.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3e4ae5a617635f5aa26f886f9a11e4662a110529110dce5dcd1ebfd722179859
BLAKE2b-256 checksum
How to use checksums
8a98e9973af4cd89902947ac9a11400bc84345a574cf5a680858cdf70113dd6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.10

Security for mcp-github-projects 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page