github-mcp
An MCP server that enables AI assistants to interact with GitHub via a fine-grained personal access token — pushing commits, managing branches, opening and merging PRs, creating issues, and reading repositories. It runs locally with no telemetry and supports a read-only mode.
README
@iiinigence/github-mcp
Push commits, manage branches, open PRs, and read repos — by just asking your AI.
An open-source MCP server for GitHub, developed by IIInigence. Works with Claude Desktop, Claude Code, and any MCP-compatible client.
Because it runs on your machine with your token, your AI assistant can ship code to GitHub even from cloud sandboxes that can't push directly — the API calls originate from your device, not the sandbox.
Easiest install — one file, no terminal (Claude Desktop)
- Download
iiinie-github.mcpbfrom the latest release - In Claude Desktop: Settings → Extensions → Advanced settings → Install Extension → pick the downloaded file. Claude shows what you're getting; click Install.
- Paste your GitHub token (see below) and optionally a default owner/org. Done.
Nervous about giving an AI push powers? Flip on Read-only mode in the same form: Claude can read repos and PRs but can't change a thing until you turn it off.
Get a token (2 minutes)
Create a fine-grained personal access token at GitHub → Settings → Developer settings → Fine-grained tokens:
- Repository access: Only select repositories — pick just the repos you want your AI to work with
- Permissions → Repository permissions:
- Contents: Read and write
- Pull requests: Read and write
- Issues: Read and write
- Actions: Read-only
- Metadata: Read-only (added automatically)
Never use a classic token with broad scopes — fine-grained scoping is the whole safety story.
Quick start (manual / npx route)
Add to Claude Desktop — Settings → Developer → Edit Config:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@iiinigence/github-mcp"],
"env": {
"GITHUB_TOKEN": "github_pat_your_token_here",
"GITHUB_DEFAULT_OWNER": "your-username-or-org",
"READ_ONLY": "false"
}
}
}
}
Restart Claude Desktop, then try: "Use whoami to check my GitHub connection, then list my repos."
Tools
15 tools. Tools marked 🔒 are destructive: the assistant is instructed to always get your explicit confirmation before calling them, and READ_ONLY blocks them entirely.
| Tool | What it does |
|---|---|
whoami |
Verify the token — who is authenticated |
list_repos |
Repositories the token can access, recently pushed first |
list_branches |
Branches with latest commit SHAs |
get_file |
Read a file (UTF-8) or list a directory at any ref |
list_commits |
Recent commits on a branch |
push_files |
The core write tool — commit multiple files to a branch in one commit and push. Creates the branch if needed. Never force-pushes. |
create_branch |
Create a branch from another branch |
delete_branch 🔒 |
Delete a branch (refuses the default branch) |
open_pr |
Open a pull request (normal or draft) |
list_prs / get_pr |
Browse PRs; details include changed files & mergeability |
merge_pr 🔒 |
Merge a PR (merge / squash / rebase) |
create_issue |
Open a new issue |
comment_on_issue |
Comment on an issue or PR |
list_workflow_runs |
Check GitHub Actions CI status after a push |
Configuration
| Env var | Required | Description |
|---|---|---|
GITHUB_TOKEN |
✅ | Fine-grained personal access token |
GITHUB_DEFAULT_OWNER |
— | Default owner/org when tools don't specify one |
READ_ONLY |
— | true = everything readable, all writes blocked (default false) |
GITHUB_BASE_URL |
— | Override for GitHub Enterprise (e.g. https://github.example.com/api/v3) |
Safety notes
- Use a fine-grained token scoped to only the repos your AI should touch. Rotate it if it may have leaked.
push_filesnever force-pushes, anddelete_branchrefuses the repository's default branch.- Keep yourself as the approval step: have your assistant push to feature branches and open PRs you review, rather than committing to main.
- Start with
READ_ONLY: "true"if you want to connect before granting write powers.
Privacy
This connector runs locally, collects no data, has no telemetry, and talks only to GitHub's API. Your token is stored on your device by Claude Desktop and sent only to GitHub. Full policy: PRIVACY.md.
Who built this
IIInigence — a software development agency: custom software, AI automations, full platforms. This connector is part of our video series on connecting Claude to your business tools, one at a time. See also our SendGrid connector.
Want something like this built for your business? Tell us what you'd build.
Development
git clone https://github.com/iiinigence/github-mcp.git
cd github-mcp
npm install
npm run build
GITHUB_TOKEN=github_pat_xxx node dist/index.js
MIT licensed. PRs welcome.
This is an independent project by IIInigence. It is not affiliated with, endorsed, or sponsored by GitHub, Inc. "GitHub" is a trademark of GitHub, Inc., used here only to describe compatibility.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
E2B
Using MCP to run code via e2b.