FaultKey · CausalLayer
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Deterministic AI-liability attribution: signed, Bitcoin-anchored vendor/deployer/user fault split.
| Author | io.github.smq9sn5jck-cloud |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 980 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"FaultKey · CausalLayer": {
"url": "https://causallayer-mcp-demo.zykm9qkk7j.workers.dev/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (10)
submit_incidentSubmit an AI incident for deterministic causal liability attribution. Returns a signed CausalCertificate, per-agent liability allocation, evidence-chain completeness, regulatory mapping, and (where keys are configured) a Bitcoin-anchored proof. Cost: 50 credits. Three guardrails apply: PII scan, deterministic-only acknowledgement, and minimum evidence.
Parameters:
title(required) — stringagents(required) — arrayevents(required) — arraydeterministic_only(required) — boolean — G2: Must be true. Acknowledges CausalLayer is deterministic and not LLM-based.category— stringcurrency— stringseverity— stringdescription— stringjurisdiction— stringpii_acknowledged— boolean — G1: Set to true ONLY if caller has confirmed PII handling is permitted by their data agreement. False payloads with detected PII will be rejected.financial_impact_cents
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
verify_certificateIndependently verify a CausalCertificate end-to-end (signature, Merkle integrity, issuer status against the registry). Cost: 1 credit. In production env, certificates from non-active issuers are rejected.
Parameters:
certificate(required) — object — CausalCertificateV1 object as returned by submit_incident.certificate
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
verify_certificate_recomputeIndependently re-derive a CausalCertificate from its canonical input and compare byte-for-byte against the claimed certificate. This is the strongest verification path: it requires no trust in the issuer or signing key. Cost: 1 credit (same price as verify_certificate). Returns PASS only if every checked field (certificateId, request_hash, merkleRoot, verdict, causalGraph, fourFactorScoring, deviationTaxonomy, euRuleOverlay, cascadeAttenuation, damages, underwriting) matches identically.
Parameters:
certificate(required) — object — The CausalCertificate object claimed by the issuer.canonicalInput(required) — object — The original incident body that produced the certificate — the same JSON originally posted to submit_incident or submit_otel_trace.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
submit_otel_traceConvert an OpenTelemetry OTLP JSON trace into a FaultKey incident and return the same deterministic CausalCertificate as submit_incident. Each span becomes an event; service.name groups spans into agents; W3C trace_id and span_id propagate as evidence pointers on the causal graph edges. Cost: 50 credits (same as submit_incident). Three guardrails apply: PII scan, deterministic-only acknowledgement, and minimum evidence (auto-satisfied when the trace has at least 1 span).
Parameters:
title(required) — stringotlp(required) — object — OTLP JSON payload with resourceSpans[]. See https://opentelemetry.io/docs/specs/otlp/#json-protobuf-encodingdeterministic_only(required) — boolean — G2: Must be true. Acknowledges CausalLayer is deterministic.category— stringcurrency— stringjurisdiction— stringpii_acknowledged— boolean — G1: Set to true ONLY if PII handling is permitted by your data agreement. OTLP traces frequently leak user/session ids in attributes.financial_impact_cents
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
simulate_remediationCounterfactual remediation simulator. Given a certificate's verdict + fourFactorScoring + agents and a list of remediation IDs from the FK-METHOD-2026-003 catalog, return the apportioned shares each remediation would have produced (in isolation) and the composite shares if they all stack. Every remediation cites a specific statute or standard. GET /api/v2/remediation/catalog for the list of IDs. Cost: 1 credit (same price as verify_certificate). Pure deterministic; same inputs produce a byte-identical result.
Parameters:
verdict(required) — object — The verdict block from the CausalCertificate.fourFactorScoring(required) — object — The fourFactorScoring block from the CausalCertificate.agents(required) — array — Agent registry (id + type) so the simulator can map remediation targetType to specific party ids.remediations(required) — array — List of remediation IDs from the catalog (e.g. vendor_adversarial_eval_suite, deployer_human_in_loop). Each may optionally pin appliedToParty to a specific agent id.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
query_jurisdiction_overlayMulti-jurisdiction overlay (FK-METHOD-2026-004). Given a canonical attributable apportionment (party-id -> share), the union of all jurisdiction role tags on each actor, and the union of jurisdiction-specific flags, return side-by-side post-overlay shares for AU, EU, US, UK, CA (or a chosen subset) with the specific rules that fired in each, citation URLs, and a parties × jurisdictions matrix. v1 ships full implementations for AU and EU; US/UK/CA are research stubs marked `is_stub: true`. Use GET /api/v2/jurisdiction/catalog to discover support and stub status. Cost: 1 credit. Pure deterministic.
Parameters:
attributable(required) — object — Canonical pre-overlay apportionment as { party_id: share }. Sum should approximate 1.0; the function renormalises within tolerance.actors(required) — array — All actors with the union of jurisdiction-specific role tags. EU and AU tags coexist on the same actor record.flags(required) — object — Union of jurisdiction-specific flags. AI Act / PLD flags drive the EU overlay; ACL / CPS 230 / VAISS flags drive the AU overlay.jurisdictions— array — Optional subset to compute. Defaults to all five.primaryJurisdiction— string — Engine-level jurisdiction string (e.g. 'EU', 'DE', 'AU'). Used by the EU gate to decide engagement.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
evaluate_prospective_responseDeterministic prospective-evaluation gate (FK-METHOD-2026-006). Pass a ProposedAction BEFORE the agent delivers a response; receive one of three verdicts: 'allow', 'require_revision' (with specific factor-keyed directives), or 'block'. Uses the same four-factor engine that issues post-hoc certificates, so a single incident chains: prospective_pre_image -> response -> certificate -> anchor. This is a policy gate on structured action metadata, NOT a content safety classifier on raw prose. Thresholds are per-jurisdiction (EU strictest, US most permissive); read via GET /api/v2/gate/thresholds. Overrides are allowed but REQUIRE a governance rationale so the audit trail is complete. Cost: 1 credit. Pure deterministic.
Parameters:
action(required) — object — The structured ProposedAction to evaluate.overrides— object — Optional per-call threshold override. Rationale REQUIRED for audit.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_anchor_statusReturn the index of all CausalLayer Tessera anchor batches, or one batch's full JSON (signed Merkle root, leaves, OpenTimestamps proof reference). FREE.
Parameters:
version— string — Optional anchor version, e.g. '2026-05-16-v1.6.4-simulation-calibration'.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
query_issuer_registryReturn the CausalLayer issuer registry, or one issuer record. The registry lists all trusted public-key fingerprints, key algorithms, validity windows, and the anchor-log repo for each active issuer. FREE — no API key required.
Parameters:
issuer_id— string — Optional issuer id, e.g. 'causallayer-prod-2026-q2'. If omitted, returns the full registry.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
extract_incidentClaude-powered structured extractor. Parses unstructured text (news articles, court filings, emails, PDFs, incident reports, logs) into the typed JSON schema required by submit_incident. Returns a ready-to-submit incident object with extracted agents, events, severity, jurisdiction, and financial impact. NOTE: This is a pre-processing convenience tool — the deterministic scoring engine itself remains LLM-free. Cost: 10 credits.
Parameters:
text(required) — string — Unstructured text to extract from. Can be a news article, court filing, incident report, email, PDF text, log output, or any description of an AI incident.context_hint— string — Optional hint about the source type (e.g., 'court filing', 'news article', 'internal incident report') to improve extraction accuracy.jurisdiction_hint— string — Optional ISO country code hint if the jurisdiction is known (e.g., 'AU', 'US', 'EU').
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.