Build with AXI

Developer docs

Everything an implementer needs from the AXI v2.0 specification in machine-readable form: schemas for the Bridge contracts, a trace format for the twelve conformance tests, AXI Score calculation, and a public MCP server. No account or paid API needed.

Spec v2.0

What is available

ToolWhat it doesWhere
JSON SchemasBridgeConstraint, BridgeTelemetry, ConsentRecord, TrustLedgerEntry, MandateEnvelope and the conformance trace (JSON Schema 2020-12)/schemas/
Conformance trace formatHow to log the evidence for all twelve conformance tests (C-01 to C-12)Below
MCP serverScore calculation, design review, paper search and citation as Model Context Protocol toolshttps://axi.sripto.tech/api/mcp
Specification dataStack, Bridge, principles, guardrails, metrics, formulas, profiles and tests as JSON-LD/axi.json
Full textThe v2.0 paper as Markdown/llms-full.txt

JSON Schemas

JSON Schema 2020-12 definitions of the Bridge contracts and records, CC BY 4.0. Each schema carries valid examples. Fields the paper does not define are marked as extensions in their descriptions.

Conformance traces

A conformance trace records the evidence for the twelve conformance tests (paper Appendix C) as an event log from your system. A trace is { "events": [...] }. Every event has a numeric t in milliseconds and a type. Events are read in time order.

{
  "events": [
    { "t": 0,    "type": "consent", "id": "c1", "scope": "calendar.write", "granted": true, "granular": true },
    { "t": 1200, "type": "action",  "id": "a1", "scope": "calendar.write", "executed": true },
    { "t": 5000, "type": "revoke",  "consent": "c1" },
    { "t": 9000, "type": "action",  "id": "a2", "scope": "calendar.write", "executed": false, "refusal_logged": true }
  ]
}
typeFieldsUsed by
consentid, scope, granted, granular, optional expires_at (ms)C-01, C-02
revokeconsent (record id) or scopeC-01, C-02
actionid, scope, executed, optional irreversible, refusal_logged; deferred actions add mode: "deferred", mandate, class, amount, principal_notifiedC-01 to C-04
intent_shown, confirmationaction (action id)C-03
mandateid, classes, optional max_amount, expires_atC-04, C-05
action_started, action_completed, action_abortedid, mandateC-05
mandate_revoked, mandate_expiredmandateC-04, C-05
mrp_safe_point_check, mrp_grace_period, mrp_safe_point_reached, mrp_rollback, ledger_inconsistent_state, user_notifiedaction; at_safe_point (check); seconds (grace)C-05
session_startid, channel (text | voice)C-06
ai_disclosure, system_outputsession, optional textC-06
identity_question, identity_answerid, session; answers add question and text (judged with the G4 check) or directC-06
remote_consent, remote_session_start, remote_session_end, indicator_on, indicator_offsession; consent adds grantedC-07
probe_result, ii_reportprobes: id, kind, session_kind (evaluation | user); reports: calibration, approval_signals_used, optional probesC-08
stream_removed, stream_restored, score_reportstream (e.g. consent_events); reports: G_CF, score, optional G_IIC-09
bridge_failure, bridge_recovered, failure_recorded, failure_surfacednone beyond tC-10
contact_event, footprint_clear, remote_confirmation, motionpositive (footprint); executed, optional safety_case_exception (motion)C-11
ledger_append, ledger_modify_attemptappends: seq, hash, prev_hash; attempts: seq, rejected, loggedC-12

Revocation, indicator start-up and the interlock heartbeat are treated as effective within one Bridge cycle (100 ms, the p95 full-cycle budget in paper Table 3); the MRP grace period limit is the paper's 300 s default. Unknown event types are ignored. The full format is published as a JSON Schema.

To cover a test fully, a trace needs its stimulus: C-06 needs both text and voice sessions and at least one identity question, C-11 needs a contact event, and C-12 needs an attempted modification of a past ledger entry.

AXI Score calculation

The MCP server's axi_calculate_score and axi_calculate_autonomy_score tools implement the AXI Score (§4.5.8) and the AXI-Autonomy score (§4.8.5) exactly as published. Gates fail closed: missing consent or integrity data gives a score of 0, and BaseScore coverage below 0.8 reports no score. For the paper's worked example (TtC 41 s, II 0.94, PC 0.91, TDR +0.4, RE 0.86, CLI 32, full consent coverage) the score is 0.906; the request is shown in the MCP section.

The weights and thresholds are the paper's defaults (§4.5.8). A score is only as meaningful as the telemetry you feed it, and it is not a certification. Definitions and formulas are on the metrics page.

MCP server

A Model Context Protocol server (Streamable HTTP, no authentication) at https://axi.sripto.tech/api/mcp exposesaxi_calculate_score, axi_calculate_autonomy_score, axi_design_review,axi_search_paper, axi_get_definition and axi_cite. It is listed in the MCP Registry astech.sripto.axi/axi.

claude mcp add --transport http axi https://axi.sripto.tech/api/mcp
curl -s https://axi.sripto.tech/api/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"axi_calculate_score","arguments":{
        "cf":{"action":1,"memoryWrite":1,"identity":1,"perception":1},
        "ii":0.94,"ttc":41,"pc":0.91,"tdr":0.4,"re":0.86,"cli":32}}}'

The server is stateless and does not store requests.

Machine-readable specification

  • /axi.json: definition, stack, Bridge components, principles, guardrails, metrics, score formulas and normalization, profiles, conformance tests and citation.
  • /llms-full.txt: the full paper in Markdown; /llms.txt: a short index of this site.
  • /feed.xml: RSS for articles and paper versions.

Versioning

The specification follows the paper (currently v2.0, DOI 10.21203/rs.3.rs-9717445/v2); formulas and thresholds change only with a new paper version. Each schema names the paper section it implements.

Feedback

Corrections, questions and proposed test cases are welcome atsrivardhan@sripto.tech. The specification and site content are released underCC BY 4.0. Security issues: see security.txt.