Skip to content

NimbleBrainInc/mcp-github

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub MCP Server - HTTP Wrapper

Minimal HTTP wrapper for GitHub's official MCP server.

Why This Exists

GitHub's MCP server is distributed as a stdio-only OCI container. This wrapper adds an HTTP interface so it can be deployed as a standard HTTP service.

KISS principle applied:

  • Single Python file (105 lines)
  • No complex dependencies
  • Multi-stage Docker build extracts binary from distroless base
  • Clean subprocess management

Quick Start

# Build
make build

# Run locally
make run GITHUB_TOKEN=your_token_here

# Test
curl http://localhost:8000/health

Endpoints

  • GET /health - Health check
  • POST /mcp - JSON-RPC MCP protocol endpoint

Environment Variables

  • GITHUB_PERSONAL_ACCESS_TOKEN - Required for GitHub API access
  • MCP_SERVER_COMMAND - Server command (default: github-mcp-server stdio)
  • PORT - HTTP port (default: 8000)

Build & Deploy

# Build multi-arch and push to registry
make build-push IMAGE_NAME=your-registry/github-mcp-http VERSION=v1.0.0

# Login to registry first
make login

How It Works

HTTP Request → FastAPI → subprocess (stdio) → GitHub MCP Server

The wrapper spawns the original stdio server as a subprocess and translates HTTP requests to stdin/stdout JSON-RPC communication.

Reference

About

Streamable HTTP wrapper for github-mcp-server.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published