github-mcp-server icon indicating copy to clipboard operation
github-mcp-server copied to clipboard

Support GitHub App authentication with client credentials

Open robosek opened this issue 2 months ago • 2 comments

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?

robosek avatar Oct 29 '25 12:10 robosek

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 avatar Nov 10 '25 15:11 almaleksia

@almaleksia Does it support User access tokens? I tried creating a device token for the app using my user and it didn't work

opsteamp44 avatar Nov 24 '25 10:11 opsteamp44