verify_url — MCP server for the verification endpoint ("the atom")
Gives any MCP-compatible agent a verify_url tool: POST a URL, get back a
cryptographically signed proof packet (HTTP status, page title, body SHA-256,
DNS resolution, TLS certificate — timestamped and Ed25519-signed).
Every call hits the live public endpoint, so every tool result is a real proof packet whose signature anyone can verify independently.
Run it
From a checkout (no install needed):
VRF_BASE_URL=https://asheraistudios.duckdns.org python3 mcp_server.py
Or install it as a package (console script verify-atom-mcp):
pip install ./mcp # from the repo root
VRF_BASE_URL=https://asheraistudios.duckdns.org verify-atom-mcp
(PyPI publication is pending — after that, pip install verify-atom-mcp
or uvx verify-atom-mcp will work directly.)
(VRF_BASE_URL defaults to the public deployment. stdio transport, zero
third-party dependencies — the MCP handshake is plain JSON-RPC 2.0.)
Register it (Claude Code / Claude Desktop)
{
"mcpServers": {
"verify-atom": {
"command": "python3",
"args": ["/path/to/mcp_server.py"],
"env": { "VRF_BASE_URL": "https://asheraistudios.duckdns.org" }
}
}
}
The tool
- Name:
verify_url - Input:
{ "url": "https://example.com" } - Output: human-readable summary + the full proof packet as
structuredContent(+isErrorwhen the observation itself failed). - Trust model: the packet carries an Ed25519 signature and the signer's
public key. Fetch the canonical public key from
https://asheraistudios.duckdns.org/keyand verify offline — you never have to trust the server, the transport, or this wrapper.
Honesty notes
- Free while the operator is learning what people use it for. No payments, no accounts, no API keys in v1.
- Rate limit: 30
POST /verifyper minute per IP (429 +Retry-After). - Cost to the operator per verification is a small fraction of a cent; abuse will get rate-limited, not billed to you.
Test it
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"t","version":"0"}}}' \
'{"jsonrpc":"2.0","method":"notifications/initialized"}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
'{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"verify_url","arguments":{"url":"https://example.com"}}}' \
| VRF_BASE_URL=https://asheraistudios.duckdns.org python3 mcp_server.py
The last response's structuredContent is a real signed packet — verify its
signature against the public key to prove the whole chain.
Metadata
Release files for verify-atom-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| verify_atom_mcp-0.1.0.tar.gz | 5.8 kB | Without provenance | Details for verify_atom_mcp-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| verify_atom_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for verify_atom_mcp-0.1.0-py3-none-any.whl |
Total release size: 12.0 kB
Release files / verify_atom_mcp-0.1.0.tar.gz
| Download URL | verify_atom_mcp-0.1.0.tar.gz |
|---|---|
| Size | 5.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a80c889e65a3da0c3b741ec1f7615941ee9255475a2de02c8427dab77de8198d
|
|
BLAKE2b-256 checksum How to use checksums |
012642c8c2ac7ff75fc0cc2f157bf7f1901f461a6d919eb016b88cac93c3d3e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / verify_atom_mcp-0.1.0-py3-none-any.whl
| Download URL | verify_atom_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
af755f08852137ded6fe304b9b2ddef0da61b74d6cdfd7ff3b11857cddde8531
|
|
BLAKE2b-256 checksum How to use checksums |
3db207835ce4c2e562cffe558fc97eb3eb0d0ab01c0121213c85de5863178d8f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for verify-atom-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.