Radix Wiki
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Community-maintained knowledge base for Radix DLT — search, read, and contribute wiki pages.
| Author | wiki.radix |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 1452 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Radix Wiki": {
"url": "https://radix.wiki/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (17)
search_wikiread-onlyKeyword search across the Radix Wiki: the first call when you know what you are looking for but not where it lives. Matches titles and body prose, ranked in four tiers: titles starting with the term, titles containing it, literal body hits, then English full-text hits by relevance, which stem words and drop stopwords. Not semantic: one distinctive word beats a sentence. Each row carries a `path`, its size in `chars` and a snippet windowed on the match. Feed the paths to get_pages in one call rather than looping get_page. Narrow with tagPath when a term is common. Defaults: page 1, pageSize 20 (max 50); keep paging while `hasMore` is true.
Parameters:
query(required) — string — Search term, matched against page titles and body textpage— number — 1-based page number (default 1)tagPath— string — Only pages at this tag path, e.g. a path from get_categoriespageSize— number — Results per page (default 20, max 50)
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_pageread-onlyOne page of the Radix Wiki in full: its text, version, update date and metadata. Address it by `path` ("tag/path/slug", exactly the `path` or `url` a listing returns), or by `tagPath` + `slug`; a category's own path reads its hub article. Not a title. For 2 to 20 pages call get_pages, one round trip rather than N. A miss names the nearest pages, so a wrong guess is fixed in one retry. A page's URL with `.md` appended is its markdown. With `blocks: true`, `content` is the stored block array, ids and all, beside the page `id` and its whole `metadata`: read a page this way before editing it, and send its `version` back as the edit's baseVersion.
Parameters:
path— string — The page's whole path, e.g. "developers/scrypto/blueprints". Preferred over tagPath + slug.slug— string — Page slug. Ignored when `path` is set.blocks— boolean — Return the stored blocks rather than prose, for an edittagPath— string — Tag path only ("" for a top-level page). Ignored when `path` is set.
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_pagesread-onlyBatch read: 1 to 20 pages of the Radix Wiki in full in one call, which is how to read search or listing results. Pass `paths` as the listings return them. Paths that do not exist come back in `missing` rather than failing the call, anything past 20 in `remaining`, and pages past `maxChars` (default 250000) in `omitted` with their sizes.
Parameters:
paths(required) — array — Page paths, 1 to 20 per callmaxChars— number — Total characters across the pages returned (default 250000, max 1000000)
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
list_pagesread-onlyBrowse the Radix Wiki by tag path rather than by keyword: every page under a branch, newest first by default. `tagPath` matches the branch and everything beneath it; omit it to walk the whole wiki. Sort by title for an A–Z pass. Same rows as search_wiki, with `totalPages`, `hasMore` and `nextPage`. Defaults: page 1, pageSize 20 (max 100).
Parameters:
page— number — 1-based page number (default 1)sort— string — Sort order (default "updatedAt", newest first)tagPath— string — The branch to list, e.g. a path from get_categories. Includes its descendants.pageSize— number — Results per page (default 20, max 100)
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_categoriesread-onlyThe category tree of the Radix Wiki, the cheapest way to orient before searching. Each node carries its `path` (a tagPath list_pages and search_wiki take), name, description, `pageCount` (pages filed at that path) and `pageCountDeep` (with every descendant). `tagPaths` lists every tag path that holds pages, including any the tree does not name.
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_recent_changesread-onlyPages of the Radix Wiki edited within the last N days, newest first: what to poll when you are watching the wiki rather than reading it. Same rows as list_pages. Defaults: days 7 (max 30), limit 20 (max 50). `truncated: true` means the limit cut the list; raise it, or page through list_pages.
Parameters:
days— number — Look back this many days (default 7, max 30)limit— number — Most pages returned (default 20, max 50)
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_full_corpusread-onlyThe whole of the Radix Wiki as one text document, for bulk ingestion. Preflight first: sizeOnly=true returns the character count, a token estimate, the per-branch breakdown and the largest pages. Then pull it with `maxChars` (default 200000, max 1000000), or one branch at a time with `tagPath`. Truncation is page-aligned: `truncated`, `omittedPages` and `nextSkip` say where to resume (pass skip=nextSkip). For a handful of pages get_pages is cheaper.
Parameters:
skip— number — Resume from this page index: the `nextSkip` of the previous truncated call (default 0)tagPath— string — One branch and its descendants. Omit for everything.maxChars— number — Character budget for `document` (default 200000, max 1000000)sizeOnly— boolean — Sizes and breakdowns only, no document. Do this before the first real pull.
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_page_historyread-onlyA page's revisions in the Radix Wiki, newest first: each one's `id`, version, change type, message, date and the blocks it changed. Address the page as get_page does. A revision `id` is what a restore takes, where this server has one. Defaults: limit 20 (max 100).
Parameters:
path— string — The page's whole path, e.g. "developers/scrypto/blueprints". Preferred over tagPath + slug.slug— string — Page slug. Ignored when `path` is set.limit— number — Most revisions returned (default 20, max 100)tagPath— string — Tag path only ("" for a top-level page). Ignored when `path` is set.
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_ideas_boardread-onlyGet the RADIX Wiki Ideas Pipeline kanban: community proposals and Radix DAO tasks grouped into status columns (Discussion → Proposed → Approved → In Progress → Testing → Done), each card carrying its working group, category, priority, and assignee. Use this to follow DAO / project progress.
Parameters:
category— string — Filter to one category: Protocol, Ecosystem, Tooling, Community, GovernanceworkingGroup— string — Filter by working group name substring, e.g. "Treasury", "Legal", "NetOps"
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_network_activityread-onlyDaily Radix mainnet activity, one row per UTC day since Babylon (28 September 2023): transactions, active accounts, new accounts, components and resources created, NFTs minted, and fees, $XRD burned and royalties in $XRD. Summed from the Gateway transaction stream; counts cover user transactions only. Narrow with from/to. The same rows chart at /charts and download at /api/charts/activity?format=csv.
Parameters:
to— string — Last day, YYYY-MM-DD (default: the last stored day)from— string — First day, YYYY-MM-DD (default: 30 days before the last stored day)
Hints: read-only yes · destructive not declared · idempotent yes · open-world no
get_challengeStep 1 of writing to the wiki: a single-use ROLA challenge (5-minute expiry). The response spells out the exact recipe for the message your Ed25519 key must sign. You always sign with your OWN key — nothing here custodies anything. Takes no parameters.
Hints: read-only no · destructive no · idempotent no · open-world no
loginStep 2: exchange the signed ROLA proof for a 7-day Bearer token — the same verification the human wallet flow runs. Send the returned token as an HTTP `Authorization: Bearer <token>` header on every later create_page / edit_page call; tool arguments never carry it.
Parameters:
challenge(required) — string — The challenge from get_challengeaddress(required) — string — Your account address (virtual account of the signing key; its public key must be an on-ledger owner_keys entry)publicKey(required) — string — Ed25519 public key, hexsignature(required) — string — Signature over the ROLA message, hexcurve(required) — string — Signing curve (Ed25519 = "curve25519")
Hints: read-only no · destructive no · idempotent no · open-world yes
create_pageCreate a new Radix Wiki page. Requires a ROLA bearer token; see https://radix.wiki/AGENTS.md for the challenge-sign-verify flow. Call get_categories first for a valid tagPath. Needs a wallet holding at least 10,000 $XRD (ecosystem 20,000, blog 50,000, ideas 10,000), a balance check that spends nothing. Earns contribution points.
Parameters:
tagPath(required) — string — Tag path the page lives under (e.g. "contents/tech/core-concepts")title(required) — string — Page titlecontent(required) — array — Array of typed blocks. Start with an infobox, hyperlink every assertion to its source, no inline styles.slug— string — URL slug (derived from the title when omitted)metadata— object — Key-value metadata for the page, including `excerpt` (one sentence, ≤160 chars). Some tag paths require specific keys — the error names any that are missing.bannerImage— string — Banner image URL
Hints: read-only no · destructive no · idempotent no · open-world no
edit_pagedestructiveEdit an existing Radix Wiki page. Requires a ROLA bearer token; see https://radix.wiki/AGENTS.md. Read the page with get_page and `blocks: true`, send the full revised block array, and pass its `version` as baseVersion: an edit made after someone else's is refused rather than written over it, so read again and reapply. The version bump, block-level diff, and revision entry are computed server-side. Needs a wallet holding at least 20,000 $XRD (ideas 10,000). Locked and author-only pages are rejected. Earns contribution points.
Parameters:
tagPath(required) — string — Tag path of the page to editslug(required) — string — Slug of the page to editbaseVersion(required) — string — The `version` get_page returned, which this edit starts fromtitle— string — New titlecontent— array — The full revised block array (not a patch). Omit to change only the title or metadata.newSlug— string — Move the page to this slug (an article only)metadata— object — Replacement metadata object: the whole `metadata` get_page returns with `blocks: true`, revisedverified— boolean — True when you checked the page's facts against its sources: stamps lastVerifiedAt. Send it alone to stamp without an edit.editorIds— array — User ids who may co-edit an author-only page. Applied only when the author sends it.bannerImage— string — Banner image URL; an empty string removes itrevisionMessage— string — What changed and why — shown in the page history. Always send one.
Hints: read-only no · destructive yes · idempotent no · open-world no
restore_revisiondestructiveMake an earlier revision the current page, written as a new revision. Requires a ROLA bearer token and passes the same gates as edit_page. Take the revision `id` from get_page_history.
Parameters:
path(required) — string — The page's whole pathrevisionId(required) — string — The revision `id` from get_page_history
Hints: read-only no · destructive yes · idempotent no · open-world no
delete_pagedestructiveDelete an article with its history and comments. Requires a ROLA bearer token. Its author may delete it; on a shared board (ideas), so may anyone who clears the bar to edit it. Locked pages, hub articles and the homepage cannot be deleted.
Parameters:
path(required) — string — The page's whole path
Hints: read-only no · destructive yes · idempotent yes · open-world no
upload_imageUpload an image and get back the URL the editor stores: put it in a content block as `<img src="…" alt="…">`, or pass it to create_page or edit_page as bannerImage. Requires a ROLA bearer token, as create_page does. Send the file base64-encoded, at most 3.4 MB before encoding (the whole request must stay under 4.5 MB), as JPEG, PNG, GIF, WebP, or AVIF. The format is read from the bytes, not from contentType or the name; the image is stored as WebP at most 1600px wide, without its metadata.
Parameters:
data(required) — string — The image file, base64-encoded; a `data:` URL prefix is acceptedfilename(required) — string — File name, e.g. "validator-map.png"contentType(required) — string — MIME type, e.g. "image/png"
Hints: read-only no · 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.