Skip to main content
Glama

GitHub: repo

github_repo
Read-only

Fetch metadata for a known public GitHub repository by owner and name, including description, stars, forks, language, license, topics, URL, and last push time; use keyword search first if needed.

Instructions

[github] Get metadata for one public repository you already know by owner and name: description, stars, forks, language, license, topics, url and last push time. Use github_search_repos first if you only have keywords. Returns an error if the repo does not exist or is private.

Input Schema

NameRequiredDescriptionDefault
repoYesRepository name only, without the owner, e.g. 'workers-sdk'
ownerYesUser or organization that owns the repo, e.g. 'cloudflare'

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.2.1
    • addedInput schema / properties / owner / description
      Added value: +"User or organization that owns the repo, e.g. 'cloudflare'"
    • addedInput schema / properties / repo / description
      Added value: +"Repository name only, without the owner, e.g. 'workers-sdk'"
  2. First observedv0.2.0

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnlyHint and openWorldHint; the description adds real context beyond them: the tool fails on nonexistent or private repos, and it enumerates exactly which metadata fields come back. That failure-mode disclosure is the kind of behavior an agent can't infer from the annotations.

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 compact sentences: capability plus return fields first, then the routing rule, then the error condition. No filler, and every clause carries actionable information.

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?

With no output schema, the description compensates by listing the returned fields, and it covers the main failure case. A slightly richer statement of scope (public-only, no auth/rate-limit implications given openWorldHint) would fully close the gap, but nothing essential is missing for correct invocation.

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 coverage is 100% and both params carry their own descriptions with examples, so the schema does the heavy lifting. The description only restates "owner and name" at a high level without adding format or edge-case detail (e.g., case sensitivity, URL vs. name), which is the expected baseline.

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?

States a specific verb and resource ("Get metadata for one public repository"), specifies the keying (owner + name), and enumerates the returned fields. It is clearly distinct from github_search_repos, which is named and framed as the keyword-based alternative.

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

Usage Guidelines5/5

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

Explicitly states when to prefer the sibling: "Use github_search_repos first if you only have keywords." It also gives a usability precondition by implying you must already know owner and repo, so an agent can route correctly without reading either schema.

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