cyanheads avatar

Internet Archive Mcp Server

cyanheads/internet-archive-mcp-server

Connects Claude to the Internet Archive's Wayback Machine and 40M+ item library through five tools covering snapshot discovery, content retrieval, metadata queries, and OCR text extraction. You can search the CDX API for capture histories with date and MIME filters, fetch archived page content stripped of banner injections, run filtered searches across books and media, pull complete file manifests with download URLs, and page through long OCR documents. Built on the public Availability, CDX, Solr, and Metadata APIs with no authentication required. Useful when you need to verify historical content, trace how pages changed over time, or retrieve public domain texts and documents programmatically.

GitHub stars
4
tools
5
transport
STDIO, HTTP
env vars
6
last updated
Nov 12, 2026

Install

From registry metadata
$ npx add-mcp https://internet-archive.caseyjhand.com/mcp --name internet-archive

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http internet-archive https://internet-archive.caseyjhand.com/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 5 tools

Verified live against the running server on Nov 6, 2026.

ia_find_snapshotsFind Wayback Machine snapshots of a URL. Mode "closest" returns the single nearest capture to a given timestamp via the Availability API, falling back to a CDX closest-capture query when the Availability API has no answer (one result). Mode "history" returns the full capture l...9 params

Find Wayback Machine snapshots of a URL. Mode "closest" returns the single nearest capture to a given timestamp via the Availability API, falling back to a CDX closest-capture query when the Availability API has no answer (one result). Mode "history" returns the full capture l...

Parameters* required
collapsevalue
CDX collapse parameter (history mode only). Format: "timestamp:N" where N is 1–14 (4=year, 6=month, 8=day, 10=hour, 14=second): consecutive captures sharing the first N timestamp digits are listed...
fromstring
Start of date range filter in YYYYMMDD format (history mode only). Example: "20200101".
limitinteger
Maximum number of CDX records to return (history mode only, default 100). One call returns at most 10,000: a larger value (up to 150,000) is served as 10,000, and the resume_key continues from there.default: 100
mode*string
Lookup mode: "closest" returns the single nearest snapshot to the given timestamp; "history" returns the paginated full capture list via the CDX API.one of closest · history
resume_keystring
Opaque pagination key from a previous history mode response. Pass this to continue from where the last page left off. Server cursors expire after one hour and bind the URL and original filters; omi...
status_filtervalue
Filter CDX results to a specific HTTP status code (history mode only). Must be a 3-digit numeric code. Example: "200" to return only successful captures.
timestampstring
Target timestamp in YYYYMMDDHHMMSS format (or any prefix thereof). Required for mode=closest. Example: "20200101" for January 1, 2020.
tostring
End of date range filter in YYYYMMDD format (history mode only). Example: "20231231".
url*string
The URL to look up in the Wayback Machine.
ia_get_snapshotFetch the archived content of a URL at a specific Wayback Machine timestamp. Resolves to the nearest available capture when the exact timestamp has no snapshot. Returns the archived page as readable plain text (HTML stripped) and the replay URL of the capture Wayback served, f...2 params

Fetch the archived content of a URL at a specific Wayback Machine timestamp. Resolves to the nearest available capture when the exact timestamp has no snapshot. Returns the archived page as readable plain text (HTML stripped) and the replay URL of the capture Wayback served, f...

Parameters* required
timestamp*string
Target Wayback timestamp in YYYYMMDDHHMMSS format (or any prefix). The nearest available snapshot will be resolved and fetched. Example: "20200101120000" for noon on January 1, 2020.
url*string
The URL whose archived content to retrieve.
ia_search_itemsSearch the Internet Archive library (40M+ items) using the Advanced Search (Solr) API. Filter by media type (texts, audio, movies, software, image, etc.), collection, creator, date range, and language. Sort by downloads (the default), date, title, or random. Supports paginatio...10 params

Search the Internet Archive library (40M+ items) using the Advanced Search (Solr) API. Filter by media type (texts, audio, movies, software, image, etc.), collection, creator, date range, and language. Sort by downloads (the default), date, title, or random. Supports paginatio...

Parameters* required
collectionstring
Filter to items within a specific collection identifier, e.g. "gutenberg" or "librivoxaudio".
creatorstring
Filter by creator name, e.g. "Charles Dickens".
date_fromstring
Inclusive start of date range: YYYY, YYYY-MM, or YYYY-MM-DD. A year or month starts on its first day; blank means no lower bound. Must be a real Gregorian date.
date_tostring
Inclusive end of date range: YYYY, YYYY-MM, or YYYY-MM-DD. A year or month ends on its last day; blank means no upper bound. Must be a real Gregorian date.
languagestring
Filter by language code or name, e.g. "eng" or "English".
mediatypestring
Filter by media type: texts, movies, audio, software, image, data, web, collection, etree (live concert recordings), or account. Case-insensitive; text, book, and books mean texts, movie, video, an...
pageinteger
Page number (1-indexed). Combine with rows for pagination. Advanced Search serves only the first 10,000 results, so page × rows ≤ 10,000 (page 50 at 200 rows, page 200 at 50).default: 1
query*string
Solr query string. Supports field prefixes such as title:"war and peace", creator:dickens, subject:history. Plain keywords search all fields. Put a URL in quotes. At most 2,047 characters, a limit...
rowsinteger
Number of results per page (default 50). One call returns at most 200: on page 1 a larger value (up to 10,000) is served as 200 with a notice naming the next page; on later pages a value above 200...default: 50
sortstring
Sort order in Solr format: a sortable field followed by asc or desc, e.g. "downloads desc", "date asc", "publicdate desc", "titleSorter asc", or "random". Default: "downloads desc". Advanced Search...
ia_get_itemRetrieve metadata and the file manifest for an Internet Archive item by identifier. Returns title, creator, description, subjects, collections, license, language, the total file count, and a page of files, each with its format, size, and direct download URL. Pages hold up to m...4 params

Retrieve metadata and the file manifest for an Internet Archive item by identifier. Returns title, creator, description, subjects, collections, license, language, the total file count, and a page of files, each with its format, size, and direct download URL. Pages hold up to m...

Parameters* required
file_offsetinteger
Zero-based position in the (format-filtered) file list to start from (default 0). To read the next page, add the number of files returned to the previous file_offset, or pass the file_offset the no...default: 0
formatstring
Keep only files whose format equals this value, ignoring case — e.g. "DjVuTXT", "Text PDF", "VBR MP3". Applied before paging. Omit to list every format.
identifier*string
Internet Archive item identifier, e.g. "prideprejudice00aust" (Pride and Prejudice). Obtain from ia_search_items results.
max_filesinteger
Maximum number of files to return (default 50). One call returns at most 500: a larger value (up to 300,000) is served as 500, with a notice naming the next file_offset.default: 50
ia_get_textRetrieve readable OCR DjVuTXT or plain text from an Internet Archive item, including public-domain books, documents, scanned periodicals, and transcripts. Set max_chars for page size, then pass next_continuation as continuation with the same identifier and omit char_offset. Di...4 params

Retrieve readable OCR DjVuTXT or plain text from an Internet Archive item, including public-domain books, documents, scanned periodicals, and transcripts. Set max_chars for page size, then pass next_continuation as continuation with the same identifier and omit char_offset. Di...

Parameters* required
char_offsetinteger
Character offset to start reading from (default 0). For sequential pages use next_continuation as continuation instead. Omit char_offset when using continuation.
continuationstring
Opaque next_continuation from the previous page. Omit char_offset when using it; blank is omitted.
identifier*string
Internet Archive item identifier, e.g. "prideprejudice00aust" (Pride and Prejudice). Obtain from ia_search_items results.
max_charsinteger
Maximum number of characters to return in this response. Defaults to the server-configured maximum (IA_MAX_SNAPSHOT_CHARS, typically 50 000); a larger value is served at that maximum, with a notice...

Sponsors

Configuration

MCP_LOG_LEVELdefault: info

Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

MCP_TRANSPORT_TYPEdefault: http

Selects the HTTP transport.

MCP_HTTP_HOSTdefault: 127.0.0.1

The hostname for the HTTP server.

MCP_HTTP_PORTdefault: 3010

The port to run the HTTP server on.

MCP_HTTP_ENDPOINT_PATHdefault: /mcp

The endpoint path for the MCP server.

MCP_AUTH_MODEdefault: none

Authentication mode to use: 'none', 'jwt', or 'oauth'.

Readme

@cyanheads/internet-archive-mcp-server

Search the Wayback Machine and IA library (40M+ items), fetch archived snapshots, retrieve item metadata and full text via MCP. STDIO or Streamable HTTP.

5 Tools • 1 Item Resource • 1 Skill

Details

Repository
github.com/cyanheads/internet-archive-mcp-server
Category
Search & Web Crawling
Package
@cyanheads/internet-archive-mcp-server
Transport
STDIO, HTTP
Registry
MCP registry, active
Resources
2
Tools verified
Nov 6, 2026

More from cyanheads

Related Search & Web Crawling MCP servers

View all
1cyanheads avatarMet Museum Mcp Servercyanheads/met-museum-mcp-serverSearch the Met collection, browse by department or update date, fetch full records and CC0 images.4stars
2cyanheads avatarOpenlibrary Mcp Servercyanheads/openlibrary-mcp-serverSearch books and authors, fetch editions, browse subjects, and resolve cover images.4stars
3ofershap avatarScraperofershap/mcp-server-scraperWeb scraping MCP — extract clean markdown, links, and metadata from any URL.4stars
4thinkchainai avatarUK Parliament MCP Server from MCPBundlesthinkchainai/mcpbundlesSearch MPs and Lords, fetch profiles, synopses, and Westminster constituencies3stars
5cyanheads avatarWikidata Mcp Servercyanheads/wikidata-mcp-serverSearch and fetch Wikidata entities, execute SPARQL queries, and resolve external identifiers.3stars
6diffbot avatarDiffbotdiffbot/diffbot-mcpWeb search, page extraction, crawling, and Knowledge Graph queries from Diffbot's web index.3stars