GitHub MCP server
The same reach GitHub's own MCP server has, on a token you issue and can revoke.
- Tools
- 124
- Read-only
- 63
- Write
- 61
- Off by default
- Destructive
- 2
- Flagged distinctly
GitHub through an assistant
One personal access token puts file contents and history, issue and pull request threads, review comments, workflow runs and job logs, Discussions, Projects and notifications in front of an assistant. Every security alert surface is there too -- code scanning, secret scanning and Dependabot. Reads work the moment you connect; writes are opted in per tool, and deleting a repository or a file needs an explicit confirmation on top of that.
- Repository files, commits, branches, tags and releases
- Issues and pull requests, including review threads and inline comments
- Actions workflows, runs, jobs and job logs
- Code scanning, secret scanning and Dependabot alerts
- Discussions, Projects v2, gists, notifications and org search
- Open issues and PRs, push files, merge, review and manage labels (opt-in)
What people actually ask
Real questions, answered from live GitHub data.
“Which open pull requests have been waiting on review for more than a week?”
github_list_pull_requestsgithub_pull_request_read“Are there any critical Dependabot alerts open on this repository?”
github_list_dependabot_alertsgithub_get_dependabot_alert“Why did the last CI run on main fail?”
github_actions_listgithub_get_job_logs124 GitHub tools
Grouped by what they touch. Every tool is individually toggleable — you expose only what you want.
Issues
27 tools9 read-only · 18 writeShowing 10 of 10 tools
- github_add_issue_commentWrite
Add a comment and/or reaction to a specific issue or issue comment in a GitHub repository. Also works for pull requests (pass the PR number as issue_number).
- github_add_issue_comment_reactionWrite
Add a reaction to an issue or pull request comment.
- github_add_issue_reactionWrite
Add a reaction to an issue or pull request.
- github_add_sub_issueWrite
Add a sub-issue to a parent issue.
- github_create_issueWrite
Create a new issue in a GitHub repository with a title and optional body.
- github_find_duplicateRead-only
Find likely duplicate issues for an existing issue in a GitHub repository. Read-only: returns ranked candidate issues with a similarity score and confidence, does not close/link/modify anything.
- github_get_issueRead-only
Get details of a specific GitHub issue.
- github_get_labelRead-only
Get a specific label from a repository.
- github_issue_dependency_readRead-only
Read an issue's dependency relationships: the issues that block it (blocked_by) or the issues it blocks (blocking).
- github_issue_dependency_writeWrite
Add or remove an issue dependency relationship. Use type 'blocked_by' or 'blocking'.
+ 17 more issues tools — see the full catalogue
Pull requests
22 tools3 read-only · 19 writeShowing 10 of 10 tools
- github_add_comment_to_pending_reviewWrite
Add a review comment to the requester's latest pending pull request review. A pending review must already exist.
- github_add_pull_request_review_commentWrite
Add a review comment to the current user's pending pull request review. A pending review must already exist.
- github_add_pull_request_review_comment_reactionWrite
Add a reaction to a pull request review comment.
- github_add_reply_to_pull_request_commentWrite
Add a reply and/or reaction to an existing pull request comment. Can create a reply comment, add an emoji reaction, or both. At least one of body or reaction is required.
- github_create_pull_requestWrite
Create a new pull request in a GitHub repository.
- github_create_pull_request_reviewWrite
Create a review on a pull request. If event is provided, the review is submitted immediately; otherwise a pending review is created.
- github_delete_pending_pull_request_reviewWrite
Delete a pending pull request review.
- github_list_pull_requestsRead-only
List pull requests in a GitHub repository. If the caller wants to filter by author, use search_pull_requests instead.
- github_merge_pull_requestWrite
Merge a pull request in a GitHub repository.
- github_pull_request_readRead-only
Get information on a specific pull request. method selects what to retrieve: get (details), get_diff (raw diff), get_status (combined commit status of the head commit), get_files (changed files), get_commits (commits on the PR), get_review_comments (review threads, cursor-paginated via after), get_reviews (submitted/pending reviews), get_comments (issue-style PR comments), get_check_runs (CI check runs for the head commit).
+ 12 more pull requests tools — see the full catalogue
Repos
21 tools14 read-only · 7 writeShowing 10 of 10 tools
- github_create_branchWrite
Create a new branch in a GitHub repository.
- github_create_or_update_fileWrite
Create or update a single file in a GitHub repository. If updating, provide the SHA of the file being updated (get it from get_file_contents).
- github_create_repositoryWrite
Create a new GitHub repository in your account or a specified organization.
- github_delete_fileWriteDestructive
Delete a file from a GitHub repository. IRREVERSIBLE -- requires explicit confirmation.
- github_delete_repositoryWriteDestructive
Delete a GitHub repository. IRREVERSIBLE -- requires explicit confirmation of the exact owner/repository name before executing.
- github_fork_repositoryWrite
Fork a GitHub repository to your account or a specified organization.
- github_get_commitRead-only
Get details for a commit from a GitHub repository.
- github_get_file_blameRead-only
Get git blame information for a file, showing the commit that last modified each line. Uses GitHub's GraphQL API since blame has no REST equivalent. Optionally restrict to a line window with start_line/end_line.
- github_get_file_contentsRead-only
Get the contents of a file or directory from a GitHub repository. Returns GitHub's native Contents API shape -- file content comes back base64-encoded, directories come back as an array of entries.
- github_get_latest_releaseRead-only
Get the latest release in a GitHub repository.
+ 11 more repos tools — see the full catalogue
Notifications
6 tools2 read-only · 4 writeShowing 6 of 6 tools
- github_dismiss_notificationWrite
Dismiss a notification by marking it as read or done.
- github_get_notification_detailsRead-only
Get detailed information for a specific GitHub notification.
- github_list_notificationsRead-only
List GitHub notifications for the authenticated user -- unread, mentions, review requests, assignments, and updates on issues/PRs.
- github_manage_notification_subscriptionWrite
Manage a notification subscription: ignore, watch, or delete a notification thread subscription.
- github_manage_repository_notification_subscriptionWrite
Manage a repository notification subscription: ignore, watch, or delete notifications for a given repository.
- github_mark_all_notifications_readWrite
Mark all notifications as read.
Discussions
5 tools4 read-only · 1 writeShowing 5 of 5 tools
- github_discussion_comment_writeWrite
Write operations for discussion comments: add a top-level comment, reply, update, delete, or mark/unmark as the answer -- selected via a method parameter.
- github_get_discussionRead-only
Get a specific discussion by ID.
- github_get_discussion_commentsRead-only
Get comments from a discussion.
- github_list_discussion_categoriesRead-only
List discussion categories with their id and name, for a repository or organization.
- github_list_discussionsRead-only
List discussions for a repository or organization.
Actions
4 tools3 read-only · 1 writeShowing 4 of 4 tools
- github_actions_getRead-only
Get details about specific GitHub Actions resources -- individual workflows, workflow runs, jobs, and artifacts by their unique IDs. Select the resource with 'method'.
- github_actions_listRead-only
List GitHub Actions resources -- workflows in a repository, or workflow runs/jobs/artifacts for a specific workflow or run. Select the resource with 'method'.
- github_actions_run_triggerWrite
Trigger GitHub Actions workflow operations, including running, re-running, cancelling workflow runs, and deleting workflow run logs.
- github_get_job_logsRead-only
Get logs for GitHub Actions workflow jobs -- a specific job (job_id) or all failed jobs in a run (run_id with failed_only=true).
Gists
4 tools2 read-only · 2 writeShowing 4 of 4 tools
- github_create_gistWrite
Create a new gist.
- github_get_gistRead-only
Get gist content of a particular gist, by gist ID.
- github_list_gistsRead-only
List gists for a user (defaults to the authenticated user).
- github_update_gistWrite
Update an existing gist.
Governance
4 tools2 read-only · 2 writeShowing 4 of 4 tools
- github_create_repository_rulesetWrite
Create a new ruleset at the repository, organization, or enterprise level.
- github_custom_properties_readRead-only
Read custom properties at the repository, organization, or enterprise level. At the repository level this returns the property values assigned to a repository; at the organization and enterprise levels it returns the property definitions (schema).
- github_custom_properties_writeWrite
Create or update custom properties at the repository, organization, or enterprise level. At the repository level this sets property values (the properties must already be defined for the organization). Organization and enterprise definition writes preserve omitted writable fields by reading current definitions immediately before updating; concurrent definition updates remain last-write-wins.
- github_repository_ruleset_readRead-only
Read rulesets at the repository, organization, or enterprise level, and rule suites (rule evaluation results) at the repository or organization level. Select the level with 'level' and the operation with 'method'.
Security advisories
4 tools4 read-only · 0 writeShowing 4 of 4 tools
- github_get_global_security_advisoryRead-only
Get a global security advisory.
- github_list_global_security_advisoriesRead-only
List global security advisories from GitHub.
- github_list_org_repository_security_advisoriesRead-only
List repository security advisories for a GitHub organization.
- github_list_repository_security_advisoriesRead-only
List repository security advisories for a GitHub repository.
Context
4 tools4 read-only · 0 writeShowing 4 of 4 tools
- github_get_meRead-only
Get details of the authenticated GitHub user. Use this when a request is about the user's own profile, or when information is missing to build other tool calls.
- github_get_team_membersRead-only
Get member usernames of a specific team in an organization. Limited to organizations accessible with current credentials.
- github_get_teamsRead-only
Get details of the teams the current user is a member of. Limited to organizations accessible with current credentials.
- github_ui_getRead-only
Fetch reference data for common issue/PR fields: labels, assignees, milestones, issue types, branches, issue fields, reviewers. Useful for discovering valid values before creating/updating an issue or PR.
Copilot
3 tools0 read-only · 3 writeShowing 3 of 3 tools
- github_assign_copilot_to_issueWrite
Assign Copilot to a specific issue in a GitHub repository. Outcome: a Pull Request created with source code changes to resolve the issue.
- github_assign_copilot_to_issue_with_intentWrite
Assign Copilot to a specific issue, with intent metadata (rationale, confidence, is_suggestion) attached. Prefer this over assign_copilot_to_issue when available.
- github_request_copilot_reviewWrite
Request a GitHub Copilot code review for a pull request.
Stargazers
3 tools1 read-only · 2 writeShowing 3 of 3 tools
- github_list_starred_repositoriesRead-only
List starred repositories for the authenticated user, or for a given username.
- github_star_repositoryWrite
Star a GitHub repository.
- github_unstar_repositoryWrite
Unstar a GitHub repository.
Projects
3 tools2 read-only · 1 writeShowing 3 of 3 tools
- github_projects_getRead-only
Get details about specific GitHub Projects v2 resources -- individual projects, project fields, project items, and project views by their unique IDs, selected via a method parameter.
- github_projects_listRead-only
List GitHub Projects v2 resources -- projects for a user/organization, or fields/items/views/status updates for a specific project, selected via a method parameter.
- github_projects_writeWrite
Create and manage GitHub Projects v2: create projects, add/update/delete items, bulk-update many items at once, manage views, create status updates, add iteration fields -- selected via a method parameter.
Code security
2 tools2 read-only · 0 writeShowing 2 of 2 tools
- github_get_code_scanning_alertRead-only
Get details of a specific code scanning alert in a GitHub repository.
- github_list_code_scanning_alertsRead-only
List code scanning alerts in a GitHub repository.
More tools
12 tools11 read-only · 1 writeShowing 10 of 10 tools
- github_get_code_quality_findingRead-only
Get details of a specific code quality finding in a GitHub repository.
- github_get_dependabot_alertRead-only
Get details of a specific dependabot alert in a GitHub repository.
- github_get_pull_requestRead-only
Get details of a specific GitHub pull request.
- github_get_repository_treeRead-only
Get the tree structure (files and directories) of a GitHub repository at a specific ref or SHA.
- github_get_secret_scanning_alertRead-only
Get details of a specific secret scanning alert in a GitHub repository.
- github_label_writeWrite
Perform write operations on repository labels (create/update/delete a label). To set labels on an issue, use issue_write instead.
- github_list_dependabot_alertsRead-only
List dependabot alerts in a GitHub repository.
- github_list_labelRead-only
List labels from a repository, ordered by issue count (descending) so the most-used labels are returned first.
- github_list_repositoriesRead-only
List repositories for the authenticated user or organization.
- github_list_secret_scanning_alertsRead-only
List secret scanning alerts in a GitHub repository.
+ 2 more more tools tools — see the full catalogue
Every tool name and description, machine-readable: /llms-full.txt
You decide what it can touch
The same model applies to every connector, and it defaults closed.
Your own credential
You supply your own GitHub key, scoped however you like on their side. It is encrypted with AES-256-GCM and never returned by any API response or tool call.
Writes off by default
A new connection switches on a read-oriented default set only. Every write tool must be enabled deliberately before any client can call it.
Roles enforced server-side
READ, WRITE and ADMIN gate tool invocation on the server, not just in the UI. A READ member's token is refused any write tool.
Connect GitHub in minutes
No infrastructure to run. Copy one URL and one token into your client.
- 1Create a free workspace and connect GitHub.
- 2Choose which tools to expose — writes stay off until you enable them.
- 3Copy your MCP endpoint URL and bearer token.
- 4Paste them into Claude, Cursor, or any MCP client.
{
"mcpServers": {
"serve-mcp": {
"url": "https://servemcp.com/api/mcp/your-workspace",
"transport": "http",
"headers": {
"Authorization": "Bearer smcp_..."
}
}
}
}Put GitHub in front of your assistant
Free plan, no card required. Connect in minutes.