Mirobody
Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.
Description from the maker (original English)
Read-only Parallax PoW chain data: blocks, transactions, mining, supply, explorer and network health
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
PARALLAX_MCP_RPC_URL, PARALLAX_MCP_GROUPSYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://mcp.parallaxprotocol.org/mcpOpen Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"parallax": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PARALLAX_MCP_RPC_URL",
"-e",
"PARALLAX_MCP_GROUPS",
"ghcr.io/parallaxprotocol/parallax-mcp:0.2.4",
"--transport",
"stdio"
],
"env": {
"PARALLAX_MCP_RPC_URL": "your-value",
"PARALLAX_MCP_GROUPS": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http parallax https://mcp.parallaxprotocol.org/mcpclaude mcp add parallax --env PARALLAX_MCP_RPC_URL=your-value --env PARALLAX_MCP_GROUPS=your-value -- docker run -i --rm -e PARALLAX_MCP_RPC_URL -e PARALLAX_MCP_GROUPS ghcr.io/parallaxprotocol/parallax-mcp:0.2.4 --transport stdioFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"parallax": {
"url": "https://mcp.parallaxprotocol.org/mcp"
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"parallax": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PARALLAX_MCP_RPC_URL",
"-e",
"PARALLAX_MCP_GROUPS",
"ghcr.io/parallaxprotocol/parallax-mcp:0.2.4",
"--transport",
"stdio"
],
"env": {
"PARALLAX_MCP_RPC_URL": "your-value",
"PARALLAX_MCP_GROUPS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"parallax": {
"type": "http",
"url": "https://mcp.parallaxprotocol.org/mcp"
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"parallax": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PARALLAX_MCP_RPC_URL",
"-e",
"PARALLAX_MCP_GROUPS",
"ghcr.io/parallaxprotocol/parallax-mcp:0.2.4",
"--transport",
"stdio"
],
"env": {
"PARALLAX_MCP_RPC_URL": "your-value",
"PARALLAX_MCP_GROUPS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://mcp.parallaxprotocol.org/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
PARALLAX_MCP_RPC_URL envPARALLAX_MCP_GROUPS envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 7, 2026. The maker wrote them, not us; we show them as plain text.
audit_token_approvalsAudits the token approvals an address has granted: who may move its tokens. How: scans the chain for the owner's Approval and ApprovalForAll events (from "from_block", default the genesis block, in ranges of the server's log range limit), keeps the latest per token and spender, a
block_rewardWhat the miner of a block earned: the subsidy from the emission schedule (50 LAX halved every 210,000 blocks) plus the transaction fees (the sum over its transactions of gas used × effective gas price; Parallax burns nothing). Amounts in wei and LAX. Also the coinbase address, th
call_contractRuns a read-only eth_call against a contract and decodes the result. Nothing is signed or sent: state changes are discarded. Give either raw "data" (0x-hex calldata), or "function" plus "args": - function is a name ("balanceOf") resolved against "abi" (a JSON ABI you pass) or, wh
chain_infoIdentity and state of the Parallax node this server reads: chain ID (2110 on mainnet), network ID, client version, head block (number, hash, timestamp, seconds since it was mined), sync status, peer count, current gas price, and the RPC namespaces the node serves (tools needing d
estimate_gasEstimates the gas a transaction would use (eth_estimateGas) and what it would cost at the node's current gas price: fee = gas × gas price, in wei and LAX. Takes the same call fields as call_contract (to, from, value_wei, and data or function+args) and nothing is sent. A plain LAX
explorer_addressWhat the explorer knows about an address: LAX balance (wei and LAX), whether it is a contract and verified, its name and public tags, whether the explorer flags it as a scam, proxy implementations, the creator and creation transaction of a contract, token metadata if it is a toke
explorer_chartsTime series from the explorer's statistics service. Without "chart", lists the available charts with id, section, description, units and resolutions: accounts (accountsGrowth, activeAccounts, newAccounts), transactions (newTxns, txnsGrowth, txnsFee, averageTxnFee, txnsSuccessRate
explorer_contractA verified contract's metadata: name, language, compiler version, EVM version, optimization, license, verification time, proxy type and implementations, and its interface: every function (signature, state mutability) and event from the verified ABI. With include_source=true, the
explorer_internal_transactionsValue transfers and calls made by contracts during transactions (internal transactions), for one transaction ("transaction": hash) or an address ("address"): type (call, create, delegatecall, selfdestruct…), from, to, value (wei and LAX), success and error. The node's public RPC
explorer_searchThe explorer's search: finds addresses, tokens (by name or symbol), contracts, transactions and blocks matching a query, such as "pepe", a hash or an address. Returns each match's type, name, symbol, address or hash and whether a contract is verified. Names, symbols, tags and met
explorer_statsChain-wide counters from the explorer: total blocks, transactions, addresses, accounts, contracts (and verified ones), tokens and LAX transfers; transactions and fees in the last 24 hours, the average fee, and the average block time in seconds (the explorer's figure; mining_stats
explorer_tokenA token's metadata: name, symbol, type (ERC-20, ERC-721, ERC-1155), decimals, total supply (raw and in whole tokens) and number of holders. Names, symbols, tags and method names are set by whoever deployed or verified a contract and are wrapped as untrusted.
explorer_token_balancesThe ERC-20, ERC-721 and ERC-1155 balances of an address (at most 100 tokens), each with the token's address, name, symbol, type, decimals, the raw balance and the balance in whole tokens (raw ÷ 10^decimals). LAX itself is not a token: use explorer_address or get_balance. Names, s
explorer_token_holdersA token's holders, largest first: address, the explorer's name for it, whether it is a contract, the balance (raw and in whole tokens) and its share of the total supply (0 to 1). Results come 50 per page, newest first; pass "next_cursor" from a result as "cursor" to get the next
explorer_token_transfersToken transfers of a token ("scope": "token", the default) or to and from an address ("scope": "address"): transaction hash, block, time, from, to, token, amount (raw and in whole tokens) or token ID. Results come 50 per page, newest first; pass "next_cursor" from a result as "cu
explorer_transactionsTransactions sent from or to an address, as the explorer indexed them: hash, block, time (UTC), from, to, value (wei and LAX), fee (wei and LAX), status, the called method's name, and transaction types (coin_transfer, contract_call, token_transfer, contract_creation). "direction"
gas_priceCurrent fee levels in wei and gwei (1 gwei = 10^9 wei). Parallax has no EIP-1559 base fee: a transaction pays gas used × gas price, all of it to the miner. Returns the node's eth_gasPrice and, from Parallax's Bitcoin Core-style fee estimator (eth_estimateSmartFee), the price expe
get_balanceThe LAX balance (wei and LAX) and nonce (transactions sent) of an address, at the latest block or at "block" (number or hash). Reading a block older than the node's recent state window needs an archive node; the error says so when it is not one. Note that block rewards cannot be
get_blockA block by number, hash or "latest". Returns number, hash, parent hash, timestamp (Unix seconds), seconds since its parent (block time; the target is 600), miner, difficulty, gas used/limit, size in bytes, epochStartTime (a Parallax header field: the timestamp of the last block a
get_codeThe deployed bytecode of an address at the latest block or "block": whether it is a contract, the code size in bytes and its keccak256 hash. With include_code=true the bytecode itself is returned as hex (cut at 4096 bytes). An address with no code is an externally owned account (
get_logsEvent logs in a block range, filtered by contract address(es) and topics (eth_getLogs). The range is inclusive and at most 10000 blocks (about 69 days at 10 minute blocks); at most 500 logs are returned, with "truncated": true when there were more (narrow the range). from_block a
get_proofThe Merkle proof of an account and optionally some of its storage slots (eth_getProof, EIP-1186) at the latest block or "block": balance, nonce, code hash, storage root and the slot values. The proof nodes are only counted unless include_proof=true, as they are large; use them to
get_receiptThe receipt of a mined transaction: status (success or failed), gas used, effective gas price (wei), fee paid (wei and LAX = gas used × gas price), the address of a created contract, and its event logs (at most 100). Each log has its address and raw topics and data, plus a decodi
get_storage_atThe raw 32-byte value of one or more storage slots of a contract (at most 20), at the latest block or "block". Slots are decimal or 0x-hex numbers, or 32-byte hex keys for mapping entries computed off-chain. Values are returned as 0x-hex and as unsigned decimal.
get_transactionA transaction by hash: block, position, from, to, value (wei and LAX), gas limit, gas price (wei; Parallax has no base fee, so this is the whole price per gas), nonce, type (0 legacy, 1 access list; Parallax has no type 2), and its calldata. Calldata is shown as hex (first 2048 b
mempool_statusTransactions waiting to be mined. From the configured node (txpool namespace): "pending" (executable now) and "queued" (waiting for an earlier nonce) counts. From the status page: the median pending count across synced reporting nodes, "pressure" (the block space the waiting tran
mining_statsMining figures derived from the headers of the last "blocks" blocks (default 144, about a day; at most 2016), with how each is worked out: - seconds_since_last_block: now − the head block's timestamp. Blocks arrive as a Poisson process, so the time already waited says nothing abo
network_healthOne-call health report of the Parallax network, combining the status page (status.parallaxprotocol.org) with the configured node. From the status page: the best block and seconds since it was found, reporting nodes (total, active, synced), active alerts with level (critical, warn
network_incidentsThe status page's incident record: periods when an alert condition held (majority; withholding = the largest miner publishing far fewer blocks than its share predicts; spread = slow propagation; split; reorg), each with level, start and end (UTC; "ongoing" when it has not ended),
network_nodesThe nodes reporting to the status page: name (operator-chosen for verified nodes, a pseudonym such as node-3f9a2c1b otherwise; untrusted), verified, client version, online/offline (and since when), syncing, mining and hashrate, peers, peer latency (ms), best block, propagation de
network_propagationHow fast blocks spread and how stable the chain tip is, from the status page: propagation reports with median, p90 and p99 delay (ms) after the first node saw a block, the median time for recent blocks to reach 90% of verified nodes and any consistently slow miner, delays by band
network_trendsThe status page's figures over the last 7 days in 4-hour slices (UTC, oldest first; null where nothing was measured): block_time_seconds and hashes_per_second (each pooled over the 24 hours to the slice's end, so luck in one slice does not swing them), difficulty (mean of the sli
read_docReturns a page of the Parallax documentation or a PIP in full, as Markdown: by "path" from search_docs (such as "hashwarp/pool-mining" or "pip-0004"; "PIP-4", a parallax://docs URI or a docs.parallaxprotocol.org URL also work). Long pages come in parts of "max_bytes" (default 24,
search_docsSearches the official Parallax documentation (docs.parallaxprotocol.org: running a node, mining, wallets, JSON-RPC, the PVM, networking, Tor, protocol concepts) and the Parallax Improvement Proposals (PIP-0002 ASERT difficulty, PIP-0003 DNS discovery, PIP-0004 fee estimation, PIP
supply_infoLAX issuance against the 21,000,000 cap. Parallax follows Bitcoin's schedule: 50 LAX per block from block 1 (genesis pays nothing), halving every 210,000 blocks; there is no premine, burn or protocol lock, so circulating supply equals total issued (block rewards count from the bl
wait_for_new_blockWaits until the chain has a block above "after_block" (default: the current head) and returns it: number, hash, parent hash, timestamp, miner, difficulty, gas used, transaction count and subsidy, with a reorg marker if the tip was replaced instead. Blocks come every 10 minutes on
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account ParallaxProtocol, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 866 ms (HTTP 200)
No sign-in needed
Read 36 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.2.4) reached the registry 19 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Mirobody, FHIR MCP Server, Google Health MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.
MCP server providing seamless access to FHIR APIs for AI tools and healthcare applications
Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
parallax-mcp ============
A Model Context Protocol server that gives AI assistants and agents structured, read-only access to the Parallax network: chain data from a node, indexed data from the explorer, network health from the status page, and the Parallax documentation and PIPs.
It runs locally over stdio (Claude Desktop, Claude Code) or as a remote Streamable HTTP service, and never holds or accepts private keys.
A public instance runs at https://mcp.parallaxprotocol.org/mcp, and the server is listed in the MCP Registry as io.github.ParallaxProtocol/parallax-mcp.
Tools are grouped, and each group can be turned off. Every result is compact JSON with LAX amounts as {"wei": "...", "lax": "..."}, and anything third parties can write is wrapped as {"untrusted": "..."} (see Security model).
chain: from the node's JSON-RPC
| Tool | What it returns |
|---|---|
chain_info | Chain ID check, client, head and its age, sync state, peers, gas price, the node's RPC namespaces |
get_block | A block by number, hash or latest, with block time, subsidy and optionally transaction summaries |
get_transaction | A transaction with its calldata decoded (verified ABI from the explorer, or the standard token ABI) |
get_receipt | Status, gas used, fee and decoded event logs |
get_balance | Balance and nonce, at any block on an archive node |
get_code, get_storage_at, get_proof | Bytecode, storage slots and EIP-1186 proofs |
call_contract | A read-only eth_call, encoding arguments and decoding results from an ABI, the explorer's verified ABI or a signature such as balanceOf(address) returns (uint256) |
estimate_gas | Gas and fee for a transaction |
get_logs | Event logs, bounded by block range and count |
gas_price | eth_gasPrice and Parallax's Bitcoin Core-style fee estimates for 1 to 144 blocks |
audit_token_approvals | Every ERC-20 allowance and NFT approval an address has granted that is still live, checked against current contract state, with exposure, risk flags, severity and the exact revoke call |
wait_for_new_block | Waits (up to 10 minutes) for the next block; for clients without resource subscriptions |
trace_transaction, trace_call | Call trees, pre-state and selectors (needs the debug namespace) |
mining: derived from block headers and the emission schedule; each derivation is documented in the tool description
| Tool | What it returns |
|---|---|
mining_stats | Block time statistics, hashrate estimate, difficulty and its trend, expected block time, miner shares, and the status page's figures for comparison |
supply_info | Issued supply (node and schedule cross-checked), share of the 21M cap, current reward and era, next halving at the target and observed pace |
block_reward | A block's subsidy plus fees, and when it matures |
explorer: from Blockscout's REST API v2
explorer_address, explorer_token_balances, explorer_transactions, explorer_token, explorer_token_holders, explorer_token_transfers, explorer_contract (interface, metadata and optionally source), explorer_internal_transactions, explorer_search, explorer_stats (including the stats service's counters), and explorer_charts: 21 time series (accounts, transactions, fees, blocks, gas, contracts) at day, week, month or year resolution from Blockscout's stats service. Lists are paginated with an opaque next_cursor.
network: from the status page and the node
| Tool | What it returns |
|---|---|
network_health | One report: alerts, ongoing incidents, mining decentralization and recommended confirmations, nodes, propagation, reorgs, mempool, and the node's own head, peers and sync state, with a list of issues |
network_nodes | The nodes reporting to the status page |
network_incidents | Incident history and verified nodes' uptime |
network_propagation | Block propagation delays, stale blocks and reorgs |
network_trends | Hashrate, difficulty, block time, hashprice, security budget, nodes, latency, uptime and mempool over 7 days in 4-hour slices |
node_peers | The node's peers and address book, with IP addresses withheld (needs admin) |
mempool: mempool_status (node and network-wide) and mempool_transactions (needs txpool).
docs: search_docs ranks the Parallax documentation and PIPs for a question (BM25, boosted by titles and headings) and returns excerpts with links; read_doc returns a page or PIP in full, in parts for long ones. They let assistants look up Parallax specifics on their own instead of guessing from Ethereum or Bitcoin.
tx: off by default
| Tool | What it returns |
|---|---|
build_unsigned_tx | An unsigned legacy or EIP-2930 transaction with nonce, gas and gas price filled in, its signing payload and hash, for an external signer |
decode_tx | Any raw transaction or signing payload, decoded, with the sender recovered from the signature |
broadcast_signed_tx | Submits a signed transaction. Registered only with --allow-broadcast |
The public RPC endpoint serves only eth, net and web3. Tools that need more (trace_* need debug, node_peers needs admin, mempool_transactions needs txpool) are left out when the node does not serve their namespace; chain_info lists what it does. To get them all, point the server at your own node:
parallaxd --http --http.addr 127.0.0.1 \
--http.api eth,net,web3,txpool,debug,admin,xhash --gcmode archive --txlookuplimit 0
Exposing these namespaces to parallax-mcp is safe: it calls them through an allowlist of read-only methods (see Security model). Do not expose them to anything else. Historical state (balances, calls and traces at old blocks) needs --gcmode archive.
| Resource | Content |
|---|---|
parallax://chain/parameters | Chain ID, block time, PoW and ASERT, reward schedule and cap, coinbase maturity, EVM level (Berlin) and transaction types, endpoints |
parallax://glossary | Parallax and proof-of-work terms used by the tools |
parallax://docs, parallax://docs/{path} | The documentation of docs.parallaxprotocol.org |
parallax://pips, parallax://pips/pip-000N | PIP-0002 to PIP-0006 |
parallax://chain/head | The latest block; subscribable: a resources/updated notification on every new block (and reorg) |
parallax://network/alerts | The status page's active alerts; subscribable: a notification when one appears, clears or changes level |
Subscriptions work on stdio and on the HTTP transport's sessions (not with --http-stateless). The server polls the node every --head-poll-interval (15 s) only while someone is subscribed or waiting, and stops ten minutes after the last interest. Clients without subscription support can call wait_for_new_block instead.
The documents are a snapshot embedded in the binary, searchable with the docs tools. CI refreshes it from the parallax-docs repository's main branch and the PIP discussions whenever it builds an image, so published images carry current docs; locally, make sync-content does the same from ../parallax-docs (it needs the gh CLI).
Prompts: explain_transaction (hash), audit_address (address), network_health_report.
Local, over stdio:
claude mcp add parallax -- /path/to/parallax-mcp
claude mcp add parallax -- /path/to/parallax-mcp --groups chain,mining,explorer,network,mempool,docs,tx --rpc-url http://127.0.0.1:8545
Remote, over HTTP, using the public instance:
claude mcp add --transport http parallax https://mcp.parallaxprotocol.org/mcp
Add to claude_desktop_config.json (Settings → Developer → Edit Config):
{
"mcpServers": { "parallax": { "command": "/path/to/parallax-mcp", "args": ["--log-level", "warn"] } } }
or with Docker:
{
"mcpServers": { "parallax": { "command": "docker", "args": ["run", "-i", "--rm", "ghcr.io/parallaxprotocol/parallax-mcp", "--transport", "stdio"] } } }
A remote HTTP deployment is added in Claude Desktop as a custom connector (Settings → Connectors → Add custom connector) with its URL, such as https://mcp.example.org/mcp.
bin/mcpcall (make tools) is a small MCP client for trying tools:
bin/mcpcall tools
bin/mcpcall call get_block '{"block":"latest"}' bin/mcpcall call call_contract '{"to":"0xd1060183552A88455f037a58B2aC639C7966a214","function":"symbol() returns (string)"}' bin/mcpcall read parallax://glossary bin/mcpcall -http http://127.0.0.1:8080/mcp call network_health bin/mcpcall call trace_transaction '{"hash":"0x…"}' -- --rpc-url http://127.0.0.1:8545
Settings come from flags, PARALLAX_MCP_* environment variables and an optional YAML file (--config, see config.example.yaml), in that order of precedence. parallax-mcp -help lists them all.
| Flag | Default | |
|---|---|---|
--transport | stdio | stdio or http |
--rpc-url | https://rpc.parallaxprotocol.org | Node JSON-RPC (http/https) |
--explorer-url | https://explorer.parallaxprotocol.org | Blockscout |
--status-url | https://status.parallaxprotocol.org | Status page |
--chain-id | 2110 | The server refuses to start against another chain |
--groups | chain,mining,explorer,network,mempool,docs | Add tx for the transaction tools |
--allow-broadcast | off | Registers broadcast_signed_tx (needs tx) |
--http-addr, --http-path | 127.0.0.1:8080, /mcp | HTTP transport |
--http-stateless | off | No sessions: replicas need no sticky load balancing, but resource subscriptions are unavailable |
--head-poll-interval | 15s | How often the head is polled while clients are subscribed or waiting |
--explorer-stats-url | /stats-service | Blockscout stats service, for charts and counters |
--rate-limit, --rate-burst | 2/s, 20 | Per client address, HTTP transport |
--max-concurrent | 64 | Requests in flight, HTTP transport |
--trusted-proxies | none | Proxies allowed to set X-Forwarded-For |
--behind-cloudflare | off | Take client addresses from CF-Connecting-IP on requests from Cloudflare's edge ranges |
--metrics-addr | off | Serve Prometheus /metrics on a separate listener |
--max-response-bytes | 262144 | Larger results fail with advice to narrow the query |
--max-log-range, --max-logs | 10000, 500 | get_logs bounds |
--status-cache-ttl | 15s | The status page allows 60 requests a minute per address |
--expose-peer-addresses | off | Show peer IPs in node_peers; stdio only |
Untrusted data. Token names and symbols, contract source, event and revert strings, decoded string arguments, explorer tags and node names are chosen by anyone and may be written to manipulate a model reading them. Such text is stripped of control, bidirectional and zero-width characters, capped in length, and wrapped as {"untrusted": "..."}; the server's instructions tell the model to treat it as data only.
Read-only by construction. Every request to the node passes an allowlist of read-only JSON-RPC methods before it leaves the process, so even a node with personal, admin, miner and debug fully exposed cannot be made to unlock ac
Only the beginning is shown; read the rest in the repo