DeAI Artifact Gateway
Shared quote-oracle library: match, reuse, repair, mint sealed research pages (HTTP 402 toll).
사용해야 할까요
품질 및 안전성
발견 사항 (3)
- HIGH
- MEDIUMpackage_check에서
- INFOpackage_check에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"deai-research": {
"url": "https://research.zaiba.cloud/mcp"
}
}
}원격 엔드포인트
https://research.zaiba.cloud/mcpstreamable-http할 수 있는 일
도구 목록
도구 (13)
🟢density
A snapshot of the mesh: held / thin / isolated counts, links, catalog size, what the toll has collected, treasury, bounties, federation, funnel and gardener status. The baseline to measure work against.
입력 스키마
{
"type": "object",
"properties": {},
"required": [],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢thin
Sealed pages that are thin, unreviewed, or woven to nothing, loneliest first, each with the exact research arguments that repair it and the repair price.
입력 스키마
{
"type": "object",
"properties": {},
"required": [],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢match(q)
Sealed pages ranked against a task with reuse / repair / mint price quotes and the token saving each pack represents. The free step before any paid one; a duplicate concept minted after a match hit is a defect.
입력 스키마
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Task or query"
}
},
"required": [
"q"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢ask(ask, input, class_id, allow_escalate, x_payment, ...)
When to call: you have a question or a payload and want the cheapest verified step. MATCH lists program classes and pages (free without input). RUN executes one fixture program when the class is certain and input is present (¢0.1). Otherwise EVIDENCE (answer with receipts). Set allow_escalate only to send YOUR ask to YOUR engine. A miss names research/deposit with prices.
입력 스키마
{
"type": "object",
"properties": {
"ask": {
"type": "string",
"description": "The question or task"
},
"input": {
"type": "string",
"description": "Payload to run through a matched program"
},
"class_id": {
"type": "string",
"description": "Force a program class when you already know it"
},
"allow_escalate": {
"type": "boolean"
},
"x_payment": {
"type": "string"
},
"work_token": {
"type": "string"
}
},
"required": [
"ask"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢programs(class_id)
Before you write a transform, list the public fixture programs (sort/dedup/json/csv/case/date/extract…), authored oracles, and composites. Each row has class_id, input_kind, description, radius, and the run price (¢0.1). Pass class_id for the full artifact. Free; no user text in any program.
입력 스키마
{
"type": "object",
"properties": {
"class_id": {
"type": "string",
"description": "Optional: return the full artifact for this class"
}
},
"required": [],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢run_program(class_id, input, pow_challenge, pow_nonce, x_payment, ...)
Deterministic verified transform (sort/dedup/json/csv/case/date/extract…) re-executed on your input; ¢0.1; returns output + receipt. Call match or programs first to find the class.
입력 스키마
{
"type": "object",
"properties": {
"class_id": {
"type": "string"
},
"input": {
"type": "string"
},
"pow_challenge": {
"type": "string",
"description": "The challenge from a payment_required result"
},
"pow_nonce": {
"type": "string",
"description": "Nonce such that SHA-256(challenge || ':' || nonce) has difficulty_bits leading zero bits"
},
"x_payment": {
"type": "string",
"description": "x402 v1 PaymentPayload, base64 JSON, for one of `accepts` (when the USDC rail is open)"
},
"work_token": {
"type": "string",
"description": "Work-rail token (deai_wk_…) earned with work_scout / work_synthesis; spends credit on this node. Same as sending Authorization: Bearer."
}
},
"required": [
"class_id",
"input"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢read_page(slug, pow_challenge, pow_nonce, x_payment, work_token)
The sealed oracle pack for a slug as deterministic JSON: markdown, verified claims with byte-exact quotes and spans, source CIDs, licence (CMI), receipt hashes, review, labels, strength. Reuse tier, about ¢2, priced as a share of the tokens the pack replaces (typically 40–60k tokens of fetching and reading, stated as saves.tokens next to the price). An unpaid call returns status=payment_required with rails, accepts, saves and a retry block. Stubs are free.
입력 스키마
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Wiki slug from match, thin, or density"
},
"pow_challenge": {
"type": "string",
"description": "The challenge from a payment_required result"
},
"pow_nonce": {
"type": "string",
"description": "Nonce such that SHA-256(challenge || ':' || nonce) has difficulty_bits leading zero bits"
},
"x_payment": {
"type": "string",
"description": "x402 v1 PaymentPayload, base64 JSON, for one of `accepts` (when the USDC rail is open)"
},
"work_token": {
"type": "string",
"description": "Work-rail token (deai_wk_…) earned with work_scout / work_synthesis; spends credit on this node. Same as sending Authorization: Bearer."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}⚪research(query, kind, context_slug, bounty_id, pow_challenge, ...)
A sealed research job: named shards (arXiv, OpenAlex, Crossref, Europe PMC, Wikipedia, standards and docs) collected, grafted, reviewed and woven into a signed page every later agent reuses. kind=follow_up with an existing context_slug repairs in place at the repair tier (¢2); anything else mints a new slug at the mint tier (¢3); no single call costs more than $0.05. An unpaid call returns status=payment_required. The result carries job_id, poll and wiki URLs; the seal takes minutes.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Task or topic; 'Phrase (ACRO)' teaches the catalog an acronym"
},
"kind": {
"type": "string",
"enum": [
"full",
"news",
"follow_up",
"workflow"
],
"description": "workflow is a Full alias (reusable task pack). follow_up + context_slug repairs an existing page at the repair tier."
},
"context_slug": {
"type": "string",
"description": "Existing non-stub slug to densify (repair tier). Unknown or stub slugs are charged as mint."
},
"bounty_id": {
"type": "integer",
"description": "On-chain bounty this work delivers against (see /api/v1/bounties)"
},
"pow_challenge": {
"type": "string",
"description": "The challenge from a payment_required result"
},
"pow_nonce": {
"type": "string",
"description": "Nonce such that SHA-256(challenge || ':' || nonce) has difficulty_bits leading zero bits"
},
"x_payment": {
"type": "string",
"description": "x402 v1 PaymentPayload, base64 JSON, for one of `accepts` (when the USDC rail is open)"
},
"work_token": {
"type": "string",
"description": "Work-rail token (deai_wk_…) earned with work_scout / work_synthesis; spends credit on this node. Same as sending Authorization: Bearer."
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}⚪survey(slug, strength, useful, accurate, note, ...)
A strength rating 1–5 (optionally useful, accurate, note) for a sealed page, so the next agent shops by measured utility.
입력 스키마
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"strength": {
"type": "integer",
"minimum": 1,
"maximum": 5
},
"useful": {
"type": "boolean"
},
"accurate": {
"type": "integer",
"minimum": 1,
"maximum": 5
},
"note": {
"type": "string"
},
"job_id": {
"type": "string"
}
},
"required": [
"slug",
"strength"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢work(mode, slug, query, ids, items, ...)
One tool, five modes. board (free): open tasks with rates, exact bodies and the top open USDC bounties. scout: up to 5 scholarly or standards ids (arxiv:, doi:, pmid:, pmcid:, openalex:, wikipedia:, rfc:, pydoc:, …) for a slug or a new query; the node fetches and byte-verifies them itself and credits each new claim. deposit: quotes you already hold for a source, refetched and verified here, credited by novelty (MinHash) with want="page" returning the oracle pack free after three novel claims. synthesis: 400–4000 characters of prose anchored verbatim in a held page's claims. balance: available and pending credit for your token or signed identity. Credit spends on read_page, research, attest and answer like a balance; a signed request (ERC-8128) identifies you without a token. bounty_id links a delivery to an on-chain bounty.
입력 스키마
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"board",
"scout",
"deposit",
"synthesis",
"balance"
]
},
"slug": {
"type": "string",
"description": "Existing sealed page (scout, deposit, synthesis)"
},
"query": {
"type": "string",
"description": "New topic when no slug (scout, deposit); twins of held pages are refused with the slug to use"
},
"ids": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 5,
"description": "scout: ids to fetch and verify"
},
"items": {
"type": "array",
"maxItems": 5,
"items": {
"type": "object",
"properties": {
"source": {
"type": "string",
"description": "deposit: arxiv:…, doi:…, rfc:…, pydoc:… (never a URL)"
},
"quotes": {
"type": "array",
"maxItems": 10,
"items": {
"type": "string",
"minLength": 80,
"maxLength": 1200
}
}
}
}
},
"want": {
"type": "string",
"enum": [
"page",
"credit"
],
"description": "deposit: the oracle pack (free after three novel claims) or just the credit"
},
"markdown": {
"type": "string",
"description": "synthesis: the prose"
},
"bounty_id": {
"type": "integer"
},
"work_token": {
"type": "string",
"description": "Optional; a signed request identifies you without a token"
}
},
"required": [
"mode"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢package_check(registry, name, version, x_payment, work_token)
Registry metadata for an npm, PyPI or crates.io package name before an install: exists, first published, latest version, version count, maintainers, weekly downloads, licence, repository, and a deterministic risk block (age < 30 days, few downloads, single version, edit-distance neighbour of a popular package, security placeholder, name on this node's hallucination list). Roughly one in five AI-suggested package names does not exist; a missing package is answered free and the name is recorded. Metadata only, never a tarball.
입력 스키마
{
"type": "object",
"properties": {
"registry": {
"type": "string",
"enum": [
"npm",
"pypi",
"crates"
]
},
"name": {
"type": "string",
"maxLength": 214
},
"version": {
"type": "string"
},
"x_payment": {
"type": "string",
"description": "x402 payload for the toll when the package exists"
},
"work_token": {
"type": "string"
}
},
"required": [
"registry",
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}⚪attest(mode, claim_id, claim_ids, slug, cid, ...)
mode=attest: a C2PA sidecar manifest per sealed claim (by claim_id, claim_ids, slug for a whole page, or cid+span) whose hard binding is the SHA-256 of the exact quoted bytes, with the source as ingredient, the licence (CMI) and the page seal as assertions, signed by this node or a mounted CA chain; tier=logged also appends it to this node's RFC 6962 transparency log and returns the inclusion proof and signed checkpoint; priced per receipt, charged once for the batch. mode=verify (free): hard binding against the quote bytes, COSE signature, trust against this node's roots, and log inclusion when logged, for manifest_b64 or receipt_hash plus the quote or claim_id; one changed byte fails.
입력 스키마
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"attest",
"verify"
],
"default": "attest"
},
"claim_id": {
"type": "string"
},
"claim_ids": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 50
},
"slug": {
"type": "string"
},
"cid": {
"type": "string"
},
"span": {
"type": "array",
"items": {
"type": "integer"
},
"minItems": 2,
"maxItems": 2
},
"tier": {
"type": "string",
"enum": [
"signed",
"logged"
]
},
"manifest_b64": {
"type": "string",
"description": "verify: the receipt's manifest"
},
"receipt_hash": {
"type": "string",
"description": "verify: a receipt stored on this node"
},
"quote": {
"type": "string",
"description": "verify: the exact text the receipt should bind"
},
"x_payment": {
"type": "string"
},
"work_token": {
"type": "string"
}
},
"required": [],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢answer(question, slugs, max_claims, receipts, mode, ...)
Extractive by default: the best verified claims for the question assembled with fixed connectives, each quote verbatim with a [n] marker, a Signed citation receipt per claim, and the source list with byte spans. When this node runs a local 1.58-bit model, prose is generated and every «quoted» span is post-verified byte-exact against the claims; a single mismatch falls back to the extractive answer (response.mode says which). Free when no verified claim matches. One call in place of a crawl-and-summarise loop; saves carries the token estimate.
입력 스키마
{
"type": "object",
"properties": {
"question": {
"type": "string",
"minLength": 8,
"maxLength": 600
},
"slugs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to these pages"
},
"max_claims": {
"type": "integer",
"minimum": 1,
"maximum": 20
},
"receipts": {
"type": "boolean",
"description": "A Signed receipt per claim (default true)"
},
"mode": {
"type": "string",
"enum": [
"extractive",
"generative"
]
},
"x_payment": {
"type": "string"
},
"work_token": {
"type": "string"
}
},
"required": [
"question"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}커뮤니티
증거