structuredContent and in a JSON text content block. These records describe files inside the host’s repository root. They do not use the hosted command response envelope.
A missing manual or profile file returns an error field and sets MCP isError. An unresolved citation also sets isError while preserving the citation report. A thrown service or path-boundary error returns text with isError; do not assume every failed call has structuredContent.
Results by tool
Each tool page includes its nested result fields and a fixture-backed example. Examples demonstrate shape and semantics; their dates and counts are not account evidence. Profile examples use fixture fetches rather than a claim of live web coverage.
Preserve uncertainty and partial work
manual_only is a valid configuration. A missing Google grant does not prevent your agent from using manual site inputs. Null observation, inference and recommendation fields preserve their separate ownership.
Read per-property and per-window refresh outcomes even when the run state is ok. A later quota refusal or authorization loss leaves earlier appended rows intact. A profile build can complete while individual pages remain unreadable. Keep those page outcomes and cap counters in the next report.
A missing page in bounded search rows never means zero impressions. Click-through rate is derived from saved counts; average position remains an average. Keep unknown metrics null and preserve source dates. Project configuration and saved handoff state can contain customer-owned extensions; connection status returns only selected sanitized fields.
Use repository context setup for the fixed root boundary, common schemas for shared conventions and troubleshooting for path and grant recovery.