Support GitHub App authentication with client credentials
Currently, the server only supports authentication via Personal Access Tokens (PAT) or OAuth.
For organizations managing multiple integrations, GitHub Apps are preferred because they:
- Provide more granular permissions
- Include all repos in organization (PAT includes only 50)
Add support for GitHub App authentication using:
- App ID
- Client ID
- Private key (path to .pem file or secret)
This would allow the server to generate installation tokens programmatically instead of requiring PATs.
Alternative configuration: { "GITHUB_APP_ID": "123456", "GITHUB_CLIENT_ID": "Iv1.abc123", "GITHUB_PRIVATE_KEY_PATH": "/path/to/private-key.pem" }
Is this on the roadmap?
GitHub MCP supports installation tokens, you can generate it following this doc: https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/generating-an-installation-access-token-for-a-github-app
You can use this token instead of PAT.
@almaleksia Does it support User access tokens? I tried creating a device token for the app using my user and it didn't work