github (keyring broker)
The upstream GitHub MCP server, wrapped so no token is ever written to a config file.
MCP ServerPublic
- Language
- Shell
The GitHub server itself is upstream and unmodified. What's notable is how it's launched: a small wrapper fetches the token from the OS keyring at spawn time rather than reading it from configuration.
This replaced a live OAuth token sitting in plaintext in a local config file. The config now holds a path, never a credential — and rotating the token needs no config edit at all. Same broker pattern as aws-vault for AWS.
The whole wrapper
#!/bin/bash
GITHUB_TOKEN="$(gh auth token)" \
exec npx -y @modelcontextprotocol/server-githubWhy it is built this way
Credentials should be fetched, never stored. Nine lines is the whole idea.