github-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GH_TOKEN | No | GitHub personal access token (alternative to GITHUB_TOKEN) | |
| GITHUB_TOKEN | No | GitHub personal access token | |
| GITHUB_API_BASE | No | Base URL for GitHub Enterprise Server, e.g. https://github.example.com/api/v3 | https://api.github.com |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| health_checkA | Verify the GitHub PAT is valid and report current rate-limit state. Returns the authenticated login, token scopes (when discoverable), the rate-limit ceiling, remaining requests, and the reset timestamp. Use this as the first call when wiring github-mcp into a new client. |
| list_prsC | List pull requests for a repo. |
| get_prA | Fetch a single PR with its check-run status and mergeable state. |
| merge_prC | Merge a pull request. |
| list_dependabot_alertsA | List Dependabot alerts for a repo with a severity-grouped summary. |
| get_fileB | Read a file from a repo via the Contents API. |
| put_fileA | Create or update a file via the Contents API. Idempotent when sha is correctly supplied for updates. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Each tool targets a distinct GitHub resource or action: file read/write, PR operations (single fetch, list, merge), health check, and Dependabot alerts. No overlapping functionality.
Most tools follow a verb_noun pattern (get_file, get_pr, list_prs, merge_pr, put_file), but 'health_check' deviates slightly as a noun_verb compound, and 'list_dependabot_alerts' uses a longer but still consistent verb_noun format.
Seven tools is well-scoped for a focused GitHub MCP server, covering key areas without being overwhelming or trivial.
The tool set lacks essential GitHub operations like creating PRs, managing issues, branches, or repository settings, leaving significant gaps for common workflows.