Skip to main content
Glama

SHPBL: Repository Audit & Repair

Harvest a repository

harvest_repo
Read-onlyIdempotent

Stage three of a SHPBL repository audit — the harvest: walk an entire repository in batches under a hard character ceiling and fold it into a sealed capability ledger. Batch 1 carries the protocol and the full path-to-batch manifest; later batches carry source only. Pass estimate: true to size a scope before walking it, and ledger_digest to resume a walk in a fresh session. Your own model composes the ledger. Free runs walk the whole tree and seal the ledger of the repository's own capabilities, then stop at the composition boundary — no library search, no candidates, no dispositions. Composition and write-back need a Practitioner key (7-day free trial).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyNoYour SHPBL Practitioner subscription key (shpbl_mcp_…). Optional if your client sends it as the `Authorization: Bearer …` request header.
partNoWhich batch to return, 1 to 2000. Batch 1 carries the protocol and the manifest; walk them all in order.
repoYesA GitHub repository: `owner/repo` or a URL.
briefNoSkip the harvest protocol preamble on batch 1 and spend the payload on source. Use it once you already hold the method — `method_protocol` (free) returns it verbatim.
budgetNoCharacters per batch — a whole number from 10,000 to 120,000. Defaults to 90000; lower it for a smaller context window, raise it only if the client can carry it. Out-of-range values are refused in plain words, not silently clamped.
includeNoOptional path filter — only paths containing this text are harvested.
estimateNoReturn the size of the walk only — batch count, total characters, largest batch, split files — with no source.
github_tokenNoOptional GitHub token (Contents: read) for a private repository. Not needed if the SHPBL GitHub App is connected to this key.
ledger_digestNoThe ledger folded so far, handed back by a previous session so this batch continues the same run instead of starting over.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, but the description adds substantial behavioral detail beyond those: batch 1 carries the protocol and manifest while later batches are source-only; there is a hard character ceiling with plain refusal of out-of-range budgets; `ledger_digest` resumes a prior walk; composition and write-back require a Practitioner key; and free runs stop at the composition boundary. This is rich, non-obvious behavior that an agent needs to know before invoking the tool.

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 longer than average but each sentence carries information: stage context, batch composition, estimate behavior, resume behavior, free-tier limits, and authentication. It is front-loaded with the core purpose and then builds outward. Minor redundancy exists around the 'character ceiling' and 'budget' concepts, but overall it is dense without being bloated.

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?

For a 9-parameter tool with no output schema, the description covers what an agent needs: what a run returns (protocol, manifest, source batches), how to size a scope first, how to resume across sessions, what free runs do, what requires a key, and how budget limits are enforced. The workflow sequence from estimate to walk to composition/write-back is fully described, so an agent can invoke the tool correctly with minimal guesswork.

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?

With 100% schema description coverage, the baseline is 3. The description adds value by explaining how parameters fit together in the workflow: `estimate` sizes a scope before walking, `ledger_digest` resumes a session, `brief` skips the protocol once the method is already held, and `budget` has a nuanced default/clamping behavior. This goes beyond the individual schema descriptions and helps an agent decide parameter values in context.

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 and resource — 'Stage three of a SHPBL repository audit — the harvest: walk an entire repository in batches ... and fold it into a sealed capability ledger.' This clearly distinguishes harvest_repo from sibling tools like library_search, evaluate_repo, and write_to_repo. It also explains the batch structure and the eventual ledger output, leaving no ambiguity about what the tool does.

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 establishes a clear workflow context: stage three of a multi-stage audit, with `estimate: true` for sizing a scope and `ledger_digest` for resuming a walk. It explicitly states what free runs do and what they stop at ('no library search, no candidates, no dispositions'), implicitly contrasting it with related siblings. It does not name an explicit alternative tool for when to use something else, but the workflow placement and boundary statements provide strong usage guidance.

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

A3.8/5.0
Disambiguation4/5

Most tools target distinct stages or resource types: evaluate/fix/harvest are clearly separate audit phases, and write_to_repo/list_repos are unambiguous. The library_* trio is mostly separable but library_document and library_index both offer access to volumes, and run_gauntlet partially overlaps the individual stage tools, so a couple of boundaries are less crisp.

Naming Consistency4/5

Names are uniformly lowercase snake_case and mostly follow a verb_noun pattern: evaluate_repo, fix_repo, harvest_repo, write_to_repo, list_repos, run_gauntlet. A few are noun_noun or resource-prefixed like library_search, library_document, subscription_status, and welcome/selfcheck_mcp are one-offs, so it is predictable but not perfectly uniform.

Tool Count5/5

At 14 tools the server sits within the ideal 3-15 range, and each tool has a plausible role in the audit/repair, library, or operational workflow. The count is on the larger side but justified by separate free and Practitioner lanes, library services, and health/status checks.

Completeness4/5

The core audit lifecycle is well covered: list/scope, evaluate, fix, harvest, write back, plus library search and run orchestration. The main gap is that build_intent explicitly gates COMPOSE/SPECIALIZE/CREATE operations, but no actual compose/specialize/create tools are exposed, and there is no explicit run_gauntlet cancellation or reset, though agents can work around both.

Resources