mcp-github-projects

mcp-github-projects

15

The GitHub Projects MCP Server is designed to help AI agents manage Agile Sprint-based projects utilizing GitHub Projects via the GraphQL API. It offers type-safe interactions through TypeScript, enabling operations like issue management and repository data retrieval.

GitHub Projects MCP Server

smithery badge

An MCP (Model Context Protocol) server that enables AI agents to create and manage Agile Sprint-based projects using GitHub Projects.

GitHub Projects Server MCP server

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:

npx -y @smithery/cli install taylor-lindores-reeves/mcp-github-projects --client claude

Usage

Manual Installation

  1. Clone this repository:

    git clone https://github.com/taylor-lindores-reeves/mcp-github-projects.git
    cd mcp-github-projects
    
  2. Install dependencies:

    bun install
    
  3. Create a .env file with your GitHub token:

    GITHUB_TOKEN=your_github_personal_access_token
    GITHUB_OWNER=your_github_username
    
  4. Build the server:

    bun run build
    
  5. Configure your MCP client with the following settings:

{
  "mcpServers": {
    "GitHubProjects": {
      "command": "bun",
      "args": [
        "/path/to/your/directory/mcp-github-projects-main/build/index.js"
      ],
      "env": {
        "GITHUB_TOKEN": "your_github_personal_access_token",
        "GITHUB_OWNER": "your_github_username_or_org"
      }
    }
  }
}

Environment Variables

  • GITHUB_TOKEN: GitHub Personal Access Token with appropriate permissions
  • GITHUB_OWNER: GitHub username or organization name

GitHub Token Permissions

This MCP server requires a GitHub Personal Access Token (classic) with the following permissions:

  • project - Full control of projects
  • read:project - Read access of projects
  • repo - Full control of private repositories
  • repo:status - Access commit status
  • repo_deployment - Access deployment status
  • public_repo - Access public repositories
  • repo:invite - Access repository invitations
  • security_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