kunwarVivek

GitHub Project Manager MCP Server

Community kunwarVivek
Updated

a mcp server to manage github project's functionality

GitHub Project Manager MCP Server

A Model Context Protocol (MCP) server implementation that provides GitHub Projects functionality through standardized tools and resources. This server enables LLM clients to manage GitHub Projects programmatically through the MCP interface.

Overview

This server implements the Model Context Protocol to expose GitHub Projects functionality to LLM clients. It provides tools for managing projects, milestones, sprints, and metrics through GitHub's GraphQL API while maintaining state and handling errors according to MCP specifications.

Key Features

  • Project Management

    • Create and manage GitHub Projects (v2)
    • Handle project settings and configurations
    • Manage project visibility and access
  • Project Resources

    • Issues and milestones management
    • Sprint planning and tracking
    • Custom fields and views
    • Resource versioning and locking
  • MCP Implementation

    • Full MCP specification compliance
    • Standardized tool definitions
    • Resource state management
    • Progressive response handling
    • Comprehensive error handling
  • GitHub Integration

    • GraphQL API integration
    • Rate limit handling
    • Optimistic concurrency
    • Webhook support (planned)

Installation

# Install dependencies
npm install
# or
pnpm install

# Set up environment variables
cp .env.example .env
# Edit .env with your GitHub token and details

Configuration

Required environment variables:

GITHUB_TOKEN=your_github_token
GITHUB_OWNER=repository_owner
GITHUB_REPO=repository_name

The GitHub token requires these permissions:

  • repo (Full repository access)
  • project (Project access)
  • write:org (Organization access)

Usage

# Start the MCP server
npm start

# Run tests
npm test
npm run test:e2e

See the User Guide for detailed usage instructions.

Architecture

The server follows Clean Architecture principles with distinct layers:

  • Domain Layer: Core entities and repository interfaces
  • Infrastructure Layer: GitHub API integration and implementations
  • Service Layer: Business logic coordination
  • MCP Layer: Tool definitions and request handling

See ARCHITECTURE.md for detailed architecture documentation.

Current Status

Core Features

Feature Status Notes
Project Creation โœ… Complete Full support for v2 projects
Milestone Management โœ… Complete CRUD operations implemented
Sprint Planning โœ… Complete Including metrics tracking
Issue Management โœ… Complete With custom fields support
Resource Versioning ๐Ÿ—๏ธ In Progress Basic versioning implemented
Webhook Integration ๐Ÿ“… Planned Real-time updates

MCP Implementation

Component Status Notes
Tool Definitions โœ… Complete All core tools implemented
Resource Management โœ… Complete With optimistic locking
Response Handling ๐Ÿ—๏ธ In Progress Progressive responses WIP
Error Handling ๐Ÿ—๏ธ In Progress Comprehensive error mapping
State Management โœ… Complete With conflict resolution

See docs/mcp/gaps-analysis.md for detailed implementation status.

Documentation

  • User Guide - Detailed usage instructions
  • Architecture - System architecture and design
  • Contributing - Development guidelines
  • MCP Documentation - MCP-specific details

Development

Testing

# Unit tests
npm test

# Integration tests
npm run test:integration

# End-to-end tests
npm run test:e2e

Code Quality

# Lint code
npm run lint

# Type check
npm run type-check

# Format code
npm run format

Contributing

See CONTRIBUTING.md for development guidelines.

License

MIT

MCP Server ยท Populars

MCP Server ยท New

    chatmcp

    mcpso

    directory for Awesome MCP Servers

    Community chatmcp
    TBXark

    MCP Proxy Server

    An MCP proxy server that aggregates and serves multiple MCP resource servers through a single HTTP server.

    Community TBXark
    ttommyth

    interactive-mcp

    Ask users questions from your LLM! interactive-mcp: Local, cross-platform MCP server for interactive prompts, chat & notifications.

    Community ttommyth
    lpigeon

    ros-mcp-server

    The ROS MCP Server is designed to support robots in performing complex tasks and adapting effectively to various environments by providing a set of functions that transform natural language commands, entered by a user through an LLM, into ROS commands for robot control.

    Community lpigeon
    emicklei

    melrose-mcp

    interactive programming of melodies, producing MIDI

    Community emicklei