Smithery's MCP Proxy and managed identity shut down on October 31. See what's changing

SmitherySign up for Arcade

GitHub

Arcade toolkit · docs.arcade.dev

Arcade's GitHub toolkit connects LLMs to the GitHub API, enabling agents to manage repositories, issues, pull requests, projects, code search, and user activity on behalf of authenticated users.

Capabilities

  • Repository & file management: Create branches, read/write/update files with explicit create-vs-overwrite modes, list org repos, fetch repo details, and track repository activity history.
  • Pull request lifecycle: Open, update, merge, and inspect PRs; check merge readiness; list commits; assign users and manage reviewers with fuzzy matching; submit, reply to, and resolve review comments and threads.
  • Issues & labels: Create, update, and fetch issues (including project assignment); add comments; add/remove labels with typo-tolerant fuzzy matching; list repository labels.
  • GitHub Projects (V2): List projects across org/user scopes, enumerate project fields and items, and search for specific project items.
  • Code & user search: Full-text code search with inline match context, fuzzy repo search, and authenticated-user activity summaries (open items, recent PRs/reviews/commits, review workload).
  • Social & metadata: Star/un-star repos, count and list stargazers, and retrieve the authenticated user's profile, organizations, and teams.

Tools43

  • 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. The explicit mode parameter reduces accidental data loss: the default CREATE mode refuses to touch existing files, while OVERWRITE must be chosen intentionally.

  • Github_CreateIssue

    Create an issue in a GitHub repository. Optionally add the created issue to a project by specifying add_to_project_number and add_to_project_scope.

  • 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. Optionally resolve the conversation thread after replying by setting resolve_thread=True and providing the thread_id (GraphQL Node ID).

  • Github_CreateReviewComment

    Create a review comment for a pull request in a GitHub repository. IMPORTANT: Line numbers must be part of the diff (changed lines only). GitHub's API requires line numbers that exist in the pull request diff, not just any line in the file. If the line wasn't changed in the PR, the comment will fail with 422 error. Line comments require start_line and end_line. When subject_type is omitted, providing either line parameter selects a line comment; otherwise the comment applies to the whole file. File comments cannot include line-specific parameters. If the commit_id is not provided, the latest commit SHA from the PR will be used. TIP: Use subject_type='file' to comment on the entire file if unsure about line positions.

  • Github_GetFileContents

    Get the contents of a file in a repository. Returns the decoded content (if text) along with metadata like SHA, size, and line count. For large files, use start_line and end_line to retrieve specific line ranges.

  • 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. Retrieves detailed information about a repository using the GitHub API.

  • Github_GetReviewWorkload

    Get pull requests awaiting review by the authenticated user. Returns PRs where user is requested as reviewer and PRs user has recently reviewed.

  • Github_GetUserOpenItems

    Get user's currently open pull requests and issues across all repositories. Returns open PRs and issues authored by the authenticated user.

  • Github_GetUserRecentActivity

    Get the authenticated user's recent pull requests, reviews, issues, and commits. Returns PRs they authored, merged PRs, PRs they reviewed, issues they opened, and commits pushed

  • 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. Returns all custom fields configured for the project, including field types and available options for select/iteration fields.

  • 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. By default returns newest pull requests first (direction=DESC). Organization-wide search returns GitHub's reduced issue-search summary. It preserves the merged timestamp but does not include repository-list details such as head/base metadata or detailed mergeability and reviewer data.

  • Github_ListRepositoryActivities

    List repository activities. Retrieves a detailed history of changes to a repository, such as pushes, merges, force pushes, and branch changes, and associates these changes with commits and users.

  • Github_ListRepositoryCollaborators

    List collaborators for a repository. Returns users who have access to the repository and can be requested as reviewers for pull requests. Useful for discovering who can review your PR. Detail levels: - basic: Only explicit collaborators (fast, minimal API calls) - include_org_members: Add all org members (default, moderate API calls) - full_profiles: Add org members + enrich with names/emails (slow, many API calls)

  • 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 exposes at most 100 threads and 100 comments per thread through the GraphQL query used here. When that ceiling may have omitted data, the response is marked truncated and does not claim authoritative totals.

  • Github_ListStargazers

    List the stargazers for a GitHub repository. GitHub restricts access to individual stargazer listings to repository admins and collaborators. The aggregate star count remains public. Returns stargazers in chronological order (oldest first).

  • Github_ManageLabels

    Add or remove labels from an issue or pull request. Supports fuzzy matching for typo tolerance. Both issues and pull requests support labels through the same API. You can add and remove labels in a single operation.

  • 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. Returns matching files with the matched fragments inlined so the caller can read each match in context without a follow-up file fetch.

  • 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). Set mode=FileUpdateMode.APPEND to add new content to the end of the file.

  • Github_UpdateIssue

    Update an issue in a GitHub repository. Parameters that are not provided (None) will not be updated or cleared. Updates apply to the issue in the repository. If the issue is in a project, the project item will automatically reflect these changes.

  • Github_UpdatePullRequest

    Update a pull request in a GitHub repository.

  • Github_WhoAmI

    Get information about the authenticated GitHub user. Returns profile, organizations, and teams.