GitHub MCP avatar

GitHub MCP

Pricing

from $0.01 / 1,000 results

Go to Apify Store
GitHub MCP

GitHub MCP

Search GitHub repositories, discover trending projects, and fetch README files. AI agents can research open-source projects, inspect documentation, and find popular repositories by language or topic.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

Jordan C

Jordan C

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

12 days ago

Last modified

Categories

Share

GitHub Repository Research MCP

Search public GitHub repositories, compare fast-growing projects, and retrieve repository README files directly from an MCP-compatible agent. This Apify Actor runs as a standby Streamable HTTP server and returns focused repository metadata instead of the full GitHub API response.

What you can do

  • Find open-source projects by keyword, topic, owner, language, or other GitHub repository-search qualifiers.
  • Build shortlists using stars, forks, primary language, topics, and repository URLs.
  • Discover recently created repositories ordered by stars, optionally filtered by language.
  • Pull raw README Markdown into research, dependency-evaluation, or documentation workflows.

The Actor reads public GitHub data only. It does not create issues, modify repositories, inspect private repositories, clone code, or authenticate to GitHub on your behalf.

Connect from an MCP client

Use the deployed Streamable HTTP endpoint:

https://reverberant-equality--mcp-github.apify.actor/mcp

Authenticate the request at the Apify edge with your Apify API token:

Authorization: Bearer $APIFY_TOKEN

Your client should also accept application/json and text/event-stream. MCP traffic is handled by POST /mcp; direct GET and DELETE requests to /mcp return HTTP 405.

Registered tools

search-github-repos

ArgumentRequiredBehavior
queryYesString passed to GitHub repository search. GitHub search qualifiers are supported.
maxResultsNoNumber; defaults to 20 and is clamped to 1100.

Returns JSON with GitHub's total_count and a repos array. Each repository contains full_name, description (string or null), stars, forks, language (string or null), url, and topics.

ArgumentRequiredBehavior
sinceNodaily, weekly, or monthly; defaults to daily.
languageNoLanguage string such as typescript, python, or rust.

Returns { since, language, repos }, using the same repository fields above. This is not GitHub's website Trending page. The implementation searches recently created repositories and sorts by stars, returning up to 25 results. weekly covers seven days; the current implementation treats both daily and monthly as 30-day creation windows.

get-readme

ArgumentRequiredBehavior
repoYesFull public repository name in owner/name form.

Returns the repository's raw README text as the MCP text content, without JSON wrapping or truncation.

JSON example

Tool arguments:

{
"query": "language:rust topic:cli",
"maxResults": 2
}

The MCP result contains one text item. Decoding that item's text produces this shape (values are illustrative):

{
"total_count": 42,
"repos": [
{
"full_name": "example-org/example-cli",
"description": "An example command-line project",
"stars": 120,
"forks": 14,
"language": "Rust",
"url": "https://github.com/example-org/example-cli",
"topics": ["cli", "rust"]
}
]
}

Pricing

Each tool invocation charges one tool-call event at $0.005 USD. The handler charges before contacting GitHub, so an upstream failure after the handler starts can still consume the event. Invalid MCP arguments rejected before handler execution are not a completed tool invocation. Apify platform usage may be charged separately under your Apify plan.

Upstream source, limits, and error behavior

Data comes from the public GitHub REST API. This Actor does not send a GitHub token. GitHub therefore associates requests with the Actor's outbound IP and currently documents a primary limit of 60 unauthenticated REST requests per hour plus a separate 10 unauthenticated search requests per minute limit. Capacity can be shared across requests leaving the same runtime infrastructure. GitHub may also apply secondary abuse limits.

Repository search returns only the first requested page; there is no follow-up pagination. GitHub search can report incomplete results, but this server does not expose the upstream incomplete_results flag. GitHub also limits search query length and operator count. Private or inaccessible repositories are not returned.

Tool-level upstream failures return MCP content with isError: true and a readable GitHub or network message. A missing repository or missing README produces Repository "owner/name" not found or has no README. Invalid argument types or enum values are MCP schema errors. Unexpected transport failures return a JSON-RPC internal-server error.

Privacy

Search terms and repository names are sent to GitHub and may appear in Actor logs. Responses are returned directly over MCP; this implementation does not write them to an Apify dataset or key-value store. Apify and GitHub still process request metadata according to their own policies. Do not put secrets, tokens, or confidential identifiers in queries.

Run locally

Node.js 20 or newer is required.

npm install
npm run start:dev # http://localhost:3000/mcp
npm test
npm run build
npm run start:prod
apify validate-schema

Set APIFY_CONTAINER_PORT to override port 3000 during local development.