
Arquivo Pt
io.github.pipeworx-iov0.1.0Updated Oct 8, 2026
Arquivo.pt MCP — full-text search over the Portuguese web archive.
Overview
Lets an assistant full-text search Arquivo.pt, the Portuguese web archive, and read or list archived captures of a URL.
- What it does
- Provides three tools over the Arquivo.pt archive: arquivo_search_pages runs full-text or quoted-phrase searches and returns title, original URL, capture date, snippet, replay link and extracted-text links; arquivo_url_history lists every preserved capture of a domain, host or URL with timestamp, crawl status, MIME type, size and digest; arquivo_page_text returns the plain text extracted from one capture. Responses carry the upstream source URL and a data-as-of marker, and failures raise an error rather than returning an empty list.
- When to use it
- Useful when you need to find archived Portuguese-web pages by phrase rather than by URL, or to check what versions of a page were preserved and read their extracted text. The full-text index lags the crawl by years, so for recent material the URL history is the better tool.
- Requirements
- Runs as a remote streamable HTTP endpoint at the gateway URL; no account or API key is needed for the first calls. A local stdio variant is also offered as an npm package run through npx, which needs Node.js. Network access to the gateway and to arquivo.pt is required.
Installation
In SourceWeft
- Open Arquivo Pt in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"arquivo-pt": {
"type": "http",
"url": "https://gateway.pipeworx.io/arquivo-pt/mcp"
}
}
}README
@pipeworx/arquivo-pt
Full-text search of archived web pages in Arquivo.pt, the Portuguese web
archive run by FCCN (captures since 1996). Where the Internet Archive's
Wayback Machine (pack wayback) needs the URL, Arquivo.pt indexes the text
of what it captured, so a caller can find archived pages by phrase, then read
a capture's extracted text or list every preserved version of a URL.
Part of Pipeworx — an MCP gateway connecting AI agents to 1721+ live data sources. This is an independent, unofficial integration — not affiliated with, endorsed by, or published by the upstream provider.
Tools
arquivo_search_pages(query, from?, to?, site?, type?, limit?, offset?, per_site?)— full-text hits for terms or a quoted phrase: title, original URL, capture date, decoded snippet, archived replay URL, extracted-text and screenshot links, plusestimated_totalandnext_offset. Zero hits answerfound:falsewithreason:"no_match"and a hint.arquivo_url_history(url, from?, to?, limit?, offset?)— every preserved capture of a domain, host or full URL, newest first, with capture timestamp, crawl HTTP status, MIME type, size, digest and replay links. Zero captures answerfound:falsewithreason:"no_captures".arquivo_page_text(url, timestamp, max_chars?)— the plain text Arquivo.pt extracted from one capture (original_url+captured_at_tsof a hit). A capture that does not exist answersfound:false, reason:"capture_not_found".
Every response carries source (the exact upstream URL) and data_as_of.
A transport failure, a non-JSON body or a changed response shape throws a loud
error naming Arquivo.pt and the HTTP status — never an empty list.
Auth
Keyless.
Coverage, honestly
- Centred on the Portuguese web (
.ptsites and Portuguese-language pages), but international pages linked from them are captured too. Probed 2026-10-08: "climate change" ≈ 52.8M estimated hits (ipcc.ch, eea.europa.eu), "quantum computing" ≈ 1.08M (microsoft.com, en.wikipedia.org), "Federal Reserve interest rates" ≈ 1.9M (federalreserve.gov, vox.com). English queries work; the top hits skew to pages Portuguese sites cite. - The full-text index lags the crawl by years. Probed 2026-10-08, a
search restricted to
from=2022returns 0 hits on most calls, one node answered with 2023 captures, andarquivo_url_historylists captures from mid-2026. Use the URL history for anything recent. - Arquivo.pt load-balances across index nodes that disagree. From a live
Cloudflare Worker on 2026-10-08 the same URL returned, minutes apart: real
hits in 30-37 s; real hits in 1-6 s with
FAWP*collection ids and ahostKeyfield;response_items: []withestimated_nr_results3.5M; andresponse_items: [{}, {}, {}](429 bytes, every row empty) — the last one for every unquoted multi-word query for a stretch, while a laptop got real hits for the identical URL and a quoted phrase answered correctly from the Worker. The pack retries once withmaxItemsnudged and then throws an error naming the fault; rows with no URL/timestamp are never returned as hits (dropped_malformed_rowscounts them). Some nodes also ignoremaxItems(9 rows for 5); hits are capped atlimit. - The pack sends
toonly when you pass one. The upstream default (the previous calendar year) already covers the whole index, and forcingto=<now>made the same query return zero items from a live Worker whileestimated_nr_resultsstayed at 3.8M (probed twice, 2026-10-08). - Hits are deduplicated to 2 per site by default (
per_site); raise it to see more captures of one site.
Data sources
- https://arquivo.pt/textsearch?q=… — full-text search (
q,from,to,siteSearch,type,maxItems≤ 500,offset,dedupValue,dedupField). - https://arquivo.pt/textsearch?versionHistory=… — URL version history.
- https://arquivo.pt/textextracted?m=… — extracted text
of one capture. The
mvalue is the original URL followed by/and the 14-digit timestamp, so a URL ending in/yields//before the stamp — that is correct, do not "fix" it. - API reference: https://github.com/arquivo/pwa-technologies/wiki/Arquivo.pt-API.
A URL passed as
qis an HTTP 400 upstream; the pack refuses it first and points atarquivo_url_history. - Snippets come back HTML-escaped with Latin-1 named entities
(
Inteligência); the pack decodes them.
Quick Start
Add to your MCP client (Claude Desktop, Cursor, Windsurf, etc.):
What this endpoint actually serves
tools/list at https://gateway.pipeworx.io/arquivo-pt/mcp returns the tools in the table
above plus the shared Pipeworx meta-tools — ask_pipeworx,
discover_tools, search_within, remember/recall and the rest of the
gateway-wide set. So the tool count you see is larger than this table: a
single-pack endpoint currently lists roughly 30 shared tools alongside the
pack's own. The connection's initialize response states its exact scope, and
is the authoritative answer for a given day.
This is deliberate, not multiplexing by accident. The meta-tools are what let a
scoped connection answer a question this pack does not cover — via
ask_pipeworx, which routes across the whole catalog — without you adding a
second MCP server. There is currently no way to mount a pack endpoint without
them; if the extra schemas cost you more context than the routing is worth,
connect to the full gateway once rather than to several pack endpoints.
Or connect to the full Pipeworx gateway to get every pack's tools listed directly, instead of just this one's:
Both URLs reach the same gateway and the same 1721+ data sources. The
only difference is which pack's tools are listed directly; ask_pipeworx
reaches all of them from either one.
No MCP client? Call it over HTTP
No account needed for the first calls. Inspect any tool: GET https://gateway.pipeworx.io/v1/tools/arquivo_search_pages. Find one: POST https://gateway.pipeworx.io/v1/tools/search_packs with {"query":"..."}.
Standalone (no gateway account)
This package also runs as a local stdio MCP server — no Pipeworx account, no gateway round-trip:
Or run it directly to confirm it starts:
It speaks MCP over stdin/stdout and answers initialize/tools/list/tools/call
for only this pack's tools — none of the shared meta-tools the gateway
connection above adds. Same source, same tools, no ask_pipeworx routing.
Using with ask_pipeworx
Instead of calling tools directly, you can ask questions in plain English — this works on the pack endpoint above as well as on the full gateway:
The gateway picks the right tool and fills the arguments automatically.
More
License
MIT
Source: README.md at commit a78abc7
Tools
0Version history
1- v0.1.0LatestOct 8, 2026
