GitHub Repo Browser
Read-only GitHub repository navigation for agents. Use it to browse accessible repositories, inspect repo structure, read files, fetch READMEs, search repositories or code, and download files or entire repo archives to file storage.
Actions
list_my_repos
List repositories the connected GitHub account can access.
Optional fields:
visibility:all,public, orprivateaffiliation: comma-separated GitHub affiliation filter such asowner,collaborator,organization_membersort:created,updated,pushed, orfull_namedirection:ascordescper_page: 1-100page: 1+
{"action":"list_my_repos","visibility":"private","per_page":20,"page":1}
list_org_repos
List repositories in an organization the connected account can access.
Required fields:
org
Optional fields:
type_filter:all,public,private,forks,sources, ormembersort,direction,per_page,page
{"action":"list_org_repos","org":"acme","type_filter":"private","per_page":25}
get_repo
Fetch repository metadata including default branch, permissions, visibility, and URLs.
Required fields:
ownerrepo
{"action":"get_repo","owner":"acme","repo":"platform"}
list_branches
List repository branches with pagination.
Required fields:
ownerrepo
Optional fields:
protected_onlyper_pagepage
{"action":"list_branches","owner":"acme","repo":"platform","protected_only":true}
list_commits
List commits for a repository. You can scope the list to a branch, tag, or commit ancestry using ref, and filter to commits from the last N hours using since_hours. Results come back newest first.
Required fields:
ownerrepo
Optional fields:
refpathsince_hoursper_pagepage
{"action":"list_commits","owner":"acme","repo":"platform","ref":"release/2026.03","since_hours":24,"per_page":20}
get_commit
Fetch a specific commit by SHA, including commit metadata, stats, and changed files.
Required fields:
ownerrepocommit_sha
{"action":"get_commit","owner":"acme","repo":"platform","commit_sha":"abc123def4567890abc123def4567890abc12345"}
list_directory
List the contents of a repository directory.
Required fields:
ownerrepo
Optional fields:
path: omit for repository rootref: branch, tag, or commit SHA
{"action":"list_directory","owner":"acme","repo":"platform","path":"src","ref":"main"}
get_file
Read a text file from a repository. Binary files and files larger than 1 MB are rejected.
Required fields:
ownerrepopath
Optional fields:
ref
{"action":"get_file","owner":"acme","repo":"platform","path":"src/app.py","ref":"main"}
get_readme
Fetch the repository README content and metadata.
Required fields:
ownerrepo
Optional fields:
ref
{"action":"get_readme","owner":"acme","repo":"platform"}
search_repositories
Search repositories visible to the connected account.
Required fields:
query
Optional fields:
sort:stars,forks,help-wanted-issues, orupdatedorder:ascordescper_pagepage
{"action":"search_repositories","query":"terraform language:hcl org:acme","sort":"updated","per_page":10}
search_code
Search code visible to the connected account. You can scope the search to a repository by providing owner and repo, or by including qualifiers directly in query.
Required fields:
query
Optional fields:
ownerreposort:indexedorder:ascordescper_pagepage
{"action":"search_code","query":"OpenAI apiKey path:src language:typescript","owner":"acme","repo":"platform"}
download_to_storage
Download a file from a GitHub repository and save it to file storage. Returns a file_id and signed_url for downstream tools to access the exact bytes. Files up to 100 MB are supported. Downloaded bytes are integrity-verified against GitHub's git SHA before storage.
Required fields:
ownerrepopath
Optional fields:
ref
{"action":"download_to_storage","owner":"acme","repo":"platform","path":"assets/logo.png","ref":"main"}
download_repo_to_storage
Download a repository archive as a .tar.gz file and save it to file storage. Returns a file_id and signed_url. Use ref to select a specific branch, tag, or commit SHA. Use path to optionally filter the archive to a subdirectory.
Required fields:
ownerrepo
Optional fields:
ref: branch, tag, or commit SHA (defaults to the repository's default branch)path: subdirectory to filter the archive to
Download an entire repository:
{"action":"download_repo_to_storage","owner":"acme","repo":"platform","ref":"main"}
Download only a subdirectory:
{"action":"download_repo_to_storage","owner":"acme","repo":"platform","ref":"v2.1.0","path":"service"}
Notes
- This tool is intentionally read-only. It does not support issue creation, pull request edits, pushes, or generic passthrough requests.
- All actions require a connected GitHub account via the existing
github_tokensoftware connection. - Pagination metadata includes
page,per_page,next_page,prev_page,has_next_page, andhas_prev_pagewhen applicable. list_commitsuses GitHub's commit listing endpoint and applies thesince_hoursfilter by converting it to a GitHubsincetimestamp.get_fileandget_readmereturn UTF-8 decoded text content for files up to 1 MB.download_to_storagedownloads raw bytes (any file type) up to 100 MB and verifies integrity via git SHA1 before uploading to file storage.download_repo_to_storagedownloads a full repository archive (or a filtered subdirectory) as a.tar.gzfile up to 100 MB and uploads it to file storage.







