Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GITHUB_TOKEN | Yes | GitHub Personal Access Token for authentication. Scopes required depend on the tools being used (e.g., repo, read:org, gist, notifications, user, workflow, read:discussion, project). |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_workflows | List GitHub Actions workflows in a repository. |
| list_workflow_runs | List workflow runs for a repository or specific workflow. |
| trigger_workflow | Trigger a workflow dispatch event to run a workflow. |
| cancel_workflow_run | Cancel a workflow run. |
| get_branch_protection | Get branch protection rules for a branch. |
| update_branch_protection | Update branch protection rules for a branch. |
| delete_branch_protection | Delete branch protection rules for a branch. |
| list_branches | List branches in a repository. |
| create_branch | Create a new branch in a repository. |
| delete_branch | Delete a branch from a repository. |
| list_collaborators | List collaborators of a repository. |
| add_collaborator | Add a collaborator to a repository. |
| remove_collaborator | Remove a collaborator from a repository. |
| list_commit_statuses | List commit statuses for a reference (branch, tag, or SHA). |
| create_commit_status | Create a commit status for a specific SHA. |
| list_check_runs | List check runs for a reference (branch, tag, or SHA). |
| get_check_run | Get a single check run by ID. |
| list_discussions | List discussions in a repository. |
| get_discussion | Get details of a specific discussion. |
| get_discussion_comments | Get comments on a discussion. |
| list_discussion_categories | List discussion categories for a repository. |
| create_or_update_file | Create or update a file in a repository. To update, you must provide the current file's SHA. |
| delete_file | Delete a file from a repository. |
| list_gists | List gists for a user or the authenticated user. |
| get_gist | Get a specific gist with its file contents. |
| create_gist | Create a new gist. |
| update_gist | Update an existing gist. Provide files to add/update, or set a filename's content to empty string to delete it. |
| get_repository_tree | Get a repository tree (directory listing) by SHA or branch name. Set recursive=True to get the full nested file tree. |
| push_files | Push multiple files to a branch in a single commit using the Git Data API. This creates blobs, a tree, a commit, and updates the branch ref atomically. |
| list_issues | List issues in a repository. |
| get_issue | Get detailed information about a specific issue. |
| create_issue | Create a new issue in a repository. |
| update_issue | Update an existing issue. |
| list_issue_comments | List comments on an issue. |
| create_issue_comment | Add a comment to an issue. |
| list_labels | List labels in a repository. |
| create_label | Create a label in a repository. |
| delete_label | Delete a label from a repository. |
| list_notifications | List notifications for the authenticated user. |
| mark_notifications_read | Mark all notifications as read. |
| mark_thread_read | Mark a specific notification thread as read. |
| list_user_orgs | List organizations for the authenticated user. |
| get_organization | Get detailed information about an organization. |
| list_org_members | List members of an organization. |
| list_repo_projects | List projects in a repository (classic projects). |
| list_org_projects | List projects in an organization (classic projects). |
| list_projects_v2 | List Projects V2 for an organization or user. |
| get_project_v2 | Get details of a specific Project V2. |
| list_project_v2_items | List items in a Project V2 (issues, PRs, and draft items). |
| list_pull_requests | List pull requests in a repository. |
| get_pull_request | Get detailed information about a pull request. |
| create_pull_request | Create a new pull request. |
| update_pull_request | Update a pull request. |
| merge_pull_request | Merge a pull request. |
| list_pr_files | List files changed in a pull request. |
| list_pr_commits | List commits in a pull request. |
| update_pull_request_branch | Update a pull request branch with the latest changes from the base branch. This is equivalent to pressing the 'Update branch' button on GitHub. |
| list_releases | List releases in a repository. |
| get_latest_release | Get the latest published release of a repository. |
| create_release | Create a new release. |
| get_release_by_tag | Get a release by its tag name. |
| list_repositories | List repositories for a user or organization. |
| get_repository | Get detailed information about a repository. |
| create_repository | Create a new repository for the authenticated user. |
| fork_repository | Fork a repository. |
| list_commits | List commits in a repository. |
| get_file_contents | Get the contents of a file or directory listing in a repository. Returns JSON with a 'type' field ('file' or 'directory') for consistent parsing. |
| get_commit | Get details of a specific commit including stats and changed files. |
| list_review_comments | List review comments on a pull request. |
| create_review_comment | Create a review comment on a specific line of a pull request diff. |
| reply_to_review_comment | Reply to an existing review comment on a pull request. |
| create_pr_review | Create a review on a pull request. |
| list_pr_reviews | List reviews on a pull request. |
| search_repositories | Search GitHub repositories. |
| search_code | Search code across GitHub repositories. |
| search_issues | Search issues and pull requests across GitHub. |
| search_users | Search GitHub users. |
| list_starred_repos | List repositories starred by a user or the authenticated user. |
| star_repository | Star a repository. |
| unstar_repository | Unstar a repository. |
| list_tags | List tags in a repository. |
| get_tag | Get an annotated tag object by its SHA. Only works for annotated tags, not lightweight tags. |
| get_authenticated_user | Get information about the currently authenticated user. |
| get_user | Get public information about a GitHub user. |
| list_webhooks | List webhooks for a repository. |
| create_webhook | Create a webhook for a repository. |
| delete_webhook | Delete a webhook from a repository. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |