Skip to main content
Glama
Akxan
by Akxan

Pre-migration URL safety net

migration_check
Read-onlyIdempotent

Test old URLs from Search Console, sitemaps, and Internet Archive against the new host to classify redirects, broken pages, and errors for a pre-migration SEO check.

Instructions

Pre-migration check: collect old URLs from Search Console (pages with impressions), the old sitemap and optionally the Internet Archive, test each on the new host, classify OK / REDIRECTED / REDIRECT_TO_HOME / CHAIN / NOT_FOUND / ERROR, sorted by old-site clicks. Search Console only remembers 16 months of URLs that got impressions, so on an old site turn on includeWayback (and raise maxUrls) to recover the rest.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
endDateNo3daysAgo
maxUrlsNo
newHostYesHost of the new site to test against, e.g. 'my-site.pages.dev' or 'new.example.com'.
siteUrlYesSearch Console property, e.g. 'sc-domain:example.com'.
includeOkNoInclude OK rows in the response (otherwise only problems and redirects).
startDateNo180daysAgo
concurrencyNo
waybackLimitNoMax archived URLs to request.
oldSitemapUrlNoOld site's sitemap (index supported). Defaults to none: only Search Console pages are used.
includeWaybackNoAlso pull historical URLs of the domain from the Internet Archive CDX API (free, no key). Finds pages Search Console has dropped; these have no click data, so raise maxUrls.
waybackFromYearNoOnly captures from this year on, e.g. 2015, to skip a long-gone version of the site.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv0.10.0
    • addedInput schema / properties / includeWayback
      Added value: +{
      +  "default": false,
      +  "description": "Also pull historical URLs of the domain from the Internet Archive CDX API (free, no key). Finds pages Search Console has dropped; these have no click data, so raise maxUrls.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / waybackFromYear
      Added value: +{
      +  "description": "Only captures from this year on, e.g. 2015, to skip a long-gone version of the site.",
      +  "maximum": 2100,
      +  "minimum": 1996,
      +  "type": "integer"
      +}
    • addedInput schema / properties / waybackLimit
      Added value: +{
      +  "default": 1000,
      +  "description": "Max archived URLs to request.",
      +  "maximum": 10000,
      +  "minimum": 10,
      +  "type": "integer"
      +}
  2. Changed1 schema field changedv0.5.1
    • removedInput schema / additionalProperties
      Removed value: -false
  3. First observedv0.3.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior, so the description adds useful behavioral specifics: the data sources used, the classification categories returned, sorting by clicks, and the 16-month Search Console retention limit. This supplements the structured annotations rather than contradicting them.

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?

Three concise sentences with no filler. The core workflow and output classification are front-loaded, and the important data-retention caveat is placed at the end where it reinforces the includeWayback recommendation. Every sentence earns its place.

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 an 11-parameter tool with no output schema, the description covers the primary workflow, sources, classifications, sorting, and a key operational caveat. It does not specify response shape or all tuning parameters, but combined with the schema and annotations it is sufficiently complete for correct invocation.

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?

The input schema already describes 7 of 11 parameters well, including includeWayback's CDX API behavior and maxUrls guidance. The tool description adds the 16-month retention rationale and connects maxUrls to recovering dropped URLs, but leaves endDate, startDate, and concurrency to schema defaults. This is moderate added value over the schema, not full compensation.

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 states a specific composite operation: collect old URLs from Search Console, the old sitemap, and optionally the Internet Archive; test them on the new host; and classify them into named categories sorted by clicks. This clearly distinguishes it from related siblings like sitemap_check or gsc_search_analytics by anchoring it to pre-migration validation.

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?

It establishes the use case up front ('Pre-migration check') and gives concrete conditional guidance: on old sites, turn on includeWayback and raise maxUrls because Search Console only retains 16 months of impression URLs. It does not explicitly list exclusions or alternatives, but the context is clear enough for an agent to choose this tool appropriately.

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