Rollup GitHub tools for LLMs via MCP. How the server is installed and wired to clients: docs/install.md only (do not restate that material here).
Implementation map (modules under src/server/, entry src/server.ts), symbols, and contract bumps live in AGENTS.md at the repository root.
Registered tool ids, parameters, JSON shapes, error codes: docs/mcp-tools.md — canonical; not duplicated here.
All tools require a GitHub token. The server resolves it in order:
GITHUB_TOKENenvironment variableGH_TOKENenvironment variablegh auth tokensubprocess (ifghCLI is installed)
Set the token in your MCP client's env block — see docs/install.md.
Required scopes: repo (for private repository access), read:org (for org_pulse).
GitHub Enterprise: set GITHUB_API_URL (defaults to https://api.github.com) and optionally GITHUB_GRAPHQL_URL in the env block.
Package install and MCP clients: docs/install.md.
See CONTRIBUTING.md for dev setup, build commands, git hooks, commit conventions, CI, and how to add a tool.
Tag pushes run .github/workflows/release.yml: build, check, tests, then:
npm packusing the committedpackage.jsonname@rethunk/github-mcp— tarball attached to a GitHub Release for that tag.- GitHub Packages (npm registry): workflow temporarily rewrites name to
@rethunk-ai/github-mcp(required scope for orgRethunk-AI) and runsnpm publishtohttps://npm.pkg.github.comwithGITHUB_TOKEN.
Prerequisite: push a semver git tag vX.Y.Z that exactly matches version in package.json.
- On a clean checkout at the release commit, run
bun run prepublishOnly. - Log in:
npm loginsonpm whoamishows the account that owns@rethunkon npmjs. - Ensure
package.jsonhas"name": "@rethunk/github-mcp"andpublishConfig.accessis"public". - Publish:
npm publish --access public.
package.json files must keep the whole dist/ directory so every emitted chunk is packed.