RCO-A2A - Regulatory Compliance Objects

io.github.greencore-solutions由 GitHub 帳號 greencore-solutions 發布v1.0.2更新於 Nov 2, 2026

Signed, deterministic compliance state per object per jurisdiction, resolved upstream

已驗證Streamable HTTP可網頁執行開發者工具安全與監控商業與電商

概覽

AI 產生的概覽

Record of Cleared Orders 的遠端 MCP 伺服器:為已放行的代理訂單寫入具簽章、雜湊鏈結的回執,並依 decision ID 驗證回執。

可以做什麼
  • 寫入已放行訂單的回執,以每位寫入者專屬的 Bearer 權杖驗證,回傳 decision ID 且對同一 ID 具冪等性
  • 依 decision ID 公開驗證回執,回傳回執本身、其在鏈上的位置、簽章以及用來核對的金鑰
  • 檢視雜湊鏈:每筆回執都與前一筆雜湊相連,並由 Ed25519 辦公室金鑰簽署
  • 讀取早期帳本時期的回執,這些回執帶有不同的金鑰 ID、空簽章,以及保存原始雜湊的機密帳本交易
適用情境
當助理或代理流程需要記錄某個閘門已放行訂單,並產生可驗證、防竄改的回執時使用;也適合需要查核既有回執及其鏈上位置的情況。
執行需求
遠端 streamable HTTP 端點,不需本機套件或執行環境。寫入回執需要 Authorization Bearer 寫入者權杖,每位寫入者一組。驗證為公開操作。需要能連線至該端點與公開金鑰集。
安裝前請注意
寫入工具需以 Authorization Bearer 標頭送出寫入者權杖,應依寫入者分別保管,避免放入共用設定。寫入會對共用帳本追加僅增不改的紀錄,出錯後無法修改或刪除。回執與驗證資料可依 decision ID 公開取得,帳本由營運方持有並複製至其儲存空間。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 RCO-A2A - Regulatory Compliance Objects,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.greencore-solutions%2Frco-a2a/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "rco-a2a-regulatory-compliance-objects": {
      "type": "http",
      "url": "https://mcp.rco-a2a.ai/mcp"
    }
  }
}

README

RCO-A2A — Record of Cleared Orders

RCO is the Record of Cleared Orders. A receipt is written when a gate clears an agentic order:

{decision_id, gtin, market, actor_class, rule_version, cleared_at, writer, prev_hash, hash, sig, kid}

Each receipt is hash-chained to the one before it and signed by the office key. Two tools, nothing else:

  • write_receipt — authenticated (Authorization: Bearer <writer token>, one token per writer), returns decision_id. Idempotent on decision_id.
  • verify_receipt(decision_id) — public, returns the receipt, its chain position, its signature and the key to check it.

Door: https://mcp.rco-a2a.ai/mcp (Model Context Protocol, streamable HTTP, stateless, JSON-RPC 2.0). Page and kit: https://rco-a2a.ai/. Verify URL: https://rco-a2a.ai/receipts/{decision_id}. Ledger held by the Agentic Private Office.

The chain

  • hash = sha256: + hex of SHA-256 over the canonical JSON of {actor_class, cleared_at, decision_id, gtin, market, prev_hash, rule_version, writer} — keys sorted, no whitespace, nulls kept.
  • The first receipt's prev_hash is sha256: + 64 zeros.
  • sig = Ed25519 (EdDSA) over the UTF-8 bytes of the hash string, base64url. kid names the key on https://rco-a2a.ai/.well-known/jwks.json (rco-office-2026-10).
  • Receipts loaded from the ledger era (2026-10-15 → 2026-10-27) carry kid gsc-rco-2026-08, sig null, and the Azure Confidential Ledger transaction that holds their original hash. Fields the ledger never held are null.

Connect

MCP client configuration (any client that speaks streamable HTTP):

json
{ "mcpServers": { "rco-a2a": { "type": "streamable-http", "url": "https://mcp.rco-a2a.ai/mcp" } } }

Verify one receipt from a shell:

bash
curl -s https://mcp.rco-a2a.ai/mcp -H 'content-type: application/json' -H 'accept: application/json' \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"verify_receipt","arguments":{"decision_id":"dec_b73fe75bff87ef889d8ca304"}}}'

or GET https://rco-a2a.ai/receipts/dec_b73fe75bff87ef889d8ca304.

Check a signature (Python):

python
import json, base64, requestsfrom cryptography.hazmat.primitives.asymmetric.ed25519 import Ed25519PublicKeyr = requests.get("https://rco-a2a.ai/receipts/" + DECISION_ID).json()k = next(k for k in requests.get("https://rco-a2a.ai/.well-known/jwks.json").json()["keys"] if k["kid"] == r["receipt"]["kid"])pad = lambda s: s + "=" * (-len(s) % 4)Ed25519PublicKey.from_public_bytes(base64.urlsafe_b64decode(pad(k["x"]))).verify(base64.urlsafe_b64decode(pad(r["receipt"]["sig"])), r["receipt"]["hash"].encode())

Errors

Typed, inside the tool result (isError: true): not_authorised · invalid_receipt · invalid_decision_id · not_found · store_unavailable · store_error · chain_contention.

Source

worker/ — the Cloudflare Worker (index.js routes and kit, mcp.js the two tools, chain.js the record and its chain, export.js the nightly copy to the office's S3 bucket). schema.sql — the D1 table, append-only (triggers refuse UPDATE and DELETE). public/ — the office page and the five record pages. rails/ — the history loader and the D1 rail. No secret is in this repository.

MIT. © 2026 Agentic KG Holdings.

來源:README.md,提交 f1d7f04

工具

0
SourceWeft 尚未讀取此伺服器的工具。

版本歷史

3
  1. v1.0.2最新Sep 17, 2026
  2. v1.0.1Sep 17, 2026
  3. v1.0.0Sep 16, 2026

評分

已滿足適用檢查項的 85%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分