• Developer Tools

  • OAuth

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

Available Tools

66 tools available in this integration

Github.AddAssigneeToPullRequest

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

Github.AssignPullRequestUser

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

Github.CheckMergeStatus

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

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.CreateReview

Submit a review for a pull request.

Github.CreateReviewComment

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

Github.DownloadFile

Get the contents of a file in a repository.

Github.GetFileContents

Get the contents of a file in a repository.

Github.GetIssue

Get a specific issue from a GitHub repository.

Github.GetMyOpenWork

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

Github.GetMyRecentActivity

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

Github.GetMyReviewWorkload

Get pull requests awaiting review by the authenticated user.

Github.GetProjectItem

Search for a specific item in a Projects V2 project.

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.ListOrganizationRepositories

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.ListPullRequestChangedFiles

List files changed in a pull request, sorted by file path.

Github.ListPullRequestCommits

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

Github.ListPullRequestConversationComments

List pull request conversation comments, from oldest to newest.

Github.ListPullRequestReviewComments

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

Github.ListPullRequestReviews

List reviews on a pull request, from oldest to newest.

Github.ListPullRequests

List pull requests in a GitHub repository.

Github.ListRepositoryActivities

List repository activities.

Github.ListRepositoryCollaborators

List collaborators for a repository.

Github.ListRepositoryConversationComments

List conversation comments on every issue and pull request in a GitHub repository.

Github.ListRepositoryLabels

List all labels defined in a repository.

Github.ListRepositoryReviewComments

List review comments in a GitHub repository.

Github.ListReviewCommentsInARepository

List review comments in a GitHub repository.

Github.ListReviewCommentsOnPullRequest

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

Github.ListReviews

List reviews on a pull request, from oldest to newest.

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.QueryIssues

Search issues, never pull requests, in GitHub search syntax across the repositories this

Github.QueryPullRequests

Search pull requests, never issues, in GitHub search syntax across the repositories this

Github.ReplyToReviewComment

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

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.SearchMyRepositories

Search repositories accessible to the authenticated user with fuzzy matching.

Github.SearchProjectItem

Search for a specific item in a Projects V2 project.

Github.SetRepositoryStarStatus

Star or un-star a GitHub repository.

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.UpdateIssueLabels

Add or remove labels from an issue or pull request.

Github.UpdatePullRequest

Update a pull request in a GitHub repository.

Github.UpdateReviewers

Manage reviewers for a pull request.

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 the open pull requests awaiting me, summarize blockers, and assign the right reviewers." Arcade picks the right GitHub actions without guessing repository, pull request, or user identifiers first.

Up to 100x fewer tokens

GitHub searches and lists return focused repository, issue, pull request, and file metadata, so the agent can identify what matters before loading full files, comments, commits, or review threads into the model.

Complete the workflow end to end

Search a repository, inspect changed files, read commits and review comments, assign reviewers, and merge an approved pull request 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.
  • Hide Github.AddAssigneeToPullRequest from agents outside your repository-maintainer role, so automation cannot redirect pull-request ownership.
  • Restrict Github.CreateReview to agents acting for users your IDP marks as reviewers, so an agent cannot submit a review under an unapproved identity.
  • Show Github.UpdateReviewers only to agents assigned to your repository-approval team, so automation cannot change who must sign off on a pull request.
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.
  • Block Github.ReplyToReviewComment when the reply contains credentials, access tokens, or customer data, so an agent cannot publish secrets in a code review.
  • Require human approval before Github.SetRepositoryStarStatus changes a repository's public star status, so an agent cannot create an external signal on your behalf.
  • Refuse Github.UpdateIssueLabels when it adds or removes labels reserved for security incidents or release automation, so an agent cannot alter workflow state without authorization.
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.
  • Redact credentials, private keys, and connection strings from Github.DownloadFile results before the model sees file contents.
  • Strip customer names, incident details, and private issue descriptions from Github.GetMyOpenWork results, so the model receives work status without sensitive case data.
  • Deny Github.ListPullRequestReviewComments results for repositories outside the agent's authorized project scope, so review discussions from private codebases cannot reach the model.

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 their GitHub account, the agent can perform permitted actions such as searching code, reviewing pull requests, managing issues, and updating repository files.

GitHub's own MCP server is a first-party endpoint for accessing GitHub tools. Arcade adds an actions runtime with per-user OAuth, agent-optimized tools, approval workflows, redaction, and scope controls, so teams can use GitHub from different agents and frameworks with consistent governance.

Arcade agents can search repositories, code, issues, and pull requests; inspect files, commits, reviews, comments, and changed files; manage issues, labels, reviewers, and branches; create or update files; open pull requests; submit reviews; resolve review threads; and merge pull requests. The integration also includes access to 818 raw GitHub API operations for coverage beyond these common workflows.

Arcade requests the GitHub OAuth permissions needed by the actions you enable. Read-only repository and pull request workflows need read access, while editing files, creating issues or pull requests, managing reviewers, and merging require the corresponding write permissions; organization repositories and Projects may require additional organization or project access. Grant the narrowest permissions that support your workflow.

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

Yes. Contextual Access policies can require human approval before consequential GitHub actions such as merging a pull request, changing repository files, creating issues, or modifying labels. The call proceeds only after the policy's conditions have been satisfied.

Arcade proxies GitHub API calls and does not persist your repository content or other GitHub data as part of normal tool execution. OAuth credentials are brokered and stored encrypted at rest, and the model never receives raw credentials; policies can also redact fields from GitHub responses.

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

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

GitHub API rate limits and search quotas still apply to calls made through Arcade, including limits that vary by authentication and endpoint. Arcade does not remove GitHub's repository, organization, or search quotas, so high-volume agents should handle pagination, throttling, and rate-limit errors.

Ready to actually ship your agent?

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