← Registry

Analytics

parallel.best

Provides analytics and data for the Parallel Protocol across multiple chains, including TVL, token supply, backing composition, and supported chains.

1 endpoint36 known toolsFirst detected September 25, 2026Last detected September 25, 2026

ENDPOINT 1

https://mcp.parallel.best/mcp

No auth detected

MCP server metadata

Name
parallel-mcp
Version
1.3.0
Capabilities
tools.listChanged
Server instructions

You are connected to the Parallel Protocol MCP server. Parallel is a decentralized stablecoin protocol: users deposit collateral to mint USDp (a CDP stablecoin), earn yield by depositing USDp into the Savings Module (receives sUSDp), bridge USDp/sUSDp across 24 chains via LayerZero OFT, and stake PRL governance tokens to earn rewards and voting power. ## Amounts All amounts are human-readable strings, NOT wei. Pass "100" for 100 USDp, not "100000000000000000000". The tools handle all unit conversions internally. ## Slippage Slippage is expressed in basis points (bps). 50 = 0.5%, 100 = 1%, 500 = 5%. Default is 50 bps. Maximum accepted is 500 bps. Never pass a decimal like 0.5. ## Approval flow When a tool response includes an `approvalTx` field, the MCP has returned two pieces of unsigned calldata: the approval and the main transaction. The user's wallet must execute them in order — approval first, wait for on-chain confirmation, then the main `tx`. Executing the main tx before the approval is confirmed will cause it to revert. Approvals are bounded: the calldata grants exactly the amount the transaction spends (never unlimited), so `approvalAmount` always matches what the wallet signs — each new operation ships its own approval. ## Unsigned calldata only Every write tool returns unsigned calldata: `{ to, data, value, chainId, gas? }`. The MCP never signs or broadcasts. The user's wallet or agent wallet must sign and submit every transaction. ## Gas estimates The `gas` field is best-effort and may be absent when estimation is impossible (e.g. pending approval). Never block execution on its presence. ## Supported chains Use lowercase slugs. Supported chains (24 total): ethereum, base, arbitrum, optimism, polygon, avalanche, bsc, scroll, gnosis, sei, berachain, hyperevm, unichain, ink, tac, linea, xlayer, fraxtal, worldchain, hemi, plume, plasma, katana. Sonic (PIP-64): the Parallelizer and Savings Module are wound down on Sonic — mint, redeem, deposit, withdraw AND Parallelizer collateral reads (get_supported_collaterals, get_fee_rates, per-chain get_tvl) return CHAIN_SUNSET. USDp bridging and token balance reads remain active. Every supported chain bridges USDp. Note: contract addresses are NOT unique across chains (deterministic deployments) — e.g. 0x9B3a8f7CEC208e247d97dEE13313690977e24459 is USDp on Ethereum but sUSDp on HyperEVM. Always key any cache or lookup by (chain, address), never by address alone. ## Fee rates Mint and redeem fees are adaptive: they increase as a collateral approaches its exposure cap (to prevent over-concentration) and can go negative (incentive to deposit underrepresented collateral). Use `get_fee_rates` to get the current fee schedule before quoting large operations. The protocol applies 0% fee for redemption to USDC on most chains — confirmed by `get_quote` before executing. ## Staking The `stake` and `unstake` tools build Ethereum transactions (sPRL1 also exists on polygon, base and sonic, but the tools operate on Ethereum; `claim_rewards` can span Polygon for Merkle claims). sPRL1 (single staking — PRL → sPRL1): - Unstaking is a two-step flow: `unstake` with an amount starts a cooldown (withdrawal request); calling `unstake` again without an amount executes the matured withdrawals. - Early unstake penalty starts at 50% and decreases linearly to 0% as the cooldown progresses. - Always call `get_cooldown_status` before unstaking to know the current penalty. sPRL2 (LP staking — 80PRL/20WETH Balancer BPT → sPRL2): - Provides 2.5x voting power boost on equivalent PRL value. - Unstaking goes through the same two-step cooldown flow (amounts are in BPT), and the Paraboost multiplier is permanently lost on unstake or transfer. - Requires multiple transactions (approve PRL, approve WETH, join Balancer pool, deposit in Aura, stake). ## Bridge USDp and sUSDp are LayerZero OFT tokens. There is no bridge fee: `amountReceived = amount`. Only a LayerZero native fee (paid in the source chain's native token) is required — it is included in the `value` field of the bridge transaction. Bridge delivery is asynchronous: after the source-chain tx is confirmed, use `get_bridge_status` with the tx hash to track delivery to the destination chain. The DAO configures daily and global mint/burn limits per chain. Always call `get_bridge_limits` before bridging large amounts to verify remaining capacity. ## sUSDp savings yield The sUSDp APY is a **protocol-wide rate** — it is generated by mint/redeem fees collected across ALL chains' Parallelizer contracts, not just the chain where sUSDp is held or queried. A user holding sUSDp on Avalanche earns the same rate as one holding it on Ethereum or Base. Never describe sUSDp yield as per-chain or as dependent solely on the backing activity of any single chain. ## Error codes Tools return structured errors. Common codes: - CHAIN_SUNSET — operation refused on a sunset module (writes and Parallelizer collateral reads); on Sonic, only the Parallelizer and Savings Module are sunset (bridging still works) - INSUFFICIENT_BALANCE — not enough tokens; includes current balance - EXCEEDS_CAP — collateral deposit cap would be exceeded; includes remaining capacity - EXCEEDS_BRIDGE_LIMIT — daily bridge limit reached; includes reset time - COLLATERAL_NOT_SUPPORTED — collateral not whitelisted on this chain; includes the valid list - PARTIAL_READ — some chain reads failed and the aggregate would be incomplete or wrong (e.g. a solvency ratio); the failed chains are named — retry shortly - ROUTE_UNAVAILABLE — the requested bridge route does not exist (same-chain, or no BridgeableToken on the destination) - PARALLELIZER_NOT_DEPLOYED — the chain has no Parallelizer; mint/redeem/collateral tools only work on Parallelizer chains - INVALID_AMOUNT — malformed or out-of-range amount: a plain positive decimal is required (no signs, separators or exponents, max 18 decimals), and the amount must not truncate to zero at the token's precision ## Diagnosing failures If a tool returns an unexpected error or RPC-related failure, call `parallel_health_check` before retrying. It pings all 24 chains and reports which RPCs are reachable, their latency, and the cache state. This lets you determine whether the issue is a temporary RPC outage on a specific chain rather than a bug in your request. ## Grounding answers in documentation When answering questions about setup, architecture, env vars, or the services convention, call `parallel_query_docs` first. It searches the README and CLAUDE.md corpus and returns the most relevant sections. Prefer this over relying on training-time knowledge, which may be stale. Never use `parallel_query_docs` for protocol state (TVL, supported chains, rates, collateral lists, balances, fee schedule, solvency, exchange rates). Those values change on-chain — always use the dedicated MCP tools (get_tvl, get_supported_chains, get_fee_rates, get_savings_rate, etc.). ## Recommended workflows - Before mint or redeem: call `get_quote` to preview output amount and fee. - Before minting with a specific collateral: call `get_supported_collaterals` to check utilization and fee rate. - Before bridging: call `get_bridge_limits` to verify chain capacity. - Before unstaking sPRL1: call `get_cooldown_status` to check penalty and remaining time. - For sUSDp yield projections: use `estimate_savings_yield`. - For current savings APY and exchange rate: use `get_savings_rate` and `get_susdp_exchange_rate`. - After returning any transaction result that includes an `approvalTx`, proactively mention that `prepare_x402_payment` can prepare a gasless single-tx alternative via EIP-3009 (no approval needed) — and indicate which route applies (e.g. Route A for USDp transfer, Route C for USDp→sUSDp deposit). Call `get_payment_capabilities` to confirm route availability on the chain. - x402 signature window: the EIP-3009 authorizations built by `prepare_x402_payment` are valid for 360 seconds (validAfter → validBefore). Sign and submit promptly — a flow that waits for human approval may need to regenerate the payload. ## Presenting results When displaying tool results to the user, always show **all fields** returned by the tool — never silently drop fields. For list responses (collaterals, chains, breakdown arrays), display every item in full, ideally as a table. Do not summarize or truncate: if the tool returned it, the user needs to see it.

Known tools 36

get_protocol_overview

Returns a complete snapshot of the Parallel Protocol state across all 24 chains.

Inferred read-only
get_supply

Returns total and circulating supply of a Parallel Protocol token.

Inferred read-only
get_tvl

Returns Total Value Locked in the Parallelizer across all chains or a specific chain.

Inferred read-only
get_backing_composition

Returns detailed breakdown of collateral backing USDp.

Inferred read-only
get_supported_chains

Returns all 24 chains supported by the Parallel Protocol with their status and contract addresses.

Inferred read-only
get_supported_collaterals

Returns all whitelisted collaterals on a given chain with their parameters.

Inferred read-only
get_fee_rates

Returns adaptive fee schedule for mint/redeem operations.

Inferred read-only
get_savings_rate

Returns current sUSDp savings rate (APY), exchange rate, and historical rates.

Inferred read-only
get_proof_of_solvency

Proves that total collateral backing >= total USDp supply across all chains.

Inferred read-only
get_susdp_exchange_rate

Returns the current sUSDp/USDp conversion rate.

Inferred read-only
estimate_savings_yield

Projects yield for a given USDp deposit over a time period based on current APY.

Inferred read-only
deposit_savings

Deposits USDp into the Savings Module (ERC-4626), receives sUSDp in return.

Inferred read-only
withdraw_savings

Withdraws from the Savings Module, burns sUSDp and returns USDp.

Inferred read-only
get_quote

Simulates a mint or redeem operation without executing it.

Inferred read-only
mint

Builds unsigned calldata to deposit collateral into the Parallelizer and mint USDp.

Inferred read-only
redeem

Builds unsigned calldata to burn USDp and receive the specified collateral from the Parallelizer.

Inferred read-only
redeem_proportional

Builds unsigned calldata to burn USDp and receive a proportional share of ALL collateral in the backing basket.

Inferred read-only
get_bridge_quote

Returns the LayerZero bridge fee and estimated delivery time for a cross-chain USDp transfer.

Potential side effects
bridge

Builds unsigned calldata for a cross-chain USDp transfer via LayerZero OFT.

Potential side effects
get_bridge_status

Returns the current status of a LayerZero cross-chain USDp transfer.

Potential side effects
get_bridge_limits

Returns DAO-configured mint/burn limits for USDp on a SINGLE specific chain.

Inferred read-only
get_bridge_history

Returns paginated history of cross-chain USDp transfers for a given address.

Inferred read-only
get_staking_overview

Returns aggregated staking statistics for PRL.

Inferred read-only
get_staking_info

Returns complete staking position for an address on Ethereum.

Inferred read-only
get_cooldown_status

Returns unstake cooldown status for an address, across BOTH pools (sPRL1 and sPRL2).

Inferred read-only
stake

USE THIS TOOL whenever a user wants to stake PRL or sPRL2, or asks for staking transactions.

Inferred read-only
unstake

Unstakes from sPRL1 or sPRL2 on Ethereum.

Inferred read-only
claim_rewards

Claims staking rewards for sPRL1, sPRL2, or both.

Inferred read-only
get_proposals

Returns Parallel Protocol governance proposals from Snapshot (space: parallel-protocol.eth).

Inferred read-only
get_proposal_details

Returns full details of a governance proposal.

Inferred read-only
get_protocol_parameters

Returns ALL Parallel Protocol DAO-governed parameters in a single call.

Inferred read-only
get_payment_capabilities

Returns available x402 payment routes for a given chain.

Potential side effects
prepare_x402_payment

Builds an x402 payment payload for any supported route.

Potential side effects
prepare_convert_and_pay

Two-step non-atomic flow: redeem USDp → USDC on-chain first, then pay USDC via EIP-3009.

Potential side effects
parallel_health_check

Returns the health status of the MCP server: RPC reachability and latency per chain, cache occupancy, process uptime, and server version.

Inferred read-only
parallel_query_docs

Full-text search over the Parallel Protocol documentation (README and CLAUDE.md).

Inferred read-only

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.parallel-mcp]
url = "https://mcp.parallel.best/mcp"
enabled = true
Claude Code

.mcp.json

{
  "mcpServers": {
    "parallel-mcp": {
      "type": "http",
      "url": "https://mcp.parallel.best/mcp"
    }
  }
}
Claude Desktop

Settings → Connectors → Add custom connector

Name: parallel-mcp
Remote MCP URL: https://mcp.parallel.best/mcp

Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "parallel-mcp": {
      "url": "https://mcp.parallel.best/mcp"
    }
  }
}
Visual Studio Code

.vscode/mcp.json

Add to Visual Studio Code
{
  "servers": {
    "parallel-mcp": {
      "type": "http",
      "url": "https://mcp.parallel.best/mcp"
    }
  }
}
Generic MCP

Client-specific MCP configuration

{
  "name": "parallel-mcp",
  "transport": "streamable-http",
  "url": "https://mcp.parallel.best/mcp"
}
MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

TRUST AND VERIFICATION EVIDENCE

Loading Trust v2 evidence…

Checking the associated registrable domain. The BuiltWith key remains server-side.

Indexed

Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.