Skip to main content
Glama
github-fetcher

github-fetcher

by KurvCygnus

GitHub repository comparison

github_compare_repos
Read-onlyIdempotent

Compare up to 20 GitHub repositories in one call for stars, open issue and PR counts, closed-window counts, and latest releases, using throttled batch queries for cross-repo overviews.

Instructions

Throttled multi-repo breadth comparison: stars, open issue/PR counts, window closed count, and latest release for up to 20 repositories in one call. About 5 upstream calls per repo, roughly 10 repos/minute (search quota). Label-level detail lives in github_repo_health.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "repos": "<repos>"
    },
    "name": "github_compare_repos"
  }
}

Input Schema

NameRequiredDescriptionDefault
freshNoBypass the local cache
reposYesRepositories in owner/name form
window_daysNoAnalysis window in days, default 30

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.2.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare readOnly, idempotent, openWorld, non-destructive, so the safety profile is covered; the description adds genuinely new operational context beyond them. It discloses cost (~5 upstream calls per repo), effective throughput (~10 repos/minute under search quota), and the existence of a local cache (which explains the `fresh` parameter's purpose). These are exactly the behavioral facts an agent needs for planning.

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?

Two dense sentences with zero filler, front-loaded with the core operation and scope, followed by cost/throughput and the sibling routing. Every clause carries information an agent can act on.

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

Completeness5/5

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

There is no output schema, and the description compensates by naming the returned fields, which is what an agent needs to decide whether this call answers its question. Combined with the throttling disclosure and the pointer to github_repo_health, nothing essential for correct invocation is missing.

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 owner/name format, the 20-item cap, and the 30-day default window are already documented. The description reinforces the 20-repo cap and hints that `window_days` drives the "window closed count" metric, but adds no syntax or default detail beyond the schema. Baseline 3 is appropriate.

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?

"Throttled multi-repo breadth comparison" names a specific operation and scope, and the sentence enumerates exactly what is returned (stars, open issue/PR counts, window closed count, latest release). It also separates itself from the sibling github_repo_health by assigning label-level detail there, so an agent can pick the right tool without reading either schema.

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?

Usage is clearly implied: use this for breadth comparison across up to 20 repos in one call, and go to github_repo_health for label-level detail. It does not explicitly contrast with github_repo or github_search_repos, nor state exclusions, but the routing to the alternative tool is unambiguous.

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