Crovia MCP
An MCP server that provides tools to query the TACET public log of AI training-data disclosure, verify silence proofs, and inspect Crovia Seals. It allows agents to look up model records, search the catalog, retrieve silence proofs, and verify cryptographic seals anchored in Bitcoin.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://croviatrust.com/mcpWhat its tools do
8 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to croviatrust.com ·
- Passed Endpoint is on the registry namespace domain ·
- Warning Advertises resources/templates/list but does not implement it
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Verify silence proofs for specific AI models
- Look up training data disclosure records
- Search the model catalog for specific IDs
- Verify cryptographic seals and anchors
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- crovia 2.0.1
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 8 advertised
- Resources
- 5 advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
8 advertised
crovia_status — Live TACET totals
Live totals at this moment: epochs closed, epochs anchored in Bitcoin, models on the map, snapshot counts, signed silence proofs, and a pointer to the longest verifiable silence. No parameters. This is not a weekly Silence Report, not one model's record, and not a proof bundle. Reads published files only.
{
"type": "object",
"properties": {},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}lookup_model — Look up one model
One model's observation: latest verdict, negative snapshots, anchored epochs, silence proof pointer, archive silence, badge and record URL. Required model is a Hugging Face id, org/name, for example Qwen/Qwen3-32B. An empty model is an error. An exact id is used; otherwise one case-insensitive substring match is accepted, and several matches return candidates instead of a verdict. This is not a catalog page, not the weekly report, and not the seal bytes. Reads published files only.
{
"type": "object",
"required": [
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Hugging Face model id, org/name. Required. Empty is an error. Example: Qwen/Qwen3-32B."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}search_models — Page of model ids
A page of observed model ids whose id contains query, compared case-insensitively, in catalog order, not a ranking. query omitted or empty matches the whole catalog and still returns at most limit rows. limit follows the historical rule: a missing, empty, zero or other falsy value is 25; any value int() accepts is then clamped into 1..100 (500 becomes 100, a negative becomes 1); a value int() cannot parse is an error and nothing is searched. returned and its compatibility alias count are the rows in this page. matched is how many ids match before the limit. catalog_total and its compatibility alias total_records are every record in the catalog, matching or not. limit is the limit actually applied. count is not the match count, and total_records is not the match count. This is not a verdict and not a proof. Reads published files only.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 25,
"description": "Page size. Omitted, empty, 0 or any other falsy value means 25. A value int() accepts is clamped into 1..100: 500 is fetched as 100 and a negative as 1. There is no schema minimum or maximum, because those would reject the values the server clamps. A value int() cannot parse is an error and nothing is searched."
},
"query": {
"type": "string",
"description": "Substring of the model id. Omit it, or pass an empty string, to match the whole catalog. The page is still capped by limit."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}get_silence_proof — One silence proof or its bundle
The published silence proof for one model: silence_days, observed window, epochs, seal id, URL, and how to verify it. model omitted or empty returns the proof index, not a bundle. include_bundle defaults to false; true attaches the crovia.seal.v1 bundle for that one model and does nothing on the index. This is not the live totals and not the weekly report. Reads published files only.
{
"type": "object",
"properties": {
"model": {
"type": "string",
"description": "Hugging Face model id. Omit it, or pass an empty string, to receive the proof index instead of one proof."
},
"include_bundle": {
"type": "boolean",
"default": false,
"description": "Default false. True includes the seal bundle for the one model. Ignored when model is omitted or empty."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}verify_seal — Verify a seal or proof
Check a crovia.seal.v1 object or a wrapped TACET silence proof: signature, canonical bytes, bindings, and per-epoch non-inclusion paths. Pass seal as a JSON object or a JSON string, or url as an https://croviatrust.com/ address. With neither, the call is an error. Supplying url fetches that URL over the network. check_anchors defaults to false; true also checks the drand round bytes and the Bitcoin anchors over the network. A seal object with check_anchors false or omitted is checked from that object alone. This tool can reach the network, so it is not a closed-world call.
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "https://croviatrust.com/ URL of a JSON seal. Any other host is rejected. Fetching it uses the network."
},
"seal": {
"type": [
"object",
"string"
],
"description": "The seal or wrapped proof, as a JSON object or a JSON string. Omit it when url is set."
},
"check_anchors": {
"type": "boolean",
"default": false,
"description": "Default false. True checks the drand round and the Bitcoin anchors over the network. False does not."
}
}
}{
"readOnlyHint": true,
"openWorldHint": true
}silence_report — Weekly Silence Report
One published weekly Silence Report, or the latest report index. week is an ISO week YYYY-Www, for example 2026-W38. Omit week, or pass an empty string, to receive the latest index rather than one week's facts. A week that is not YYYY-Www is an error. A week with no published file is an error and names the index. This is not the live status and not one model's proof. Reads published files only.
{
"type": "object",
"properties": {
"week": {
"type": "string",
"description": "ISO week YYYY-Www, for example 2026-W38. Omit it, or pass an empty string, for the latest report index."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}explain — Definitions
The definition of one Crovia term. Allowed terms: tacet, silence, lacuna, seal, epoch, pnx, predicate, canon. Omit term, or pass an empty or blank string, to receive every definition. Any other value is an error listing those allowed terms, and it does not return the definitions. Use crovia_vs_causari, not explain, to tell the two products apart.
{
"type": "object",
"properties": {
"term": {
"type": "string",
"description": "One of tacet, silence, lacuna, seal, epoch, pnx, predicate, canon. Omit it, or pass an empty string, for every definition. An unknown term is an error."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false
}crovia_vs_causari — Crovia vs Causari
Which product is which. Crovia observes training-data disclosure. Causari is the code-provenance tool. No parameters. Use this, not explain and not crovia_status, when the question is the difference between the two. Reads no catalog.
{
"type": "object",
"properties": {},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}Prompts
Not advertised
Resources
5 advertised
llms.txt — Crovia for language models
Short orientation: what Crovia is, what it publishes, where the files are.
crovia://llms.txtllms-full.txt — Crovia, full context
Complete context for language models.
crovia://llms-full.txtcanon.json — Canon (machine-readable)
Names, URLs, data files, retired paths, forbidden claims.
crovia://canon.jsontacet/latest.json — TACET latest
Latest epoch sheet summary and totals.
crovia://tacet/latest.jsonreport.json — Silence Report facts
Current and last closed week.
crovia://report.json90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-07: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1487 ms
- 95th percentile latency
- 1487 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1487 ms · metadata changed · 8 tool(s), 5 resource(s); warnings: Advertises resources/templates/list but does not implement it
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http crovia-mcp https://croviatrust.com/mcpCodex
codex mcp add crovia-mcp --url https://croviatrust.com/mcpCursor
{
"mcpServers": {
"crovia-mcp": {
"url": "https://croviatrust.com/mcp"
}
}
}Cline
{
"mcpServers": {
"crovia-mcp": {
"type": "streamableHttp",
"url": "https://croviatrust.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"crovia-mcp": {
"type": "http",
"url": "https://croviatrust.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http crovia-mcp https://croviatrust.com/mcpClaude Desktop
https://croviatrust.com/mcpWindsurf
{
"mcpServers": {
"crovia-mcp": {
"serverUrl": "https://croviatrust.com/mcp"
}
}
}Let your agent find its tools
Find servers like Crovia MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other ai and machine learning servers
Do you run Crovia MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.