Skip to main content
Glama

MSPortfolio — MCP-Native Engineering Portfolio

verify_repo

Read-only

Verify a GitHub repository against the primary source: fetches the actual repo metadata (exists, language, description, topics, stars, last push) from the GitHub API and cross-checks it with the portfolio's project record when the repo is one of the owner's projects (language/stack agreement). With readme:true it also returns the actual README text, so claims about what the project does can be checked against the repository's own words. Use it to ground claims like 'the repo is Python' or 'he maintains mscodebase-intelligence' with live data instead of trusting the claim. Read-only, open world (network fetch).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
repoYesRepository name, e.g. "mscodebase-intelligence" (owner defaults to ManSio) or full "owner/name" or a github.com URL.
readmeNoAlso fetch the repository README (first ~1200 chars) for claim checks against the project's own description.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint, openWorldHint), the description explains what the open-world operation actually does: it performs a network fetch, retrieves specific metadata fields (exists, language, description, topics, stars, last push), conditionally cross-checks against portfolio records, and optionally returns README text. This adds substantial behavioral context and does not contradict 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.

Conciseness4/5

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

The description is compact and front-loaded with the core purpose. Each sentence adds something: the verification process, the readme option, and the concrete usage scenario. The first sentence is slightly dense with parenthetical details, but there is no redundant filler beyond briefly restating the annotations.

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?

Given that there is no output schema, the description compensates by enumerating the metadata fields returned and describing the README behavior. It also covers the cross-check condition and the intended use case. It doesn't specify error handling or the exact shape of a repo-not-found result, but the coverage is strong enough for an agent to invoke the tool correctly.

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

Parameters4/5

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

Schema description coverage is already 100%, setting a baseline of 3. The description goes further by clarifying that repo can be a bare name with owner defaulting to ManSio, a full owner/name pair, or a GitHub URL — details not present in the schema. It also adds the ~1200 character README truncation behavior for readme=true.

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 opens with a specific verb and resource: 'Verify a GitHub repository against the primary source'. It then details the exact mechanism — fetching metadata from the GitHub API and cross-checking it with the portfolio record — and distinguishes itself from generic claim-verification tools by focusing on repository facts. The readme:true behavior reinforces the unique scope.

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 explicit usage direction: 'Use it to ground claims like "the repo is Python" or "he maintains mscodebase-intelligence" with live data instead of trusting the claim.' This clearly communicates when to invoke the tool. It does not explicitly mention when not to use it or name sibling alternatives such as verify_claim, but the repo-specific context makes the intended scope clear.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation4/5

Most tools map cleanly to distinct content types such as profile, projects, issues, diary, experiments, and live-source verification. A few pairs like get_projects/search_projects and get_articles/verify_article touch the same subject matter, but their descriptions clarify the intended action well enough for an agent.

Naming Consistency5/5

All tools follow a consistent snake_case verb_noun pattern: get_* for portfolio content, verify_* for external grounding, plus analyze_stack, search_projects, and simulate_architecture. There is no mixing of conventions or vague generic verbs.

Tool Count4/5

18 tools is on the higher end but justified by the portfolio's breadth: content domains, project search/simulation, and open-world verification all have distinct needs. It is slightly heavy but not bloated; each tool has a discernible reason to exist.

Completeness5/5

The surface covers the full portfolio/interview domain: profile, projects, timeline, articles, repos, packages, issues, engineering history, experiments, principles, and verification. It also includes grounding against live sources, leaving no obvious dead ends for an agent answering questions about the owner.

Resources