agenttru.st

Council of AI — Measurement Agent bronze

board-axis-leaderboards.pages.dev

“Independent AI-governance MEASUREMENT body. Publishes the living GSPC board (Governance · Safety · Provenance · Continuity) — quote totals.lid and totals.public_count from GET /api/gspc, never a typed integer here — with frozen item banks, published scoring code, and an Ed25519-signed board. Measurement only: not certification, not accreditation, no conformity assessment, no money from anything ranked. A2A v1.0 is served at the single interface below; MCP (a different protocol, not A2A) is at https://councilof.ai/mcp.

https://board-axis-leaderboards.pages.dev/.well-known/agent-card.json its card
Checked 6d ago extendedAgentCard, extensions, pushNotifications, streaming

we checked this    the operator says this

Community rating 0 0 up · 0 down — sign in to vote

Verified by agenttru.st

Everything here is a check agenttru.st performed itself. Assurance, protocol, hosting and freshness are in the card above and are not repeated.

Certificate
Issued by Let's Encrypt domain-validated
Valid until 30 Jan 2027 as of our check on 9 Nov 2026. A wildcard certificate: its other hosts are invisible here, because CT logs the wildcard, not them.
Control of the hostname was checked; nothing about who operates it.
Key ECDSA P-256, signed ECDSA-SHA384, issued via YE1 under ISRG Root X2 — classical, as every publicly trusted certificate is today.
Names on this certificate (2)

*.board-axis-leaderboards.pages.dev, board-axis-leaderboards.pages.dev.

Connection
TLS 1.3 · X25519MLKEM768 — post-quantum hybrid key exchange, agreed with our checker on 9 Nov 2026. What this means
DANE / TLSA
Not verified
Discovery
Well-known document
This host also publishes an ARD catalog (/.well-known/ai-catalog.json) declaring 13 resources. The catalog's entries are the publisher's claims, not something agenttru.st verified.
AI use policy
Search: yesAI input: yesAI training: nouse: reference
What this site's robots.txt says about how AI may use its content. Recorded as the operator wrote it, not enforced — these are preferences about use, not access, and agenttru.st only reads the agent's own discovery documents.
AI-facing documents
Publishes /llms.txt — “Council of AI (CSOAI Ltd)” a curated map of the site's content for language models
Fetched from this host during verification. Neither document is how this agent was discovered.
First seen
1 Nov 2026
View verification details
Assurance
bronze Bronze — agent card fetched over HTTPS with a valid certificate
Protocols
A2A verified by handshake or card fetch, not merely advertised
Hosted in
? Unknown · Cloudflare, Inc. (AS13335)
The address did not geolocate — usually anycast hosting, where one address answers from many places at once.
Last checked
6d ago

What this agent says it can do

Declared in the agent's own card. agenttru.st has not tested whether it completes any of these tasks — the operator of board-axis-leaderboards.pages.dev controls every word below.

Signed GSPC Board

SendMessage answers with the live board: totals.lid verbatim from GET /api/gspc and the derived axis rows (axis, family, kind, status, n, separation, leader state). Empty cells stay empty; a withheld leader is a state, not a zero; a fetch failure is UNCHECKABLE, never a fabricated number. Live JSON, recomputable from published rows.

measurementgovernanceverification
Examples it gives
  • SendMessage with Part.data {"skill":"gspc-board","input":{}}
  • Legacy compatibility: one text Part containing exactly "board"
  • GET /api/gspc — the same board, outside A2A

East-West crosswalk & cross-border card

One signed GSPC measurement mapped across EU, UK, US, Illinois, and China GB/T alignment surfaces. Crosswalk v1 JSON, cross-border signed card, and stranger verify at /gspc-verify. Measurement only — determination stays with authorities.

cross-bordercrosswalkmeasurementverification
Examples it gives
  • SendMessage with Part.data {"skill":"east-west-crosswalk","input":{}}
  • GET /api/cross — cross-border signed card

Card status link

A global-board README link plus a card-bound status link: the state of one signed card for one exact subject, never a mark or a grade. The global board never becomes a model score. A model-specific result may render only from a VALID signed cell that names the exact subject and immutable revision; otherwise the subject is UNMEASURED or UNSIGNED. Former id measured-badge is still accepted.

measurementgovernanceverification
Examples it gives
  • SendMessage with Part.data {"skill":"card-status-link","input":{"card":"<64-hex-signed-card-sha256>","subject":"owner/model@<40-or-64-hex-revision>"}}
  • GET /api/badge?card=<signed-card-sha256>&subject=<url-encoded-owner/model@commit-sha>

Benchmark-quality register

Signed register of what third-party AI benchmarks disclose about their own process integrity. Deterministic predicates only — no language model judges. Records are unsolicited; nothing on the register is certification or endorsement.

meta-evaluationbenchmark-qualityreproducibilitygovernance
Examples it gives
  • SendMessage with Part.data {"skill":"benchmark-quality-register","input":{}}
  • GET /api/benchmark-quality

Article 50 provenance detection (free)

Verify a C2PA-style signed manifest for AI-generated content (EU AI Act Article 50) at POST https://councilof.ai/api/detect. Deterministically checks the Ed25519-signed metadata layer and the IPTC/schema.org digitalSourceType; returns AI_MARKED / NOT_AI_MARKED / UNVERIFIABLE with a signed verdict receipt (in-toto/DSSE when a board key is bound). The imperceptible-watermark layer we cannot see is declared, never claimed. Free for all; unrestricted for authorities, media, fact-checkers, researchers and civil society. Not certification.

article-50provenancedetectionverificationc2pa
Examples it gives
  • SendMessage with Part.data {"skill":"article50-detect","input":{"manifest":{"claim":{}}}}
  • POST /api/detect {"manifest":{...},"asset_hash":"<optional-64-hex>"}

EU AI Act screening helper (deterministic, text-only)

POST https://councilof.ai/api/assess with a system description. Keyword matches name the Annex III categories and Article 5 patterns a human should inspect; no model is consulted. It does not establish legal tier, applicability, exceptions or compliance, and an empty description is UNMEASURED, not a low-risk finding. When no signing key is provisioned the report says UNSIGNED out loud.

eu-ai-actscreeningdeterministic
Examples it gives
  • SendMessage with Part.data {"skill":"eu-ai-act-screen","input":{"system":"<what the system does and for whom>"}}
  • POST /api/assess {"system": "<what the system does and for whom>"}

x402 discovery + free door

Agents discover paid artefact rails via GET https://councilof.ai/.well-known/x402.json (mode is reported from runtime env, Base eip155:8453, USDC; amounts from challenge only — no invent price). Catalog GET /api/x402. Free door GET /api/free-door amount 0 settles and charges nothing — proves the rail. Living board GET /api/gspc. Verification stays free at /gspc-verify. payTo is merchant receive, never the signer. Self-settle proves the rail; stranger revenue is separate (do not invent buyers). Coming—Paddle not live. No card-processor invent. Measurement, never certification. Signed offers and receipts are conditional: a 402 carries extensions['offer-receipt'].info.offers[] only when BOARD_SIGN_KEY_PKCS8_B64 is provisioned and an accepts[] entry can be committed; otherwise csoai.offer_receipt names the gap. A signed receipt appears in the X-PAYMENT-RESPONSE SettlementResponse only after facilitator-confirmed settlement when the facilitator names a payer and the board key is available; otherwise receiptG

x402discoverypaymentsmeasurement
Examples it gives
  • SendMessage with Part.data {"skill":"x402-discovery","input":{}} — catalog only; it makes no payment
  • GET https://councilof.ai/.well-known/x402.json
  • GET https://councilof.ai/api/free-door
  • GET https://councilof.ai/api/gspc
  • GET https://councilof.ai/gspc-verify
  • GET https://councilof.ai/api/free-door # inspect csoai.offer_receipt; read extensions['offer-receipt'].info.offers[0].signature only when signed

Estate index (census, not evidence)

SendMessage answers with the estate census summary from GET /api/state -> estate_index, and the full index is GET /interop/master-consolidation-2026-09-16.json with its OpenTimestamps proof beside it. Every artefact CSOAI holds across this repository, Hugging Face, GitHub, Kaggle and Oracle Object Storage, committed to one Merkle root. Read it as a census, never as evidence: INDEXED means we found the artefact and measured nothing against it, and UNSIGNED means a card body exists carrying signature: null awaiting a signing decision. Two leaf classes sit under the root and are never added together: a bytes leaf is the sha256 of an artefact we read, a record leaf is the sha256 of our own note about a remote artefact we did not download and proves nothing about the remote bytes. The root is UNSIGNED, so it records when the set existed and not who assembled it, and it is therefore not Rekor-witnessable the way public/root.json is. It does not replace root.json or the signed card index, each of which commits to it

censusprovenancemerklemeasurement
Examples it gives
  • SendMessage with Part.data {"skill":"estate-index","input":{}} — returns the summary, not the 7,940 rows
  • GET https://councilof.ai/api/state # estate_index.merkle_root and the counts
  • GET https://councilof.ai/interop/master-consolidation-2026-09-16.json
  • GET https://councilof.ai/interop/master-consolidation-2026-09-16.json.ots
  • GET https://councilof.ai/estate/

Measurement capsules: index and verify (free)

Read the latest signed measurement-capsule index, or verify one capsule. {"op":"index"} returns the index root over every published capsule, each batch's Merkle root, capsule count and measurement states, the index's board signature re-verified against the pinned key, and the published anchor states (OpenTimestamps, Rekor, XRPL) — PENDING is never called attested. {"op":"verify","capsule_json":...} recomputes the capsule id, picks the Merkle rule by the capsule's schema (v0.2: RFC 6962 with domain separation) and returns the audit path against the batch root the signed index names: INCLUDED, NOT_INCLUDED, ID_MISMATCH, UNCHECKABLE or NOT_PUBLISHED. The same module as the MCP tools measurement_index and verify_capsule. Verification is free forever. Measurement, not endorsement: no verdict, score or ranking.

measurementmerkleverificationprovenance
Examples it gives
  • SendMessage with Part.data {"skill":"measurement-capsules","input":{"op":"index"}}
  • SendMessage with Part.data {"skill":"measurement-capsules","input":{"op":"verify","capsule_json":"<the capsule's JSON text>"}}
  • GET https://councilof.ai/measurement-capsules/latest.json

Server evidence: every capsule about one endpoint (free)

Trust per server, not totals. Every published measurement capsule about ONE endpoint URL across all batches: MCP contract-parity dimensions (AUTH, PAYMENT, PROTOCOL, TOOLS, VERSION), A2A agent-card signature state, self-parity cells for CSOAI's own doors, and later adapters such as tool drift. Each capsule comes with its measurement_state, observed_at, correction_pointer, limitations, batch Merkle root and an inclusion pointer; measurement-capsules {op: verify} re-derives inclusion. Read from a static per-endpoint shard keyed by sha256 of the normalised URL. An endpoint with no capsule is NOT_MEASURED with an empty list, never an error and never a clean bill. The same module as the MCP tool server_evidence. Measurement, not endorsement.

measurementmcpa2aper-serverevidence
Examples it gives
  • SendMessage with Part.data {"skill":"server-evidence","input":{"endpoint_url":"https://example.com/mcp"}}

Evidence bundle preview: signed cards relevant to one obligation (free)

For ONE obligation (article-50, article-53 GPAI transparency, dora or cra) and an optional subject: the obligation record, its counsel-gate status and the already-signed measurement cards that are relevant to it, read from GET /api/evidence-bundle. The same module as the free MCP tool evidence_bundle_preview. Relevant-to is never a determination: no answer says satisfied or not satisfied, and zero relevant cards is answered EMPTY. Article 53 output is evidence for review, not a legal determination. The assembled OSCAL bundle is the x402 MCP tool evidence_bundle on https://councilof.ai/mcp; this skill never charges. Not a conformity assessment, certification, audit opinion or compliance determination; grants no status.

evidenceoscaleu-ai-actdoracra
Examples it gives
  • SendMessage with Part.data {"skill":"evidence-bundle","input":{"obligation":"article-50"}}
  • SendMessage with Part.data {"skill":"evidence-bundle","input":{"obligation":"article-53","subject":"gpt"}}

GSPC Route: decide a path under your policy (free, decide-only)

GSPC Route (free, decide-only): applies the caller's Cedar policy (presets read-only, local-only, eu-only, no-unmeasured; forbid_providers; allow_kinds) and the fixed GSPC floor to candidates the caller declares, or to the GSPC MCP tools, reads the live board for the named quality axis, and returns the chosen candidate with an unsigned route record (csoai.evidence-event/0.1, profile csoai.route-evidence/0.1). The same module as the free MCP tool route. Routing is not ranking: TIE and UNTESTED are stated as they are, and a caller tie_break decides an unseparated comparison. Nothing is executed or charged; mode execute answers NOT_ENABLED. Measurement, not certification.

routingpolicycedarevidencedecide-only
Examples it gives
  • SendMessage with Part.data {"skill":"gspc-route","input":{"task":"Summarise a public paragraph.","objective":{"quality_axis":"governance"},"candidates":[{"id":"local:llama3.2-3b","kind":"local_gpu","model":"llama3.2:3b","endpoint":"local:ollama/llama3.2:3b","read_only":true},{"id":"local:mistral-7b","kind":"local_gpu","model":"mistral:7b","endpoint":"local:ollama/mistral:7b","read_only":true}]}}

Evidence Delivery: unsigned local draft with human review

Accept one csoai.local-evidence-draft/1.2 declaration whose digest fields differ, whose negative control is DIVERGENT, and whose named MEOK H.I.M. reviewer, decision, notes and local-only boundaries are present. Return a Message containing the declaration and explicit non-claims. Envelope checks only: source bytes are not received or re-hashed. No GSPC measurement, independent verification, certification, signature, anchoring, payment, Task or durable adapter storage is created.

evidencehuman-in-the-loopunsignedlocal-draft
Examples it gives
  • SendMessage with Part.data {"skill":"evidence-delivery","input":{"draft":<csoai.local-evidence-draft/1.2>}}

MEOK Hive axis specialist audits (free, unsigned)

Read the bounded specialist audit for one exact GSPC axis, or the full index with an empty input. Every axis has its own logical MEOK Hive cluster, mission, evidence checks, negative controls, improvement proposals and human reviewer role. RSI is recommendation-only: no ASI claim, no self-modification, no spend, no deployment and no apply operation. Every proposal stays PROPOSED_NOT_APPLIED under a MEOK H.I.M.-compatible HOLD gate. The existing axis_<id> MCP tools remain the live measurement readers; these audits are unsigned analysis of a captured board, not new measurement or certification.

measurementhuman-in-the-loopmeokaudit
Examples it gives
  • SendMessage with Part.data {"skill":"axis-specialist","input":{}}
  • SendMessage with Part.data {"skill":"axis-specialist","input":{"axis":"governance"}}
  • GET /api/axis-specialists/governance

What its catalog declares

From the ARD catalog this host publishes at /.well-known/ai-catalog.json. The operator controls every entry; agenttru.st verified that the catalog exists and parses, and nothing about what the entries say.

GSPC MCP server (registry server.json)

mcp-server-card
https://councilof.ai/.well-known/mcp/server.json

GSPC MCP Server Card (full door)

mcp-server-card

MCP Server Card at the location SEP-2127 reserves (<streamable-http-url>/server-card) for https://councilof.ai/mcp: identity, remote endpoint and protocol revisions. SEP-2127 is a draft in no released MCP spec version; the card says so.

https://councilof.ai/mcp/server-card

GSPC MCP Server Card (free door)

mcp-server-card

MCP Server Card for https://councilof.ai/mcp/free, the read-only door with no sign-in. SEP-2127 is a draft in no released MCP spec version; the card says so.

https://councilof.ai/mcp/free/server-card

Council of AI measurement agent (A2A)

a2a-agent-card
https://councilof.ai/.well-known/agent-card.json

AG-UI run endpoint (descriptor)

json

Descriptor for the AG-UI endpoint: POST https://councilof.ai/api/agui/run streams AG-UI events. Deterministic routing onto the MCP tools; no model in the path.

https://councilof.ai/api/agui

A2UI renderer surface

json

Descriptor for the A2UI surfaces. GET /api/a2ui/board (the board card) and GET or POST /api/a2ui/verify (a verify result) emit A2UI v0.9.1, the current A2UI release; ?version=v1.0 gives the v1.0 Candidate form. POST /api/a2ui/run returns grounded Council OS answers as A2UI v1.0 Candidate NDJSON; GET /api/a2ui/gspc projects the living GSPC state.

https://councilof.ai/api/a2ui

And 7 more entries in the catalog, not shown here.

Technical agent card

Copied from the agent's card. The operator controls these values; agenttru.st has not verified them.

Provider
CSOAI Ltd — what this agent says about itself; other agents claiming the same provider are not thereby related
Protocol
a2a
Version
1.6.0
Extensions
https://councilof.ai/a2a/extensions/signed-receipts/v1/
A DRAFT WE PUBLISH AND DO NOT YET EMIT: this agent attaches no receipt to a response today. Declared because we author the specification, not because the door implements it. Ed25519-signed task-outcome receipts plus a did:web key-trust convention for Agent
https://councilof.ai/.well-known/x402.json
x402 discovery index for the agent pay rail (also GET /api/x402). Free door amount 0 at /api/free-door. Verification stays free. payTo is merchant not payer. Self-settle is not revenue. Settlement is PROVEN on Base mainnet: transaction hashes are published
https://github.com/x402-foundation/x402/blob/69652a69798f0b08f95bef33318896e36e210f7e/spec…
x402 Offer & Receipt extension (v0.6), JWS profile — CONDITIONALLY EMITTED. A signed offer is attached only when BOARD_SIGN_KEY_PKCS8_B64 is provisioned and an accepts[] entry can be committed; otherwise the 402 carries csoai.offer_receipt with the gap a
A2A protocol extensions the card declares. A declared payment extension (AP2, x402) means the operator says the agent can transact, not that agenttru.st has seen it do so.
Card completeness
complete all eight fields required by a2a.proto v1.0
View all card details
Capabilities
extendedAgentCard extensions pushNotifications streaming
Agent card
https://board-axis-leaderboards.pages.dev/.well-known/agent-card.json

Operate this agent and would rather not be listed? Request removal.