Provides a configurable proxy to GitHub's MCP server tools, allowing whitelisted access to GitHub operations like reading file contents and creating issues through a filtered subset of available GitHub tools.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Lightweight GitHub MCPwhat tools are available in the upstream server?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
lightweight-github-mcp
A lightweight proxy server that wraps github/github-mcp-server (GitHub's official MCP server) and exposes only whitelisted tools via YAML configuration. This dramatically reduces context consumption.
Prerequisites
Node.js >= 18.0.0
Docker (required for running upstream GitHub MCP server)
Installation
# Install dependencies
npm install
# Build
npm run buildUsage
# Run the server
npm start
# Development mode (watch)
npm run dev
# Test with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.jsArchitecture
Claude Desktop/Code
│ MCP Protocol (stdio)
▼
┌─────────────────────────────┐
│ lightweight-github-mcp │
│ ┌─────────┐ ┌──────────┐ │
│ │MCP │→ │Tool │→ │ config.yaml (allowedTools)
│ │Server │ │Filter │ │
│ └─────────┘ └──────────┘ │
│ ↑ │ │
│ │ ┌─────▼─────┐ │
│ │ │MCP Client │ │
│ │ └─────┬─────┘ │
└─────────┼──────────┼────────┘
│ │ spawn Docker container
│ ▼
│ github/github-mcp-server (Docker, ~100 tools)
│
Claude requestsKey Components
src/index.ts - Entry point, config loading, server initialization
src/server.ts - MCP server implementation, tool filtering, meta-tool handlers
src/upstream-client.ts - Child process management for upstream GitHub MCP
src/config.ts - YAML configuration loading and validation
config.yaml - Tool whitelist configuration
Meta-Tools (Always Available)
The proxy provides four built-in meta-tools that are always exposed:
list_all_upstream_tools- List all upstream tools (allowed + blocked)list_blocked_tools- List blocked tools by categorysearch_upstream_tools- Search upstream tools by keywordget_tool_info- Get details about a specific tool
These help Claude discover tools and guide users to add needed tools to the whitelist.
Configuration
config.yaml
allowedTools:
- get_file_contents
- create_issue
# ... only listed tools are exposed
# Using github/github-mcp-server via Docker
upstream:
command: docker
args:
- "run"
- "-i"
- "--rm"
- "-e"
- "GITHUB_PERSONAL_ACCESS_TOKEN"
- "ghcr.io/github/github-mcp-server"Config File Lookup Order
CONFIG_PATHenvironment variable./config.yaml(current directory)Project root
config.yaml
Environment Variables
Variable | Required | Description |
| Yes | GitHub Personal Access Token |
| No | Path to config.yaml |
Claude Desktop Configuration
Add the following to your Claude Desktop configuration file:
{
"mcpServers": {
"github-lite": {
"command": "node",
"args": ["/path/to/lightweight-github-mcp/dist/index.js"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxx"
}
}
}
}License
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.