Back to Tools
Developer Tools OAuth
github logo

GitHub MCP Tools for AI Agents

Let an agent search code, inspect issues and pull requests, update files, submit reviews, and merge changes in GitHub.

Available Tools

43 tools available in this integration

Github.AssignPullRequestUser

Assign a user to a pull request with intelligent search and fuzzy matching.

Github.CheckPullRequestMergeStatus

Check if a pull request is ready to merge without attempting the merge.

Github.CountStargazers

Count the number of stargazers (stars) for a GitHub repository.

Github.CreateBranch

Create a new branch in a repository.

Github.CreateFile

Create a new file or overwrite an existing file in a repository.

Github.CreateIssue

Create an issue in a GitHub repository.

Github.CreateIssueComment

Create a comment on an issue in a GitHub repository.

Github.CreatePullRequest

Create a pull request in a GitHub repository.

Github.CreateReplyForReviewComment

Create a reply to a review comment for a pull request.

Github.CreateReviewComment

Create a review comment for a pull request in a GitHub repository.

Github.GetFileContents

Get the contents of a file in a repository.

Github.GetIssue

Get a specific issue from a GitHub repository.

Github.GetPullRequest

Get details of a pull request in a GitHub repository.

Github.GetRepository

Get a repository.

Github.GetReviewWorkload

Get pull requests awaiting review by the authenticated user.

Github.GetUserOpenItems

Get user's currently open pull requests and issues across all repositories.

Github.GetUserRecentActivity

Get the authenticated user's recent pull requests, reviews, issues, and commits.

Github.ListIssues

List issues in a GitHub repository.

Github.ListOrgRepositories

List repositories for the specified organization.

Github.ListProjectFields

List fields for a Projects V2 project.

Github.ListProjectItems

List items for a Projects V2 project with optional filtering.

Github.ListProjects

List Projects V2 across organization or user scopes.

Github.ListPullRequestCommits

List commits (from oldest to newest) on a pull request in a GitHub repository.

Github.ListPullRequests

List pull requests in a GitHub repository.

Github.ListRepositoryActivities

List repository activities.

Github.ListRepositoryCollaborators

List collaborators for a repository.

Github.ListRepositoryLabels

List all labels defined in a repository.

Github.ListReviewCommentsInARepository

List review comments in a GitHub repository.

Github.ListReviewCommentsOnPullRequest

List review comments on a pull request in a GitHub repository.

Github.ListStargazers

List the stargazers for a GitHub repository.

Github.ManageLabels

Add or remove labels from an issue or pull request.

Github.ManagePullRequestReviewers

Manage reviewers for a pull request.

Github.MergePullRequest

Merge a pull request in a GitHub repository.

Github.ResolveReviewThread

Resolve or unresolve a pull request review conversation thread.

Github.SearchCode

Search code across the authorized GitHub scope.

Github.SearchMyRepos

Search repositories accessible to the authenticated user with fuzzy matching.

Github.SearchProjectItem

Search for a specific item in a Projects V2 project.

Github.SetStarred

Star or un-star a GitHub repository.

Github.SubmitPullRequestReview

Submit a review for a pull request.

Github.UpdateFileLines

Replace a block of lines within a file (1-indexed, inclusive).

Github.UpdateIssue

Update an issue in a GitHub repository.

Github.UpdatePullRequest

Update a pull request in a GitHub repository.

Github.WhoAmI

Get information about the authenticated GitHub user.

Working directly against the raw API? 818 more tools in the GitHub API server →

Why agent-optimized tools matter

Built for intent, not API schemas

Ask the agent to "review open pull requests, summarize blockers, and assign the right reviewers." Arcade helps it use GitHub without making it discover repository, pull request, or user identifiers first.

Up to 100x fewer tokens

GitHub list and search results return lightweight metadata first and load file contents, commits, or comments only when needed. The agent avoids pulling entire repositories and long review histories into the model.

Complete the workflow end to end

Find the pull request, inspect its files and comments, submit a review, assign follow-up, and merge it through one toolkit designed around the complete code-review task.

Make actions predictable and controlled

Arcade tools return structured results and useful errors across users and runs. Teams can apply scope restrictions, redaction, and approval policies so agents follow the same controls every time.

Securing GitHub

The more capabilities agents get, the more useful they are. However, more capabilities bring more risks of undesired effects such as data loss and exfiltration.

This is why Arcade provides you with contextual rules that dictate how and when a tool is allowed to run. Arcade’s contextual access lets you govern tool visibility and behavior at every stage of execution and control who can see a tool, what inputs are allowed, and what comes back.

Learn about Contextual Access Policies

For GitHub, you can implement some of these policies:

Access when tools are listed for a user
  • Hide Github.MergePullRequest from agents unless the roles your IDP marks as release managers are active, so an agent cannot merge unapproved code.
  • Restrict Github.CreateFile to agents operating under your repository-maintainer role, so unreviewed automation cannot add or overwrite source files.
  • Show Github.ManagePullRequestReviewers only to agents assigned to your engineering leads, so an agent cannot add, remove, or redirect required reviewers.
Pre-execution before each tool call
  • Require human approval before Github.UpdateFileLines runs on protected branches, so an agent cannot alter production code without review.
  • Block Github.CreateIssueComment when the comment contains credentials, access tokens, or customer data, so an agent cannot publish secrets in your issue tracker.
  • Require human approval before Github.SubmitPullRequestReview submits an approval or requests changes, so an agent cannot determine merge readiness on behalf of a reviewer.
Post-execution after the tool returns
  • Redact Github.GetFileContents results for files matching your secrets, credentials, or environment-variable patterns before the model sees their contents.
  • Strip email addresses and other private profile fields from Github.ListRepositoryCollaborators results, so the model receives collaborator names and permissions without personal contact data.
  • Redact private repository names, issue bodies, and pull request descriptions from Github.GetUserRecentActivity results unless the agent's session is authorized for those repositories.

How to use GitHub with your agent

Connect GitHub to your MCP client with per-user OAuth, then follow the setup walkthrough from authorization to your first agent call.

Your questions, answered

A GitHub MCP server exposes GitHub capabilities as structured tools that an AI agent can call through the Model Context Protocol. After a user authorizes GitHub, the agent can perform permitted actions such as searching code, reviewing pull requests, updating issues, and creating branches.

GitHub's own MCP server is a first-party endpoint for GitHub tools. Arcade adds per-user OAuth, agent-optimized tools, approval workflows, response redaction, scope controls, and access through the MCP clients and tool APIs your application already uses.

Arcade agents can search code and repositories, read files, issues, pull requests, commits, comments, projects, and activity, then create branches, files, issues, comments, pull requests, reviews, and replies. They can also assign reviewers, manage labels, resolve review threads, update issues and pull requests, merge pull requests, and star repositories.

Arcade requests the GitHub OAuth permissions needed by the actions you enable. Read access, write access, organization membership, and Projects access may be needed for different workflows, so grant only the narrowest permissions that support your agent.

Yes. Each user authorizes their own GitHub account through OAuth. GitHub actions run under that user's authorization, so the agent can access only the repositories, organizations, and permissions that user has approved.

Yes. Contextual Access policies can require human approval before consequential GitHub actions such as merging a pull request, creating or overwriting a file, changing labels, or updating repository work. The call proceeds only after the policy's conditions are satisfied.

Arcade proxies GitHub API calls and does not persist your repository content as part of normal tool execution. GitHub credentials are brokered and stored encrypted at rest, and the model never receives raw credentials.

Any framework or client that can connect to Arcade's MCP gateway or tool APIs works, including LangChain, OpenAI Agents, CrewAI, Claude Desktop, Claude Code, Cursor, Visual Studio Code, Microsoft Copilot Studio, and GitHub Copilot.

Arcade refreshes access while the user's GitHub authorization remains valid. If it is revoked, rotated, or can no longer be refreshed, GitHub actions stop until the user reconnects the account.

GitHub's authenticated API rate limits, endpoint-specific quotas, and secondary abuse protections apply to calls made through Arcade. The effective limit depends on the user's authorization, endpoint, and GitHub account or organization, rather than on one fixed Arcade-wide quota.

Ready to actually ship your agent?

Connect your agent to GitHub with managed OAuth, agent-optimized tools and approval controls for consequential actions.