crosscheck

Checks for AI agents over x402: review drafts, accept-check handoffs, scan skills before install.

使うべきか

品質と安全性

A
説明の品質
100%
スキーマの完全性
95%
命名の品質
87%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,544トークン数(ツール定義)
~1.9 KB一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.21%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "crosscheck": {
      "command": "npx",
      "args": [
        "crosscheckapi"
      ]
    }
  }
}

実行可能なパッケージ

npmcrosscheckapi0.5.5stdio

リモートエンドポイント

https://crosscheckapi.com/mcpstreamable-http

できること

ツール一覧

ツール(6)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢check(draft, sources, open_review, moltbook_identity, ref)

Independent review of a draft (email, report, summary, PR description) before its human sees it. Returns pass or specific issues with fixes; arithmetic is recomputed in code. With sources, each claim is checked against them and quotes are verified. $0.02. Paid per call in USDC over x402 (Base, or free test USDC on Base Sepolia). An x402-aware MCP client pays automatically: the first call returns the price as an x402 PaymentRequired error, and the retry carries the payment in _meta["x402/payment"]. Without one, use the npm client `npx -y crosscheckapi`, which pays from a wallet you set.

入力スキーマ

{
  "type": "object",
  "properties": {
    "draft": {
      "type": "string",
      "description": "The draft text to review",
      "maxLength": 48000
    },
    "sources": {
      "type": "array",
      "maxItems": 10,
      "description": "Optional texts the draft relies on; turns on grounding",
      "items": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "Source text"
          },
          "title": {
            "type": "string",
            "description": "Optional title"
          },
          "url": {
            "type": "string",
            "description": "Optional URL"
          }
        },
        "required": [
          "text"
        ]
      }
    },
    "open_review": {
      "type": "boolean",
      "description": "Optional: let a qualified outside reviewer take the job (not routed yet; crosscheck's reviewer does it and the receipt says so)"
    },
    "moltbook_identity": {
      "type": "string",
      "description": "Optional: a Moltbook identity token for the free tier, when it is on (a verified Moltbook agent gets free checks with no payment). Not stored. Without a free check left, the price comes back as usual"
    },
    "ref": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$",
      "description": "Optional: the hash of a crosscheck receipt that brought you here. Its wallet earns check credits from your first 90 days of spend."
    }
  },
  "required": [
    "draft"
  ]
}
⚪accept(task, deliverable, reference, payment_tx, payment_network, ...)

Checks work another agent handed back against the task it was given, before you pay, release escrow, or pass it on. Returns accept, reject, or verify_externally with every requirement judged; counts, required JSON fields, and sums are checked in code. Optional payment_tx is verified on chain. $0.03 base. Paid per call in USDC over x402 (Base, or free test USDC on Base Sepolia). An x402-aware MCP client pays automatically: the first call returns the price as an x402 PaymentRequired error, and the retry carries the payment in _meta["x402/payment"]. Without one, use the npm client `npx -y crosscheckapi`, which pays from a wallet you set.

入力スキーマ

{
  "type": "object",
  "properties": {
    "task": {
      "type": "string",
      "description": "The task as given to the other agent"
    },
    "deliverable": {
      "type": "string",
      "description": "What came back"
    },
    "reference": {
      "type": "string",
      "description": "Optional reference material the task points to"
    },
    "payment_tx": {
      "type": "string",
      "description": "Optional transaction hash of the payment for this work"
    },
    "payment_network": {
      "type": "string",
      "description": "Network of payment_tx, for example eip155:8453"
    },
    "ref": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$",
      "description": "Optional: the hash of a crosscheck receipt that brought you here. Its wallet earns check credits from your first 90 days of spend."
    }
  },
  "required": [
    "task",
    "deliverable"
  ]
}
⚪skillcheck(files, fresh, ref)

Security review of a skill or MCP server's files before you install or connect it: read, never run. Free when these exact files were scanned before (looked up by bundle hash); otherwise paid, $0.03 base. Never says safe. Paid per call in USDC over x402 (Base, or free test USDC on Base Sepolia). An x402-aware MCP client pays automatically: the first call returns the price as an x402 PaymentRequired error, and the retry carries the payment in _meta["x402/payment"]. Without one, use the npm client `npx -y crosscheckapi`, which pays from a wallet you set.

入力スキーマ

{
  "type": "object",
  "properties": {
    "files": {
      "type": "array",
      "minItems": 1,
      "maxItems": 200,
      "description": "Every text file of the skill or server, docs included; code rules read all of them",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path inside the skill"
          },
          "content": {
            "type": "string",
            "description": "File content"
          }
        },
        "required": [
          "path",
          "content"
        ]
      }
    },
    "fresh": {
      "type": "boolean",
      "description": "Scan again even when a past scan of these exact files exists"
    },
    "ref": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$",
      "description": "Optional: the hash of a crosscheck receipt that brought you here. Its wallet earns check credits from your first 90 days of spend."
    }
  },
  "required": [
    "files"
  ]
}
⚪skillcheck_lookup(bundle_sha256)

Free. The latest skillcheck of an exact bundle, by its bundle_sha256 (SHA-256 of the canonical JSON of the files sorted by path, each as {path, sha256}).

入力スキーマ

{
  "type": "object",
  "properties": {
    "bundle_sha256": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$"
    }
  },
  "required": [
    "bundle_sha256"
  ]
}
🟢verify_receipt(receipt_hash, receipt, draft, sources, task, ...)

Free. Before trusting work that arrives with a crosscheck receipt, check in code that crosscheck issued it, its signature is valid, what the outcome was, and that it covers exactly the text you were handed. Pass receipt_hash (or the receipt object) plus that text: draft and sources for check, task and deliverable for accept, files for skillcheck, and the verdict if one came with it.

入力スキーマ

{
  "type": "object",
  "properties": {
    "receipt_hash": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$",
      "description": "The receipt's hash (the last part of its /r/ proof link)"
    },
    "receipt": {
      "type": "object",
      "description": "Or the whole receipt object {body, hash, sig}"
    },
    "draft": {
      "type": "string",
      "description": "check: the draft the receipt should cover"
    },
    "sources": {
      "type": "array",
      "description": "check: the sources, if the check had any, in the same order (strings or {text})"
    },
    "task": {
      "type": "string",
      "description": "accept: the task the receipt should cover"
    },
    "deliverable": {
      "type": "string",
      "description": "accept: the deliverable the receipt should cover"
    },
    "files": {
      "type": "array",
      "description": "skillcheck: the skill's files",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path inside the skill"
          },
          "content": {
            "type": "string",
            "description": "File content"
          }
        },
        "required": [
          "path",
          "content"
        ]
      }
    },
    "verdict": {
      "type": "object",
      "description": "The verdict that came with the receipt, to confirm nobody edited it"
    }
  }
}
⚪result(job_id, result_token)

Free. Status, verdict, and signed receipt of an earlier paid call that was still running, using the job_id and result_token it returned.

入力スキーマ

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string",
      "description": "job_id from the paid call"
    },
    "result_token": {
      "type": "string",
      "description": "result_token from the paid call"
    }
  },
  "required": [
    "job_id",
    "result_token"
  ]
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 6 件