Call seo_list_reports with category ai-search when discovery is needed.
Call seo_describe_report with id community-intent, then call
seo_run_report with that id and only the described parameters. Read
structuredContent as the machine contract. Use the CLI when MCP is
unavailable:
seo reports describe community-intent --json
seo reports run community-intent --params '{"site":"sc-domain:example.com","days":90,"minImpressions":20,"limit":25}' --json
seo community-intent --project <project> --json
The generic runner validates the exact MCP schema before any provider call. Use the focused command when a human needs named flags and project-profile selection. Both paths execute the same report.
For a reproducible report pass startDate and endDate to MCP or use --start-date and --end-date in the CLI. Keep the range inside source.availableDateWindow. Do not combine an exact range with days.
Read the evidence first
- Check
dataStatus,source.completeness,warnings, andcaveats. - Use
selection.classifiedRowsfor every retained match. Useselection.returnedRowsfor the limited result set. - Treat a capped or partial zero as inconclusive. GSC may omit lower-click queries.
- Report
intent,signals, andmatchedTermsas low-confidence language heuristics.
The classifier uses English patterns. It does not inspect the live SERP, identify the ranking URL, or verify page content. Never state that a page has a content gap from this report alone.
Turn a result into an action
Use each item as a review queue. Retrieve GSC query/page rows to identify every associated URL, inspect the current search results, then check each relevant page against the observed query language. Recommend a content change only when page or SERP evidence supports it.
Use explicit brandTerms when the brand cannot be derived reliably from the property. Keep includeBrand false unless branded demand is part of the question.