MachineWitness
EU archive of the machine-readable web: check a domain, order a time-stamped record or extract.
What can you do with MachineWitness?
check_coverage: is a domain observed, from which sealed day, which files,capture_status: where a point-in-time record stands, by its reference.suggest_domain: suggest a domain for observation, with a reason a personorder_capture: up to twenty public addresses on one domain. Every address isorder_extract: one to twenty observed domains. Returns a payment link for anorder_observation: one to 500 domains, yearly or monthly. Returns a payment
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http machinewitness 'https://machinewitness.eu/mcp'
{
"mcpServers": {
"machinewitness": {
"type": "http",
"url": "https://machinewitness.eu/mcp"
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
MachineWitness MCP server: is this domain on the record?
MachineWitness is an evidentiary archive of the machine-readable web in the European Union. Every day two independent witnesses record what public domains serve to machines (robots.txt, ai.txt, TDM reservations, llms.txt, and the headers and meta tags of the homepage) and seal that day into a published Merkle root with an external timestamp.
This server lets Claude, ChatGPT, Cursor or any MCP client ask whether a domain is observed, suggest one, and order a time-stamped record of public addresses, in the same conversation in which the question comes up. Hosted by machinewitness.eu; this repository holds the public metadata, the server code is not open source.
https://machinewitness.eu/mcp
Streamable HTTP · no authentication · listed in the
official MCP registry
as eu.machinewitness/archive.
A witness, not a detective
The archive records; it does not evaluate, rank or accuse. The tools answer whether a domain is observed and from when. They never return file contents, and there is no way to list or search the observed set. A record states what an address delivered at a given time; it is not an assessment and not legal advice.
Tools
check_coverage: is a domain observed, from which sealed day, which files, at what cadence. Metadata only. read-onlycapture_status: where a point-in-time record stands, by its reference. Returns no customer data. read-onlysuggest_domain: suggest a domain for observation, with a reason a person reads. Always answered with "received", never with a promise. writeorder_capture: up to twenty public addresses on one domain. Every address is checked for free first; the tool then returns a payment link and charges nothing itself. After payment, both witnesses fetch and picture each address, each capture gets its own qualified electronic time-stamp, and the record is delivered by e-mail. writeorder_extract: one to twenty observed domains. Returns a payment link for an evidence extract, everything the archive recorded on each domain as one verifiable document; a domain never observed is refused by name before payment. Charges nothing itself. writeorder_observation: one to 500 domains, yearly or monthly. Returns a payment link for daily observation; a domain already observed daily in the core is refused by name. Charges nothing itself. write
Six languages for payment page and e-mails: en, de, es, fr, it, pl.
Setup
{
"mcpServers": {
"machinewitness": {
"type": "streamableHttp",
"url": "https://machinewitness.eu/mcp"
}
}
}
See llms-install.md for a one-call check that it works.
Connect in your assistant
Every client below takes the same address, https://machinewitness.eu/mcp, with
no authentication. No account, no API key.
- Claude Code, as a plugin (server plus a short skill that says when to use it):
/plugin install machinewitness --marketplace martinschenk/machinewitness-mcp - Claude Code, server only:
claude mcp add --transport http machinewitness https://machinewitness.eu/mcp - Claude (web and desktop): add a custom connector with the address above.
- ChatGPT: in developer mode, create a connector with the address above, authentication "none".
- Le Chat (Mistral): add a custom MCP connector with the address above, "no authentication".
- Perplexity, Grok, Cursor, VS Code, Gemini CLI and other MCP clients: add a remote (Streamable HTTP) server with the address above.
Full reference, including the plain HTTP API: machinewitness.eu/api. Fees: machinewitness.eu/services.
Privacy
The tools ask only for what their purpose needs: a domain, a reply address for a suggestion, addresses to record and a delivery address for an order. Never a purpose or a matter. What is kept and for how long: machinewitness.eu/privacy
Operated by Martin Schenk S.L., Madrid · machinewitness.eu · questions: contact@machinewitness.eu
Frequently asked questions
What is MachineWitness?
EU archive of the machine-readable web: check a domain, order a time-stamped record or extract.
How do I install MachineWitness?
It runs as a remote server. In Claude Code: claude mcp add --transport http machinewitness 'https://machinewitness.eu/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does MachineWitness need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is MachineWitness open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains MachineWitness?
It is published by martinschenk. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.