Better Fetch

GitHub Scraper

Extract public GitHub users, repositories, pull requests, activity, followers, following, contributions, repository details, search, trending repositories, and trending developers as normalized JSON.

Workspace

Configure

Inputs stay here while results become exportable artifacts.

Start from an example

GitHub operation to run. User-scoped modes use username_or_url; repo uses repo_or_url.

Repository search sort field.

Repository search sort direction.

GitHub repository search query. Required for search mode.

GitHub Trending period for trending mode.

Optional GitHub Trending language filter, such as typescript, python, go, or rust.

Maximum records to return for list modes.

Owner/repo slug or GitHub repository URL. Required for repo mode.

GitHub username or profile URL. Required for profile, repositories, pull_requests, activity, followers, following, and contributions modes.

Sign in and run
~1 base credit/run10 runs/minute

Results

Preview, inspect, copy, or export the complete output.

Your result will become an artifact

Run the tool to inspect structured rows, raw JSON, execution details, and downloadable JSON, CSV, and Markdown files.

modecountitemssource_url

Overview

GitHub Scraper gives agents a structured view of public open-source activity without requiring a GitHub token. Eleven modes cover user profiles, owned repositories, public pull requests, activity events, social graphs, contribution summaries, repository details, repository search, and both GitHub Trending surfaces.

Last validated: Jul 15, 2026

Input

mode"repo" | "profile" | "repositories" | "pull_requests" | "activity" | "followers" | "following" | "contributions" | "search" | "trending" | "trending_developers"default: "repo"

GitHub operation to run. User-scoped modes use username_or_url; repo uses repo_or_url.

sort"stars" | "forks" | "updated"default: "stars"

Repository search sort field.

order"desc" | "asc"default: "desc"

Repository search sort direction.

querystring

GitHub repository search query. Required for search mode.

since"daily" | "weekly" | "monthly"default: "daily"

GitHub Trending period for trending mode.

languagestring

Optional GitHub Trending language filter, such as typescript, python, go, or rust.

max_resultsintegerdefault: 10

Maximum records to return for list modes.

repo_or_urlstring

Owner/repo slug or GitHub repository URL. Required for repo mode.

username_or_urlstring

GitHub username or profile URL. Required for profile, repositories, pull_requests, activity, followers, following, and contributions modes.

Output

modestringrequired

Extraction mode used

countintegerrequired

Number of returned records

itemsobject[]required

Public GitHub repository, profile, search, or trending records

source_urlstringrequired

Fetched GitHub API or page URL

Examples

react-repo

{
  "mode": "repo",
  "repo_or_url": "facebook/react"
}

openai-profile

{
  "mode": "profile",
  "username_or_url": "openai"
}

openai-repositories

{
  "mode": "repositories",
  "max_results": 3,
  "username_or_url": "sindresorhus"
}

openai-pull-requests

{
  "mode": "pull_requests",
  "max_results": 3,
  "username_or_url": "sindresorhus"
}

openai-activity

{
  "mode": "activity",
  "max_results": 3,
  "username_or_url": "sindresorhus"
}

openai-followers

{
  "mode": "followers",
  "max_results": 3,
  "username_or_url": "sindresorhus"
}

openai-following

{
  "mode": "following",
  "max_results": 3,
  "username_or_url": "sindresorhus"
}

openai-contributions

{
  "mode": "contributions",
  "username_or_url": "sindresorhus"
}

trending-repositories

{
  "mode": "trending",
  "since": "daily",
  "max_results": 3
}

trending-developers

{
  "mode": "trending_developers",
  "since": "daily",
  "max_results": 3
}

Use cases

Open-source momentum checks

Fetch stars, forks, languages, topics, licenses, and update dates for a repository before an agent compares project health or adoption.

Developer and organization research

Read public profile fields such as bio, company, location, follower count, website, and public repo count for sourcing or partner research.

Trend discovery

Pull GitHub Trending repositories by language and period or search repositories by keyword, sorted by stars, forks, or update date.

FAQ

Does GitHub Scraper need a GitHub token?

No. Version 0.1 uses public GitHub endpoints and public pages through Better Fetch. It does not access private repositories or authenticated account data.

Can it fetch pull requests and public activity?

Yes. Pull-request mode searches public pull requests authored by a user, while activity mode returns their recent public GitHub events. Separate first-party tools cover repository issues and releases.

Why are results limited?

The unauthenticated GitHub API is rate-limited, and GitHub Trending has a bounded page size. The tool keeps each run small and predictable so it remains reliable for agent workflows.

Use it anywhere

MCP (Claude, ChatGPT, Codex)

# After connecting https://betterfetch.co/api/mcp, ask your AI to:
1. Call search_tools for "GitHub Scraper"
2. Call run_tool with:
   name: "github_scraper"
   input: {"mode":"repo","repo_or_url":"facebook/react"}

REST

curl -sS -X POST "https://betterfetch.co/api/tools/github_scraper/run" \
  -H "Authorization: Bearer bf_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"input": {"mode":"repo","repo_or_url":"facebook/react"}}'

Run locally

git clone https://github.com/better-fetch/tools/tree/main/tools/github-scraper && cd github-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"mode":"repo","repo_or_url":"facebook/react"}'