github-mcp
Provides tools for interacting with GitHub repositories, including fetching repository metadata, listing branches and files, reading file contents, and atomically creating or updating files in a single commit.
Click on "Deploy 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., "@github-mcpCommit the changes in the frontend folder to the main branch"
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.
github-mcp
Minimal self-hosted MCP server exposing GitHub write access as tools, so a
connected Claude account can push code without a human doing git push
manually each time.
Tools
Tool | What it does |
| Fetch default branch, private flag, last push time |
| List branches |
| List files/folders at a path |
| Fetch a file's decoded content + blob sha |
| Atomically create/update one or more files in a single commit (Git Data API: blobs → tree → commit → ref update) — use this to push a whole folder at once |
Related MCP server: GitHub MCP Server
Security — read this before deploying
GITHUB_TOKEN must be set as an environment variable directly in the
Manufact (or Render) dashboard's env var UI — never pasted into a chat
with an AI assistant, never committed to this repo, never passed as a tool
argument. The server only ever reads it from process.env. If a token was
ever pasted into a chat, treat it as compromised and revoke it — generate a
fresh one and set it through the dashboard directly.
Recommended token scope: fine-grained PAT, Contents: Read & write,
restricted to the specific repo(s) this needs to touch. Avoid a
classic/all-repo token.
Env vars
GITHUB_TOKEN— fine-grained PAT,Contents: Read & write, scoped to the target repo(s)PORT— defaults to 8080
Local run
npm install
npm start
curl localhost:8080/api/healthDeploy
Push this repo to GitHub (first push has to be manual — bootstrapping problem, this server can't push itself into existence), then:
Manufact:deploy (point at the repo)Manufact builds from the Dockerfile automatically. Set GITHUB_TOKEN in
Manufact's env var UI after deploying, then restart the service.
Connecting a Claude account to this server
Add as a custom connector pointing at https://<your-manufact-domain>/mcp.
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Access the GitHub API, enabling file operations, repository management, search functionality, and…
Create, deploy, and operate MCP servers directly from your GitHub repositories.
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceConnects Claude Desktop to GitHub repositories, enabling users to perform git operations and GitHub API interactions through natural conversation.305 npm-
- AlicenseNot gradedqualityNot gradedmaintenanceConnects Claude Desktop directly to GitHub repositories and git commands, enabling users to clone repos, check status, commit changes, push code, create repositories, and manage GitHub resources through natural conversation.305 npm-
- FlicenseNot gradedqualityDmaintenanceEnables to interact with GitHub repositories directly from Claude, supporting actions like viewing repos, checking status, committing and pushing changes, and managing pull requests.-
- AlicenseNot gradedqualityCmaintenanceConnects Claude directly to GitHub repositories for reading code, making changes, committing, and managing branches and pull requests.71 npmMIT