Add it to Claude Code
claude mcp add -e "GITHUB_TOKEN=${GITHUB_TOKEN}" github-mcp-5f8f -- docker run -i --rm -e GITHUB_TOKEN github-mcpGITHUB_TOKENMake your agent remember this setup
github-mcp-5f8f's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.
npx conare@latestFree · one command · indexes the sessions already on disk. Set up in the browser instead →
What it does
- Create and manage GitHub repositories
- Create or update files directly via commit messages
- Branch off existing references
- Verify authenticated GitHub identity
Tools 4
create_repositoryCreate a new repository under the authenticated user or a given organization.upsert_fileCreate or update files with commit messages on a specific branch.create_branchCreate a new branch off any reference.whoamiDisplay the identity associated with the current personal access token.Environment Variables
GITHUB_TOKENrequiredGitHub Personal Access Token with repo scope.Try it
Original README from augustolamim/_MCP
GitHub MCP Server (Node + TypeScript)
Docker-friendly Model Context Protocol server that lets Codex create and manage GitHub repositories with a single personal access token (PAT).
Features
create_repository: create a repo under the authenticated user or a given org.upsert_file: create/update files with commit messages on a branch.create_branch: branch off any ref (defaults frommain).whoami: show the PAT identity.
Requirements
- Node 20+ (or Docker).
- GitHub PAT in
GITHUB_TOKENwith at leastreposcope (orpublic_repoif you only touch public repos). - For org repos, ensure the token can create repos in that org and that SSO/org policies allow it.
Local dev
npm install
npm run dev
Docker build and run
docker build -t github-mcp .
docker run -i --rm -e GITHUB_TOKEN=... github-mcp
Wire up to Codex (VS Code)
The server speaks MCP over stdio. Configure Codex to start it with:
{
"mcpServers": {
"github-mcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "GITHUB_TOKEN", "github-mcp"]
}
}
}
[mcp_servers.github-mcp]
command = "docker"
args = ["run", "-i", "--rm", "--env-file", "pathToEnv", "github-mcp"]
Important: use "-e", "GITHUB_TOKEN" (without =${GITHUB_TOKEN}) when the command is launched directly (non-shell), so Docker forwards the host GITHUB_TOKEN value correctly.
Notes and safety
- The server uses your PAT directly; treat it like a password.
- Actions are direct commits; there is no local clone.
- If you need organization SAML, approve the PAT for that org first.
Extending
- Add tools via
server.tool(name, { description, inputSchema }, handler)insrc/index.ts.