Skip to main content
Glama

Confirm and submit a schema registry contribution (step 2 of 2)

submit_registry_contribution
Destructive

Submits a registry contribution after strict validation: confirmation phrase, report hash, independent privacy scan, and content integrity; then writes files and opens a PR (or saves locally).

Instructions

Step 2: after the patient has reviewed get_registry_contribution_report's output IN FULL and typed its exact confirmation phrase themselves, call this with that phrase and the report's reportHash to actually write and submit the contribution. Runs the full gating sequence: exact-match phrase check, an INDEPENDENT second privacy scan (does not trust discover.js's own redaction — re-checks against a hard allowlist), a content-integrity hash check (refuses if the archive changed since the report was reviewed — re-call get_registry_contribution_report and re-confirm if this happens), then writes to schema-registry/ and opens a PR via the GitHub CLI if it is installed and authenticated.

If gh is not available, or nothing needs submitting, or the PR step fails, files are still written and hash-verified locally — nothing is ever lost, and this is reported clearly rather than silently.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
reportHashYesThe `reportHash` value from the get_registry_contribution_report call the patient actually reviewed, passed through verbatim.
confirmationPhraseYesEXACTLY what the patient themselves typed in response to the required phrase from get_registry_contribution_report — not your own paraphrase or judgement call.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already mark this as destructive (destructiveHint=true) and not read-only. The description goes far beyond that by detailing the full gating sequence: exact-match phrase check, independent second privacy scan, content-integrity hash check, writing to schema-registry/, and the fallback behavior when `gh` is missing or PR fails, including local verification and clear reporting. It also clarifies that it does not trust earlier redaction, adding significant behavioral context beyond the annotation.

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?

Although the description is lengthy, every sentence adds necessary detail about the gating sequence, fallback, and error handling. It's front-loaded with the step and prerequisite, and the structure is logical (prerequisite → action → checks → outcome). No filler or redundancy; the length is justified by the tool's complexity.

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?

The description is highly complete for a complex destructive tool: it covers inputs, prerequisites, detailed behavioral checks, and failure scenarios. The only gap is that it doesn't describe the return value or response format, and there's no output schema to compensate. For a submission tool, an agent might need to know what it returns (e.g., PR URL, status), but the description's thoroughness elsewhere makes this a minor omission.

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 for both parameters is 100%, and the schema descriptions already state exactly what each parameter must be (verbatim reportHash and the patient's own typed phrase). The tool description reiterates that requirement but doesn't add new meaning beyond the schema. Thus, a baseline score of 3 is appropriate per the rubric.

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 clearly states the tool's purpose: it's step 2 of a two-step process to submit a schema registry contribution, explicitly naming the exact inputs (confirmation phrase and reportHash) and the action (write and submit). It distinguishes itself from the get_registry_contribution_report sibling by framing it as the follow-up step.

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 clearly defines when to call this tool: after the patient has reviewed the report IN FULL and typed the exact confirmation phrase. It also conditions the call on having the reportHash and phrase. While it doesn't explicitly state when NOT to call, the prerequisites are unambiguous, and there are no alternative submit tools among siblings, so the context is clear. A slight bump to 5 would require explicit exclusions or alternatives, which aren't present.

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