Skip to main content
Glama
mcp-archiveorg

mcp-archiveorg

Read a page as it was

get_snapshot
Read-onlyIdempotent

Finds the Wayback Machine capture of a web page as close as possible to a date, or the capture available when no date is given. Returns the capture link, address, and days from the requested date.

Instructions

Find the Wayback Machine capture of a web page closest to a given date. Give 'at' to ask for a moment in time; leave it out for the most recent capture. The answer always states 'days_from_requested', because the closest capture can be years away from the date asked for: read it before describing what the page said on that date. It also states the address the capture is of, which the Wayback Machine can resolve to a neighbouring form of the one asked about. This finds the capture and links to it. It does not return the page's contents.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "url": "<url>"
    },
    "name": "get_snapshot"
  }
}

Input Schema

NameRequiredDescriptionDefault
atNoDate to aim for, as YYYY-MM-DD or a full ISO 8601 timestamp. Omit for the newest capture.
urlYesAddress to look up, such as 'lemonde.fr' or a full URL.

Output Schema

NameRequiredDescriptionDefault
notesYes
snapshotYes
requested_atYes
requested_urlYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv2.1.0
    • removedOutput schema / properties / requested_at / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / requested_at / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  2. Changed3 schema fields changedv1.5.0
    • addedOutput schema / properties / snapshot / properties / address
      Added value: +{
      +  "description": "The address this capture is of. The Wayback Machine indexes a site under several addresses at once, such as its www form, its https form and a form carrying credentials, so this can differ from the address that was asked about.",
      +  "type": "string"
      +}
    • changedOutput schema / properties / snapshot / properties / days_from_requested / description
      Previous value: -"Whole days between this capture and the date asked for. Null when no date was given."New value: +"Whole days between this capture and the moment asked for, counted down: a capture taken on the day asked about, when no time was given, is 0. Null when no date was given."
    • changedOutput schema / properties / snapshot / required
      Previous value: -[
      -  "captured_at",
      -  "url",
      -  "status",
      -  "days_from_requested"
      -]New value: +[
      +  "captured_at",
      +  "url",
      +  "address",
      +  "status",
      +  "days_from_requested"
      +]
  3. Changed1 schema field changedv1.3.0
    • addedInput schema / additionalProperties
      Added value: +false
  4. First observedv0.1.0

TDQS

A4.4/5.0
Behavior5/5

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

Goes well past the read-only/idempotent annotations by warning that the returned capture can be years off the requested date and that the resolved address may be a neighbouring form of the one asked about. Those are non-obvious behaviors an agent would otherwise get wrong.

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?

Front-loaded with the core action and the optional-parameter rule, then the caveats. The two-sentence treatment of 'days_from_requested' is slightly repetitive but each sentence carries a distinct warning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, yet the description still flags the two return fields that change interpretation ('days_from_requested' and the resolved address), which is exactly the judgment an agent needs. Nothing required for a correct call is missing.

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?

Schema coverage is 100%, so both parameters are already fully documented with formats and defaults. The description restates the 'at'-versus-omit rule without adding syntax or semantics beyond the schema, so baseline 3 applies.

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?

States a specific verb and resource ('Find the Wayback Machine capture of a web page closest to a given date') and scopes the tool precisely to locating a capture rather than fetching content. That scope also separates it from content-oriented siblings like search_inside.

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?

Gives explicit branch conditions: supply 'at' to target a moment in time, omit it for the newest capture. It also draws a clear boundary with 'It does not return the page's contents,' steering content needs elsewhere, though no sibling is named by name.

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