Skip to main content
Glama
aserper

RTFD (Read The F*****g Docs)

by aserper

github_repo_search

Find GitHub repositories by keyword or topic to locate projects, libraries, or frameworks. Returns repository details like names, descriptions, and URLs for discovery.

Instructions

Search for GitHub repositories by keyword or topic. USE THIS WHEN: You need to find repositories for a library, framework, or topic. BEST FOR: Discovering which repository contains a specific project. Returns repository names, descriptions, stars, and URLs - but NOT the code itself. To explore code after finding a repo, use: - get_repo_tree() to see all files - list_repo_contents() to browse directories - get_file_content() to read specific files Args: query: Search keywords (e.g., "machine learning", "web framework") limit: Maximum number of results (default 5) language: Filter by programming language (default "Python") Example: github_repo_search("requests") → Finds psf/requests repository

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYes
limitNo
languageNoPython

Implementation Reference

  • Main handler function for the github_repo_search tool. Searches GitHub repositories using the _search_repos helper and returns serialized result.
    async def github_repo_search( query: str, limit: int = 5, language: str | None = "Python" ) -> CallToolResult: """ Search for GitHub repositories by keyword or topic. USE THIS WHEN: You need to find repositories for a library, framework, or topic. BEST FOR: Discovering which repository contains a specific project. Returns repository names, descriptions, stars, and URLs - but NOT the code itself. To explore code after finding a repo, use: - get_repo_tree() to see all files - list_repo_contents() to browse directories - get_file_content() to read specific files Args: query: Search keywords (e.g., "machine learning", "web framework") limit: Maximum number of results (default 5) language: Filter by programming language (default "Python") Example: github_repo_search("requests") → Finds psf/requests repository """ result = await self._search_repos(query, limit=limit, language=language) return serialize_response_with_meta(result)
  • Helper function that performs the actual GitHub repository search API call and formats results.
    async def _search_repos( self, query: str, limit: int = 5, language: str | None = "Python" ) -> list[dict[str, Any]]: """Query GitHub's repository search API.""" headers = self._get_headers() params = {"q": query, "per_page": str(limit)} if language: params["q"] = f"{query} language:{language}" async with await self._http_client() as client: resp = await client.get( "https://api.github.com/search/repositories", params=params, headers=headers, ) resp.raise_for_status() payload = resp.json() repos: list[dict[str, Any]] = [] for item in payload.get("items", []): repos.append( { "name": item.get("full_name"), "description": item.get("description") or "", "stars": item.get("stargazers_count", 0), "url": item.get("html_url"), "default_branch": item.get("default_branch"), } ) if len(repos) >= limit: break return repos
  • Registration of the github_repo_search tool in the tools dictionary returned by get_tools().
    tools = { "github_repo_search": github_repo_search, "github_code_search": github_code_search, "list_github_packages": list_github_packages, "get_package_versions": get_package_versions, }
  • Docstring providing input schema, usage instructions, and examples for the tool.
    """ Search for GitHub repositories by keyword or topic. USE THIS WHEN: You need to find repositories for a library, framework, or topic. BEST FOR: Discovering which repository contains a specific project. Returns repository names, descriptions, stars, and URLs - but NOT the code itself. To explore code after finding a repo, use: - get_repo_tree() to see all files - list_repo_contents() to browse directories - get_file_content() to read specific files Args: query: Search keywords (e.g., "machine learning", "web framework") limit: Maximum number of results (default 5) language: Filter by programming language (default "Python") Example: github_repo_search("requests") → Finds psf/requests repository """
  • Tool name listed in provider metadata for github_repo_search.
    tool_names = ["github_repo_search", "github_code_search"]

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/aserper/RTFD'

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