GnistAI GnistAI
Log in

Wayback Machine

Internet Archive lookups — snapshot search, availability checks, capture calendars, and yearly statistics.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 5 tools tools 5 5 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Reference

Data source: Wayback Machine

MCP Endpoint (Streamable HTTP) https://context.gnist.ai/mcp/wayback/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (5)

check_availability

Check if a URL has been archived in the Wayback Machine and find the closest snapshot.

Returns a dict with 'url', 'available' (bool), and 'closest' snapshot if available.
The 'wayback_url' field contains the direct Wayback Machine link to the archived page.

ParameterTypeRequiredDescription
urlstringrequiredThe URL to look up (e.g. "https://example.com/page").
timestampanyoptionalOptional target date/time (YYYY-MM-DD or YYYYMMDD). When provided, the Wayback Machine returns the snapshot closest to that date. Omit to get the most recent snapshot.
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "check_availability",
    "arguments": {
      "url": "example"
    }
  }
}
search_snapshots

Search the Wayback Machine CDX index for archived snapshots of a URL.

Returns a deduplicated list of snapshots sorted chronologically. Useful for
tracking how a page has changed over time or verifying when content was live.

Each snapshot has url, wayback_url, timestamp, date, status_code, mimetype,
and length (bytes). Use 'wayback_url' with a fetch tool to retrieve the
actual archived page content.

ParameterTypeRequiredDescription
urlstringrequiredThe URL to search (e.g. "https://example.com/page"). Use wildcard prefix matching with "example.com/*" to capture all pages on a domain.
date_fromanyoptionalOnly include captures on or after this date (YYYY-MM-DD). Optional.
date_toanyoptionalOnly include captures on or before this date (YYYY-MM-DD). Optional.
limitintegeroptionalMaximum snapshots to return (1-100, default 20). (default: 20)
status_codeanyoptionalFilter by HTTP status at capture time (e.g. "200", "404"). Optional.
mimetypeanyoptionalFilter by MIME type (e.g. "text/html", "application/pdf"). Optional.
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "search_snapshots",
    "arguments": {
      "url": "example"
    }
  }
}
get_capture_calendar

Get monthly capture counts for a URL in a given year from the Wayback Machine.

Returns total captures for the year and a breakdown by month (YYYY-MM keys).
Useful for understanding archival coverage and activity patterns for a URL.

ParameterTypeRequiredDescription
urlstringrequiredThe URL to get capture calendar for (e.g. "https://example.com").
yearintegerrequiredYear to retrieve calendar for (e.g. 2023).
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_capture_calendar",
    "arguments": {
      "url": "example",
      "year": 1
    }
  }
}
get_capture_stats

Get yearly capture statistics for a URL from the Wayback Machine.

Returns total captures across all years, the first and last capture years,
and a per-year breakdown. Useful for getting an overview of how long and
how frequently a URL has been archived.

ParameterTypeRequiredDescription
urlstringrequiredThe URL to get capture statistics for (e.g. "https://example.com").
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_capture_stats",
    "arguments": {
      "url": "example"
    }
  }
}
report_feedback

Report a bug, feature request, or general feedback for this data source.

Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.

Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "report_feedback",
    "arguments": {
      "feedback": "example"
    }
  }
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/mcp/wayback/" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Gnist-API-Key: YOUR_API_KEY" \
  -d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "check_availability", "arguments": {"url": "example"}}}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/mcp/wayback/",
    headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
    json={
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "check_availability",
    "arguments": {
      "url": "example"
    }
  }
},
)
print(resp.json())

Related Toolkits (Reference)

Resources