github-mcp-server-local
Local Docker setup for GitHub MCP Server with docker-compose
Documentation
GitHub MCP Server - Local Docker Setup
This repository provides an easy way to run the GitHub MCP Server locally using Docker Compose with HTTP access on port 3000.
What is GitHub MCP Server?
The GitHub MCP Server is a Model Context Protocol (MCP) server that provides seamless integration with GitHub APIs, enabling advanced automation and interaction capabilities for developers and tools.
Features
- Easy Setup: Just run `docker-compose up` to start the server
- HTTP Access: Access the MCP server via HTTP on port 3000
- Configurable: Support for all GitHub MCP Server configuration options
- Auto-restart: Containers automatically restart on failure
Quick Start
Prerequisites
- Docker installed and running
- Docker Compose installed
- A GitHub Personal Access Token
Setup
1. Clone this repository:
git clone https://github.com/shesadri/github-mcp-server-local.git
cd github-mcp-server-local2. Create environment file:
cp .env.example .env3. Configure your GitHub token:
Edit `.env` file and replace `your_github_token_here` with your actual GitHub Personal Access Token.
4. Start the server:
docker-compose up -d5. Access the server:
The server will be available at `http://localhost:3000`
Configuration
Environment Variables
| Variable | Description | Default |
|---|---|---|
| `GITHUB_PERSONAL_ACCESS_TOKEN` | Your GitHub Personal Access Token | Required |
| `GITHUB_TOOLSETS` | Comma-separated list of toolsets to enable | `all` |
| `GITHUB_DYNAMIC_TOOLSETS` | Enable dynamic toolset discovery (0 or 1) | `0` |
| `PORT` | HTTP server port | `3000` |
Available Toolsets
- `repos` - Repository-related tools (file operations, branches, commits)
- `issues` - Issue-related tools (create, read, update, comment)
- `users` - Anything relating to GitHub Users
- `pull_requests` - Pull request operations (create, merge, review)
- `code_security` - Code scanning alerts and security features
- `experiments` - Experimental features (not considered stable)
To enable specific toolsets, set `GITHUB_TOOLSETS=repos,issues,pull_requests` in your `.env` file.
Usage
Check Server Status
curl http://localhost:3000/healthMake MCP Requests
The server accepts MCP protocol requests via HTTP POST:
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {}
}'Docker Commands
Start services
docker-compose up -dStop services
docker-compose downView logs
docker-compose logs -fRebuild and restart
docker-compose down
docker-compose build --no-cache
docker-compose up -dTroubleshooting
Check if containers are running
docker-compose psView container logs
docker-compose logs github-mcp-server
docker-compose logs mcp-http-proxyReset everything
docker-compose down -v
docker-compose up -dSecurity Notes
- Keep your GitHub Personal Access Token secure
- Only grant the minimum permissions necessary for your use case
- Consider using GitHub App tokens for production deployments
- The server runs on localhost by default - configure firewall rules appropriately
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the original GitHub MCP Server for license details.
Related Projects
- GitHub MCP Server - The original GitHub MCP Server
- Model Context Protocol - Learn more about MCP
Frequently asked questions
What is github-mcp-server-local?
github-mcp-server-local is Local Docker setup for GitHub MCP Server with docker-compose
How do I install github-mcp-server-local?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is github-mcp-server-local open source?
Yes — it is hosted on GitHub at https://github.com/shesadri/github-mcp-server-local.
Related MCP tools
An MCP server that installs other MCP servers for you JavaScript-based implementation. Trusted by 1400+ developers. Trusted by 1400+ developers.
MCP server for interacting with the iOS simulator JavaScript-based implementation. Trusted by 1200+ developers. Trusted by 1200+ developers.
A Model Context Protocol server that provides read-only access to MySQL databases. This server enables LLMs to inspect database schemas and execute read-only...
This is an MCP server that allows you to directly download transcripts of YouTube videos. JavaScript-based implementation.
The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.
An AI-powered task-management system you can drop into Cursor, Lovable, Windsurf, Roo, and others. Built for the Model Context Protocol to enhance AI capabiliti
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP