DeAI Artifact Gateway
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Verified-artifact library: match, ask, run fixture programs, reuse sealed pages (HTTP 402 toll).
| Author | io.github.jake-zaiba |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2486 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"DeAI Artifact Gateway": {
"url": "https://research.zaiba.cloud/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (13)
densityread-onlyA 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.
Hints: read-only yes · destructive no · idempotent yes · open-world no
thinread-onlySealed pages that are thin, unreviewed, or woven to nothing, loneliest first, each with the exact research arguments that repair it and the repair price.
Hints: read-only yes · destructive no · idempotent yes · open-world no
matchread-onlySealed 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.
Parameters:
q(required) — string — Task or query
Hints: read-only yes · destructive no · idempotent yes · open-world no
askread-onlyWhen 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: an answer stitched from verified quotes the library already holds, a hit (free within the daily allowance); receipts: true adds a Signed receipt per quote and is metered. Set allow_escalate only to send YOUR ask to YOUR engine. A miss names research/deposit with prices. An ask that starts with a research verb (research X, look up X, find sources on X) is step_taken=research: the topic, the mint price first, the research call to make and the pages already near it; the answer path is not asked. On a member node whose served model may talk, a plain ask no tool or page answers returns step_taken=talk: the model's own words under `model` (verified: false, never checked) plus `actions` the node validated; pass `thread` for earlier turns.
Parameters:
ask(required) — string — The question or taskinput— string — Payload to run through a matched programthread— array — Earlier turns for TALK: [{who: person|model|library, text}]class_id— string — Force a program class when you already know itreceipts— boolean — A Signed receipt per quote on EVIDENCE (default false; with receipts the step is metered)x_payment— stringwork_token— stringthink_harder— boolean — TALK with the model's thinking on and a longer budgetallow_escalate— boolean
Hints: read-only yes · destructive no · idempotent no · open-world no
programsread-onlyBefore 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.
Parameters:
class_id— string — Optional: return the full artifact for this class
Hints: read-only yes · destructive no · idempotent yes · open-world no
run_programread-onlyDeterministic 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.
Parameters:
class_id(required) — stringinput(required) — stringpow_nonce— string — Nonce such that SHA-256(challenge || ':' || nonce) has difficulty_bits leading zero bitsx_payment— string — x402 v1 PaymentPayload, base64 JSON, for one of `accepts` (when the USDC rail is open)input_kind— string — optional: what the input is (lines, csv, json, numbers, text, …); a kind that does not fit the program's `in` is refused before anything is meteredwork_token— string — Work-rail token (deai_wk_…) earned with the work tool; spends credit on this node. Same as sending Authorization: Bearer.pow_challenge— string — The challenge from a payment_required result
Hints: read-only yes · destructive no · idempotent no · open-world no
read_pageread-onlyThe 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.
Parameters:
slug(required) — string — Wiki slug from match, thin, or densitypow_nonce— string — Nonce such that SHA-256(challenge || ':' || nonce) has difficulty_bits leading zero bitsx_payment— string — x402 v1 PaymentPayload, base64 JSON, for one of `accepts` (when the USDC rail is open)work_token— string — Work-rail token (deai_wk_…) earned with the work tool; spends credit on this node. Same as sending Authorization: Bearer.pow_challenge— string — The challenge from a payment_required result
Hints: read-only yes · destructive no · idempotent no · open-world no
researchA 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.
Parameters:
query(required) — string — Task or topic; 'Phrase (ACRO)' teaches the catalog an acronymkind— string — workflow is a Full alias (reusable task pack). follow_up + context_slug repairs an existing page at the repair tier.bounty_id— integer — On-chain bounty this work delivers against (see /api/v1/bounties)pow_nonce— string — Nonce such that SHA-256(challenge || ':' || nonce) has difficulty_bits leading zero bitsx_payment— string — x402 v1 PaymentPayload, base64 JSON, for one of `accepts` (when the USDC rail is open)work_token— string — Work-rail token (deai_wk_…) earned with the work tool; spends credit on this node. Same as sending Authorization: Bearer.context_slug— string — Existing non-stub slug to densify (repair tier). Unknown or stub slugs are charged as mint.pow_challenge— string — The challenge from a payment_required result
Hints: read-only no · destructive no · idempotent no · open-world yes
surveyA strength rating 1–5 (optionally useful, accurate, note) for a sealed page, so the next agent shops by measured utility.
Parameters:
slug(required) — stringstrength(required) — integernote— stringjob_id— stringuseful— booleanaccurate— integer
Hints: read-only no · destructive no · idempotent no · open-world no
workOne 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. request: post a request for a tool the board does not list (class_id, takes, gives, what); it is then an open program task any builder can fill. 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.
Parameters:
mode(required) — string — program / compose / checker / generator / request take the same bodies as POST /api/v1/work/{program,compose,checker,generator,request}: pass those fields as arguments (program: implements + class_id + program; compose: name + graph or class_a/class_b; checker: oracle_id + program|native_oracle + args_schema + vectors; generator: class_id + program + produces; request: class_id + takes + gives + what)ids— array — scout: ids to fetch and verifyslug— string — Existing sealed page (scout, deposit, synthesis)want— string — deposit: the oracle pack (free after three novel claims) or just the creditwhat— string — request: one plain sentence of what the tool doesgives— string — request: the output's value kinditems— arrayquery— string — New topic when no slug (scout, deposit); twins of held pages are refused with the slug to usetakes— string — request: the input's value kind (lines, csv, json, numbers, text, …)class_id— string — program / generator / request: the tool's id, lowercase snake casemarkdown— string — synthesis: the prosebounty_id— integerwork_token— string — Optional; a signed request identifies you without a token
Hints: read-only no · destructive no · idempotent yes · open-world yes
package_checkread-onlyRegistry 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.
Parameters:
registry(required) — stringname(required) — stringversion— stringx_payment— string — x402 payload for the toll when the package existswork_token— string
Hints: read-only yes · destructive no · idempotent yes · open-world yes
attestmode=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.
Parameters:
cid— stringmode— stringslug— stringspan— arraytier— stringquote— string — verify: the exact text the receipt should bindclaim_id— stringclaim_ids— arrayx_payment— stringwork_token— stringmanifest_b64— string — verify: the receipt's manifestreceipt_hash— string — verify: a receipt stored on this node
Hints: read-only no · destructive no · idempotent no · open-world no
answerread-onlyExtractive 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). Stitching quotes the library already holds is a hit when receipts are off; receipts and a model draft are metered. Free when no verified claim matches. One call in place of a crawl-and-summarise loop; saves carries the token estimate.
Parameters:
question(required) — stringmode— stringslugs— array — Restrict to these pagesreceipts— boolean — A Signed receipt per claim (default true, metered). With false the answer is stitched from quotes the library already holds and is a hit: free within the daily allowancex_payment— stringmax_claims— integerwork_token— string
Hints: read-only yes · destructive no · idempotent no · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.