Skip to main content
Glama
Akash1070
by Akash1070

πŸ” Repo Scout MCP Server

"The #1 rule for Vibe Coders and Software Engineers: Don't reinvent the wheel. Let AI scout existing GitHub projects before writing a single line of code!"

A high-performance, free local Model Context Protocol (MCP) server that empowers AI assistants (Google Antigravity, Claude Desktop, Cursor, Claude Code) to search GitHub for existing open-source projects, libraries, and frameworks before you start building from scratch.


πŸ‘€ Author & Credits

  • Author: Akash Kumar Jha

  • License: MIT License (Free & Open Source)


Related MCP server: GitBridge

πŸš€ Why Use Repo Scout MCP?

When vibe coding or building software, developers often spend hours writing code for features or complete applications that already exist as battle-tested, high-quality open-source projects.

Repo Scout MCP connects your AI coding assistant directly to GitHub's search & intelligence APIs:

  • πŸ’‘ Save Hundreds of Hours: Instantly discover existing solutions before starting a project.

  • πŸ†“ 100% Free & Local: No paid API subscriptions required. Runs locally via Node.js over stdio.

  • ⚑ High Performance: Raises GitHub rate limit from 60 to 5,000 requests/hour with a free token.

  • πŸ›‘οΈ Privacy & Security: Zero hardcoded keys or tracking. Each user supplies their own environment variables.


πŸ› οΈ Included Tools

Tool Name

Description

Example Usage

suggest_stack

Provide a plain-English description of what you want to build. It runs multi-angle GitHub searches (including awesome-lists) and returns a ranked shortlist of repos to reuse.

"I'm building a markdown note app with tags. Check if something exists."

search_repos

Keyword, topic, and language search across GitHub sorted by stars, forks, or recency.

"Find Node.js rate-limiting middleware sorted by stars."

get_repo_details

Pulls a repository's full README and top-level file structure so the AI can evaluate code fit.

"Check details for facebook/react."


πŸ“¦ Quick Start & Installation

Step 1: Clone the Repository

git clone https://github.com/YOUR_USERNAME/repo-scout-mcp.git
cd repo-scout-mcp
npm install

Step 2: Get a Free GitHub Access Token (2 Minutes)

  1. Go to GitHub Settings -> Tokens.

  2. Click Generate new token $\rightarrow$ Generate new token (classic).

  3. Name it repo-scout-mcp.

  4. Leave all scope checkboxes unchecked (public data search requires no permissions).

  5. Click Generate token and copy it (looks like ghp_xxxxxxxxxxxx).


πŸ”Œ Connecting to your AI Assistant

1. Google Antigravity

  1. Open Antigravity $\rightarrow$ click the ... menu at top-right of agent panel.

  2. Go to MCP Servers $\rightarrow$ Manage MCP Servers $\rightarrow$ View raw config (mcp_config.json).

  3. Add the following entry inside "mcpServers":

{
  "mcpServers": {
    "repo-scout": {
      "command": "node",
      "args": ["G:\\CODE\\repo-scout-mcp\\index.js"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_personal_access_token_here"
      }
    }
  }
}

(Note: Replace G:\\CODE\\repo-scout-mcp\\index.js with your actual full file path, using double backslashes on Windows).

  1. Save mcp_config.json and refresh MCP servers (or type /mcp in chat).


2. Claude Desktop

Add to your claude_desktop_config.json:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "repo-scout": {
      "command": "node",
      "args": ["/absolute/path/to/repo-scout-mcp/index.js"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_personal_access_token_here"
      }
    }
  }
}

3. Claude Code CLI

Run:

claude mcp add repo-scout node /absolute/path/to/repo-scout-mcp/index.js -e GITHUB_TOKEN=ghp_your_token_here

πŸ’¬ Example Prompts to Try

Once connected, simply prompt your AI assistant:

  • Before starting a project:

    "I'm planning to build a self-hosted dashboard for monitoring Docker containers. Use repo-scout to check if a great open-source project already exists."

  • Searching for libraries:

    "Use repo-scout to search for high-star TypeScript financial technical indicator packages."

  • Evaluating a repository:

    "Use repo-scout get_repo_details on shadcn/ui to summarize its structure."


πŸ“„ License

Created by Akash Kumar Jha. Released under the MIT License.

Available Tools

3 tools
get_repo_detailsA

Fetch details for one specific repo (owner/name), including README excerpt and top-level file list, so you can judge whether it fits your use case.

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesIn the form 'owner/repo', e.g. 'facebook/react'

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description bears the full burden. It discloses that it returns a README excerpt and top-level file list, which is informative. However, it does not mention any side effects (though likely read-only), error behavior, or other edge cases, leaving some ambiguity for a tool with zero annotation support.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that efficiently states the action, parameters, output, and purpose. Every clause adds value, and there is no redundancy with the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter fetch tool without an output schema, the description sufficiently communicates what it does and why it would be used. It omits some specifics like return format details, but given the low complexity and clear intent, these are not critical gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single parameter 'repo', with a clear example. The description's 'owner/name' phrasing overlaps with the schema and adds no extra syntax or formatting details, so it does not go beyond the schema's documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Fetch details') and resource ('one specific repo (owner/name)'), and clarifies it includes README excerpt and top-level file list, making the tool's purpose unmistakable. It differentiates from siblings like search_repos by emphasizing 'one specific repo' rather than searching across many.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool: when you have a specific repo in mind and want to assess it for a use case. It does not explicitly name alternatives or exclusions, but the implicitness is strong given the single-repo focus versus search_repos.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_reposB

Search public GitHub repositories by keyword/topic. Returns stars, last-updated, license, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoSort order, default 'stars'
limitNoMax results (default 8, max 20)
queryYesKeywords or GitHub search syntax
languageNoOptional: filter by programming language
min_starsNoOptional minimum star count

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It states the search is limited to public repositories and lists the return fields, which is useful. However, it does not explicitly state that this is a read-only operation, nor does it mention rate limits, pagination, or any side effects. The 'public' qualifier and output hints provide some transparency, but the description is not fully explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, informative sentence that front-loads the core purpose and mentions the return fields. There is no wasted wording, and it is appropriately sized for a search tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 100% schema coverage and the description's mention of output fields, the tool is adequately documented for basic use. However, it lacks any mention of authentication needs, rate limits, or guidance on combining with siblings. The absence of an output schema means the description should clarify expected return structure more, but it does at least hint at the data returned.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all five parameters. The description adds minimal meaning beyond the schemaβ€”only noting 'keyword/topic' for query, which is redundant with the schema's description. It does not explain parameter interactions or advanced syntax, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches public GitHub repositories by keyword/topic, which is a specific verb and resource. It also mentions what is returned (stars, last-updated, license). However, it does not explicitly differentiate from sibling tools like get_repo_details or suggest_stack, but their purposes are obviously distinct enough that a capable agent could infer the difference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus its siblings. There is no mention of scenarios where search_repos is appropriate or where get_repo_details or suggest_stack should be used instead. The agent is left to infer usage context from the name and purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suggest_stackA

Given a plain-language description of what you're about to build, runs several targeted GitHub searches (including curated/awesome-list style queries) and returns a ranked shortlist of existing projects/libraries you could reuse instead of building from scratch.

ParametersJSON Schema
NameRequiredDescriptionDefault
languageNoOptional: preferred programming language
descriptionYesPlain-language description of the project/feature you're planning to build
limit_per_queryNoResults per sub-query (default 4)

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that it runs 'several targeted GitHub searches' (including curated/awesome-list queries) and returns a ranked shortlist, which is the core behavior. However, it does not state that it is a read-only operation, nor does it mention potential rate limits, authentication requirements, or that multiple API calls may be made. For a search tool this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly written sentence with no filler. It front-loads the input requirement ('Given a plain-language description...') and quickly explains the action and output. Every word contributes to understanding the tool's purpose, making it an exemplar of conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should explain the return format. It states that it returns 'a ranked shortlist of existing projects/libraries,' which gives a general idea but does not specify the structure (e.g., whether it returns names, URLs, descriptions, or full repo objects). It also does not mention error conditions or rate limits. Given the relative simplicity of the tool and the presence of sibling tools, this is adequate but leaves room for ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage, so baseline is 3. The description adds context for the 'description' parameter (plain-language description of what you're about to build) which is also in the schema, so it is largely redundant. It does not add any extra meaning for 'language' or 'limit_per_query' beyond their schema descriptions. The description provides no additional parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb (runs GitHub searches) and resource (existing projects/libraries to reuse), and it distinguishes itself from siblings: search_repos for general repo searching and get_repo_details for repo details. The tool's role as a 'suggest' tool that returns a ranked shortlist of reusable libraries is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool: when you have a plain-language description of what you're building and want to find existing libraries to reuse. However, it does not explicitly mention alternatives (e.g., 'use search_repos for a direct repo search') or provide when-not-to-use guidance. This makes it clear but not fully explicit in routing the agent to the best sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 3 tool updatesv1.0.0
    • First observedget_repo_details
    • First observedsearch_repos
    • First observedsuggest_stack

TDQS

A4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: retrieving details for a specific known repo, searching by keywords, and generating a shortlist from a natural-language description. No overlap in functionality or target resource.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case: get_repo_details, search_repos, suggest_stack. This is a predictable and uniform convention.

Tool Count5/5

With only 3 tools, the server is tightly scoped to the 'repo scout' purpose: discovery (search), semantic suggestion (suggest), and evaluation (get details). Each tool earns its place, and the count is within the ideal 3-15 range.

Completeness5/5

The tool surface covers the full workflow for scouting repositories: finding candidates (search_repos, suggest_stack) and inspecting them (get_repo_details). No obvious gaps or dead ends for the stated purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to analyze GitHub repository structures and read file contents with features like directory traversal, file type analysis, syntax highlighting, and code pattern detection. Supports both public and private repositories through GitHub API integration.
    17
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to prospect across GitHub, PyPI, and npm, searching repositories, packages, and code patterns with read-only tools.
    7
    3
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to discover and interact with GitHub repositories through standardized MCP tools, allowing exploration and retrieval of project information without direct API calls.
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Akash1070/repo-scout-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server