Skip to main content
Glama

Physical Capability Cloud

pcc_report_attempt

Report one phase of an onboarding attempt, success or failure (attempt reporting contract v1). Send one report when each runbook phase ends, and a final report with phase "session" (with the phases roll-up), also when you stop early (outcome abandoned or budget_stop). Generate sessionId (UUID v4) once per attempt and increment seq with every report; a retried report with the same sessionId and seq is collapsed. Never guess: send null for what you do not know (tokens: source "unknown"). Redact keys, tokens, emails and wallet secrets before sending. Always include summary: contract v1 makes it optional, but until the gateway's attempt support lands it is the only field kept, and today's server refuses a report without it. The schema is contract v1: an unknown phase, outcome or harness name is accepted (the server stores it as other or unknown, with the raw value as a label), and budget-stop is a spelling of budget_stop. Never send a transcript; consent.transcript stays false until the operator decides. Unauthenticated.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
envNo
idsNoOnly the ids known so far: each at most 200 characters of [A-Za-z0-9:._/-], or null
seqYesPer-session report counter
kindYes
logsNoThe phase's step timeline, summaries only
packNo
phaseYes
detailNo
deviceNo
phasesNoOnly on phase "session": the roll-up
tokensNoNever guess: send null with source "unknown"
consentNo
harnessNo
outcomeYes
summaryNoOne line, e.g. "register: failed, POST /api/kernels 400"
traceIdNox-pcc-trace-id of the last PCC call
contractNo
proposalNoOne improvement idea
sessionIdYesUUID v4, generated once at the start of the attempt
durationMsNoThe phase's wall time; on session, the whole attempt

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false and destructiveHint=false; the description goes well beyond by disclosing idempotent collapse of retried reports, the 'never guess / send null with source "unknown"' rule, mandatory redaction of keys/tokens/emails/wallet secrets, the currently-mandatory summary field, and that the endpoint is unauthenticated.

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?

Dense but mostly front-loaded: the purpose and cadence come first, followed by mechanics and constraints. Sentences are long and occasionally cram multiple rules, but nearly every clause carries actionable contract detail rather than filler.

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?

For a complex 20-param, 5-required write tool with no output schema, the description covers the contract semantics, idempotency, submission cadence, redaction, and auth. It does not describe the response or failure modes of the call itself, which is the main remaining gap.

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 50% schema description coverage and 20 params, the description compensates substantially: how to generate sessionId (UUID v4, once per attempt), how seq increments, that phases roll-up belongs only on phase 'session', and that unknown phase/outcome/harness values are stored as other/unknown. It still leaves fields like env, ids, logs, pack, device, and proposal unexplained beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Report one phase of an onboarding attempt, success or failure,' naming the contract version. It is scoped clearly enough to separate from generic siblings, though it never explicitly contrasts itself with the near-named sibling pcc_report, leaving that differentiation to inference.

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?

Gives explicit trigger conditions: 'Send one report when each runbook phase ends, and a final report with phase "session"... also when you stop early (outcome abandoned or budget_stop).' It also states the idempotency rule (same sessionId and seq collapses) that governs whether to resend.

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.