SkillAgentSearch skills...

mcp-archiveorg

MCP server for the Internet Archive. Search inside digitised books, browse the catalogue, and read Wayback Machine captures. No API key.

Install / Use

claude mcp add smeet666 -- npx -y github:smeet666/mcp-archiveorg

If the server publishes to npm under a different name, use that package instead β€” check the repo README.

About this skill
πŸ”Œ

MCP Server

Model Context Protocol server

Quality Score

83/100

Supported Platforms

Claude Code
Claude Desktop

Our assessment of mcp-archiveorg

mcp-archiveorg scores 83/100 on our quality scale, 3025th of 4,639 Development & Engineering skills we index.

Its MCP Server is 39 KB long, well organised into 42 sections with 10 code examples: a thorough specification that gives an agent plenty to work with.

It has 3 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
30/30
Structure
20/20
Description
15/15
Adoption
3/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated yesterday, so mcp-archiveorg is actively maintained.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit β€” read the skill file before letting an agent act on it.

mcp-archiveorg compared with similar skills

All 4 of these similar skills score higher than mcp-archiveorg; compare them before choosing.

SkillScoreStarsUpdatedFormat
mcp-archiveorg (this skill)by smeet6668331d agoMCP Server
taste-skillby Leonxlnx100108.9ktodayCLAUDE.md
Agent-Reachby Panniantong100108.1k2d agoCLAUDE.md
headroomby headroomlabs-ai10078.7ktodayCLAUDE.md
ai-job-searchby ai-job-search-dev10069.1ktodayCLAUDE.md

Frequently asked questions

How do I install mcp-archiveorg?
Run claude mcp add smeet666 -- npx -y github:smeet666/mcp-archiveorg. The install tabs above show the steps for each supported agent.
Which AI agents does mcp-archiveorg work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is mcp-archiveorg safe to use?
It is MIT-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is mcp-archiveorg still maintained?
The repository was last updated yesterday, so mcp-archiveorg is actively maintained.

mcp-archiveorg

npm CI license MCP Registry Glama M8ven LobeHub Install in Cursor Install in VS Code

<!-- m8ven-verify: 1b912922cee8f3a46080bbb4b83487e1 -->

The Internet Archive is a non-profit library that keeps what the world publishes: scanned books, films, recorded music, radio, software, and the pages of the web itself, captured over and over since 1996 in the Wayback Machine. Millions of its books and documents have been run through optical character recognition, so the words inside them can be searched, and the Open Library index beside it describes works, their editions and their subjects.

This server connects a chat client to that library. You can search the full text inside its documents, search its catalogue of items, read one item's record and its files, look up a book by subject, place, period or person, and read the web as it stood on a given day. It needs no API key and no account.

Version franΓ§aise


Install

One-click install

Install in Cursor Install in VS Code

Claude Code

claude mcp add archiveorg -- npx -y mcp-archiveorg

Claude Desktop, Cursor, and any client using the standard config format

{
  "mcpServers": {
    "archiveorg": {
      "command": "npx",
      "args": ["-y", "mcp-archiveorg"]
    }
  }
}

Node 24 or later is required, and no environment variable has to be set.

With Docker

{
  "mcpServers": {
    "archiveorg": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "ghcr.io/smeet666/mcp-archiveorg:2.1.0"]
    }
  }
}

-i keeps stdin open, which is where the protocol travels, and -t is left out because a TTY rewrites the stream. The container needs outbound HTTPS to archive.org, web.archive.org and openlibrary.org, and nothing else: no volume, no port, no credential.

Bundle, without npm

Download mcp-archiveorg-2.1.0.mcpb from the latest release and open it. A client that supports MCP bundles installs it on its own, with no npm and no configuration file to edit. The bundle carries its dependencies, so nothing is fetched at install time.

What you can ask

  • "Which books mention the Beaumont light-house?"
  • "Find me items about the 1906 San Francisco earthquake."
  • "What files does that item hold, and what licence is it under?"
  • "Find me books on beekeeping in France published before 1900."
  • "What did that website look like in March 2001?"

The ordinary path runs from a search to a record: a row carries an identifier, and get_item reads it.

Tools

| Tool | What it does | | ---------------- | ----------------------------------------------------------------- | | search_inside | Searches the words inside the archive's scanned documents. | | search_items | Searches the catalogue by title, creator, subject and media type. | | get_item | Reads one item's record, its files and its licence. | | search_books | Finds books by subject, place, period, person, length or year. | | list_snapshots | Lists the captures the Wayback Machine holds for an address. | | get_snapshot | Reads one capture of an address, at or near a date. |

search_inside

Searches the text inside the archive's documents, which came off the page through optical character recognition, so a passage carries the misreadings of that process.

| Argument | Type | Required | What it does | | ------------------------ | ---------------------------------- | -------- | -------------------------------------------- | | query | string, 2 to 300 characters | yes | The phrase to look for inside the documents. | | limit | integer, 1 to 50, default 10 | no | Matches to serve. | | page | integer, 1 to 100, default 1 | no | Which page of matches. | | max_excerpt_chars | integer, 80 to 1200, default 300 | no | How much of a passage to serve. | | max_excerpts_per_match | integer, 1 to 10, default 3 | no | Passages served per matching document. |

In return: hits, each carrying identifier, which get_item takes; title, creator and year; excerpts, the passages as a machine read them off the page; matched_file, naming what actually holds the passage; and source_url. inside_container is true when the item bundles several documents and the passage sits in one of them, in which case the title, the creator and the year belong to the container.

total counts documents, and it pages. It is a number of documents and the last page of a match set is shorter than the first. No page number is available: the index reports where the text sits inside the item, which is 1 on nearly every match, so nothing here states a page of a book and no link claims one.

search_items

Searches the catalogue itself, across every kind of thing the archive holds.

| Argument | Type | Required | What it does | | ------------ | ---------------------------------------------------------------------------- | -------- | ----------------------------------- | | query | string, 1 to 300 characters | yes | Words to look for in the catalogue. | | media_type | texts, movies, audio, image, software, data or web | no | The kind of thing to keep. | | year_from | integer, 1 to 2200 | no | Earliest year. | | year_to | integer, 1 to 2200 | no | Latest year. | | sort | relevance, downloads, newest, oldest or title, default relevance | no | How the rows are ordered. | | limit | integer, 1 to 50, default 10 | no | Rows to serve. | | page | integer, 1 to 100, default 1 | no | Which page of rows. |

In return: items, each carrying identifier, title, creator, year, media_type, downloads and source_url, a field the record leaves empty being null. total counts the items matching across the catalogue, which is more than the number returned.

get_item

Reads one item's record. The heavier parts are asked for rather than served by default, since a record can run long.

| Argument | Type | Required | What it does | | ----------------------- | --------------------------------------------------------------- | -------- | ------------------------------------- | | identifier | string, 1 to 200 characters | yes | The identifier a search row carries. | | sections | array of basic, files, full_metadata, default ["basic"] | no | Which parts to return. | | file_format | string, up to 60 characters | no | Keep the files of one format. | | max_files | integer, 1 to 200, default 25 | no | Ceiling on the files returned. | | max_description_chars | integer, 100 to 20000, default 2000 | no | How much of the description to serve. |

In return: the item with its title, creator, year, media_type and source_url, plus description, date, publisher, language, collections and license_url, each null where the record states nothing. file_count counts the files the item holds whatever this answer returned, and total_bytes their weight. files and full_metadata are present only when asked for in sections.

search_books

Finds books through the index of works beside the archive, which describes a work and its editions rather than one scanned copy.

| Argument | Type | Required | What it does | | ----------- | --------------------------------------------------------------------------- | -------- | -------------------------------------- | | query | string, 2 to 300 characters | no | Free text, when there is any. | | subject | string, 2 to 100 characters | no | A subject the index files works under. | | place | string, 2 to 100 characters | no | A place a work is about. | | time | string, 2 to 100 characters | no | A period a work is about. | | person | string, 2 to 100 characters | no | A person a work is about. | | language | string, 2 to 20 characters | no | The language of the work. | | year_from | integer, 1 to 2200 | no | Earliest first publication. | | year_to | integer, 1 to 2200 | no | Latest first publication. | | pages_min | integer, 1 to 100000 | no | Shortest acceptable work. | | pages_max | integer, 1 to 100000

Truncated for display β€” read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars3
CategoryDevelopment
Updated1d ago
Forks0

Languages

TypeScript

Trust signals

92/100

From repository metadata: license, adoption, age and documentation. Not a code audit β€” see the Safety scan above for what the skill file itself contains.

1 low
mcp-archiveorg β€” MCP Server: Install & Safety Check | SkillAgent