indexing-tracker
Indexing Tracker
Put a chosen set of URLs under continuous indexing monitoring and report where they stand. The output is the tracker status, the URLs still not indexed with their verdicts, and recommendations with a re-check plan. The user's request may contain a property, a list of URLs or a path prefix (for example /blog/), a sitemap URL, and an action hint ("add", "check", "status", "remove"). This skill sets up and monitors; when the user wants to know why pages are not indexed, run the indexing-health skill, which diagnoses by cause.
Workflow
-
Resolve the property. If the user's request or the conversation names a property, use it. Site URLs use GSC formats:
sc-domain:example.comorhttps://www.example.com/. Otherwise calllist_sitesand pick the obvious match. If several plausible properties exist, ask the user which one before continuing. -
Read the current tracker. Call
get_indexing_trackerwithsiteUrl.tracker: nullmeans no tracker exists yet;add_tracked_urlscreates one, so carry on. Otherwise readtracker.isActiveandstats(total,indexed,notIndexed,pending,errors,warnings,lastCheckAt), and compute the free capacity yourself as 1,800 minusstats.total, since a tracker holds at most 1,800 URLs per property.emptyBecauseon an existing tracker means it holds no URLs. -
Build the URL set. Take it from whichever source the user has:
- The user's own list (a batch of new posts, the pages of a launch).
- A section or a sitemap: call
list_sitemapsto find the sitemap path, thenget_sitemap_performancewithsitemapUrlandmaxUrls(default 500, max 2000) and keep the URLs whose path matches the user's prefix; its rows also show which of them already receive impressions. - A migration batch: call
list_migration_redirectswithsiteUrlBset to the property (andlabelwhen the user names one;limitdefault 500, max 5000) and take each mapping'stoUrl, the new URL that has to get indexed. Every URL must be absolute and on the property's host, oradd_tracked_urlsrejects the whole batch. Deduplicate, drop URLs the tracker already holds (step 7 lists them), and trim to the free capacity, telling the user what was left out. Prefer the pages whose indexing matters (new content, migrated URLs, revenue pages) over bulk lists.