
mearman/mcp-wayback-machine
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
MCP-сервер и CLI-инструмент для взаимодействия с Wayback Machine Архива Интернета
Обзор
MCP-сервер и CLI-инструмент для взаимодействия с Wayback Machine Internet Archive. Поддерживает полный поиск CDX, поиск контента для моментальных снимков, листинг скриншотов, сравнение снимков и дополнительную аутентификацию для более высоких пределов скорости SPN2. TypeScript · Node.js 22+ · Модули ES · pnpm · Turbo · Zod Дополнительные учетные данные (анонимный доступ работает, но аутентифицированные запросы получают более высокие ограничения скорости SPN2): Получите учетные данные на archive.org/account/s3.php. Сквозные тесты попали в живой API Wayback Machine и включены: Проверка pnpm - это ворота, которые должны пройти перед выпуском. PrepublishOnly запускает его автоматически. src/bin.ts является точкой входа. Он определяет, используется ли он в качестве CLI или загружается как MCP-сервер и маршрутизируется соответственно. Каждый модуль инструмента экспортирует схему (потребленную ListToolsRequestSchema) и функцию исполнения (потребленную CallToolRequestSchema). Новые инструменты требуют регистрации в server.ts.
Обзор (машинный перевод)
MCP-сервер и CLI-инструмент для взаимодействия с Wayback Machine Архива Интернета. Поддерживает полный поиск CDX, поиск контента для моментальных снимков, листинг скриншотов, сравнение снимков и дополнительную аутентификацию для более высоких пределов скорости SPN2.
Stack: TypeScript · Node.js 22+ · ES Modules · pnpm · Turbo · Zod
Начало работы
Требуется Node.js 22+ и pnpm.
Дополнительные учетные данные (анонимный доступ работает, но аутентифицированные запросы получают более высокие ограничения скорости SPN2):
Получите учетные данные на archive.org/account/s3.php.
##Строим, тестируем и строим
Чтобы запустить один тестовый файл:
Сквозные тесты попали в живой API Wayback Machine и включены:
pnpm validate — это ворота, которые должны пройти перед выпуском. prepublishOnly запускает его автоматически.
Архитектура
[2] является точкой входа. Он определяет, используется ли он в качестве CLI или загружается как MCP-сервер и маршрутизируется соответственно.
Каждый модуль инструмента экспортирует схему (потребленную ListToolsRequestSchema) и функцию исполнения (потребленную CallToolRequestSchema). Новые инструменты требуют регистрации в server.ts.
Кеширование ТТЛ является преднамеренным — не нормализует их:
| Ресурс | ТТЛ | Причина | [править править код]
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
MCP Wayback Machine Server
MCP server and CLI tool for interacting with the Internet Archive’s Wayback Machine. Supports full CDX search, snapshot content retrieval, screenshot listing, snapshot comparison, and optional authentication for higher SPN2 rate limits.
Stack: TypeScript · Node.js 22+ · ES Modules · pnpm · Turbo · Zod
Getting started
Requires Node.js 22+ and pnpm.
pnpm install
Optional credentials (anonymous access works, but authenticated requests get higher SPN2 rate limits):
export WAYBACK_ACCESS_KEY="your-access-key"
export WAYBACK_SECRET_KEY="your-secret-key"
Obtain credentials at archive.org/account/s3.php.
Build, test, and lint
pnpm validate # typecheck + lint + build + test + untested-files check (the full CI gate)
pnpm check # typecheck + lint + build only
pnpm build # compile TypeScript to dist/
pnpm test # run unit and integration tests
pnpm test:coverage # run tests with coverage (80% line/branch/function threshold)
pnpm lint # lint with ESLint
pnpm lint:fix # auto-fix lint issues
To run a single test file:
node --test tests/tools/save.unit.test.ts
End-to-end tests hit the live Wayback Machine API and are opt-in:
pnpm test:e2e # sets WAYBACK_LIVE_TESTS=1 internally via turbo
pnpm validate is the gate that must pass before a release. prepublishOnly runs it automatically.
Architecture
src/bin.ts is the entry point. It detects whether it is invoked as a CLI or loaded as an MCP server and routes accordingly.
src/
bin.ts — entry point; dispatches to CLI or MCP server
cli.ts — Commander-based CLI implementation
server.ts — MCP server wiring (ListTools + CallTool handlers)
contexts.ts — shared context (rate limiter, cache, credentials)
schemas.ts — Zod schemas for all tool inputs; single source of truth
tools/
Установка
npx -y mcp-wayback-machine