peer_quote
Get fiat-to-USDC exchange quotes.
tofromuseramountparamsplatformrecipienttokenAmountquotesToReturndestinationChainId
io.github.zkp2pPublished by GitHub account zkp2pv0.4.1Updated Oct 27, 2026
Read Peer protocol, market, checkout, and Peer Cash data through one MCP server.
Remote MCP server for the Peer protocol that lets an assistant read fiat-to-USDC quotes, deposits, intents, vaults and Peer Cash data.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.zkp2p%2Fpeer/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"peer": {
"type": "http",
"url": "https://mcp.peer.xyz/mcp"
}
}
}The canonical agent interface for Peer: one JSON-first CLI, local and hosted MCP servers, and one generated contract for protocol, indexer, market, checkout, and Peer Cash workflows.
agents/tool-catalog.jsonagents/error-catalog.jsonagents/runtime-manifest.jsonThe generated files come from the runtime registries. Do not hand-maintain a second command list in documentation.
Node.js 22 or newer is required.
The package is peer-protocol-cli; do not install the unrelated unscoped
peer-cli package.
Run without a global install:
Successful output is JSON by default. Errors always use the canonical JSON
error envelope on stderr. --format table changes successful human-facing
output only.
Read commands execute immediately. Commands that can mutate state return a
transaction or API preview first and execute only when the process receives
--yes.
Signer material resolves from PEER_PRIVATE_KEY or --wallet-path. Passing a
private key on the command line is supported but visible in process listings;
prefer the environment or an owner-readable wallet file. Persistent config and
checkout caches are written with owner-only permissions.
Never start a write-capable MCP process with --yes unless every write tool in
that process is intentionally allowed to broadcast without a second CLI
preview.
peer mcp requires one of three explicit profiles:
read-only — default protocol reads plus Peer Cash reads. No signing or
broadcasting.cash — the complete custody-separated peer_cash_* surface. It prepares
unsigned transaction plans but never accepts a private key, signs, or
broadcasts.full — every generic CLI-backed MCP tool plus Peer Cash. Generic write tools
still preview unless the MCP process was started with global --yes.The current tool counts are generated in agents/runtime-manifest.json.
Use --profile cash for the portable Peer Cash workflow or --profile full
for the complete operator surface.
The hosted MCP server exposes only the read-only profile over Streamable HTTP:
Run the same transport yourself with peer mcp --transport http. HTTP refuses
the cash and full profiles; those authority-bearing profiles remain local
stdio processes.
The retired standalone peer-cash-mcp server now lives here. Its tool names and
custody boundary are unchanged:
peer_cash_capabilities / peer_cash_source_capabilities — fetch live
payout rails and Relay-supported source chains and tokens.peer_cash_fill_stats / peer_cash_buyer — inspect historical fill
evidence and buyer protocol history.peer_cash_quote_source / peer_cash_relay_status — quote and track a
cross-chain route into Base USDC without granting signer authority.peer_cash_estimate — estimate fiat received at the current oracle rate.peer_cash_prepare — return ordered unsigned approval and deposit
transactions.peer_cash_finalize — resolve a confirmed receipt into a durable
depositId.peer_cash_order / peer_cash_orders — resume and inspect orders.peer_cash_prepare_access_policy, peer_cash_prepare_withdraw, and
peer_cash_prepare_top_up — prepare follow-up transactions.Base USDC amounts are decimal strings in 6-decimal base units: 100 USDC is
100000000. Estimates are not locked quotes; the binding Chainlink rate
resolves when a buyer fills.
Install the packaged portable skill from
skills/peer-cash/SKILL.md when the agent host
supports Agent Skills.
Configuration resolves in this order:
~/.peer/config.jsonCommon settings:
PEER_ENV: production, preproduction, or stagingPEER_PRIVATE_KEY / PEER_WALLET_PATH: signer material for generic write
commandsPEER_RPC_URL: Base RPC overridePEER_API_KEY: Curator API key when requiredPEER_INDEXER_API_KEY / PEER_INDEXER_URL: indexer overridesPEER_MARKET_API_KEY / PEER_MARKET_BASE_URL: Peerlytics accessPEER_PAY_API_KEY / PEER_PAY_BASE_URL: hosted checkout accessPEER_BASE_API_URL: Curator override. Defaults follow PEER_ENV:
api.zkp2p.xyz, api-preprod.zkp2p.xyz, or api-staging.zkp2p.xyz.PEER_CASH_RPC_URL, PEER_CASH_API_KEY, PEER_CASH_REFERRAL_CODE, and
PEER_CASH_REFERRER: cash-profile overridesUse peer config show, set, unset, and reset for persistent local
settings. peer config show masks secret values. Prefer environment variables
for credentials.
The CLI covers:
Run peer --help, peer <family> --help, or inspect the generated tool catalog
for the exact current paths, flags, schemas, auth requirements, and danger
markers.
Every command also accepts --params <json> and --params-file <path>. Typed
flags override raw values.
This repository uses npm and its committed package-lock.json.
npm run build regenerates all agent catalogs before bundling peer and the
public MCP library entry point. Run npm run test:e2e after changing networked
flows or checkout behavior.
The documentation application for agents.peer.xyz is owned by
zkp2p/zkp2p-clients at clients/agents; this repository owns the executable
runtime, package manifests, portable skill, and generated contracts it
documents.
UPI/INR is available in production, preproduction and staging, matching the
@zkp2p/sdk catalog. peer config platforms lists it alongside the other
rails, and peer quote --from INR --amount 100 --platform upi requests a
quote. Deposit creation, payee registration and intent previews accept the same
platform.
Source: README.md at commit 5abfb3e
Get fiat-to-USDC exchange quotes.
tofromuseramountparamsplatformrecipienttokenAmountquotesToReturndestinationChainIdResolve a payee hash from on-chain deposit data.
paramsdepositIdrequiredpaymentMethodHashrequiredList deposits owned by the configured wallet or explicit owner.
ownerparamsShow a single deposit by deposit ID.
paramsdepositIdrequiredShow multiple deposits by ID.
idsparamsFetch a deposit directly from ProtocolViewer.
paramsdepositIdrequiredFetch multiple deposits directly from ProtocolViewer.
idsparamsFetch deposits for an owner directly from ProtocolViewer.
ownerparamsList deposits via the indexer.
filterparamspaginationList deposits with related entities via the indexer.
filterparamsoptionspaginationFetch a deposit by composite ID via the indexer.
paramsoptionscompositeIdrequiredFetch multiple deposits by composite ID.
idsparamsFetch multiple deposits with relations by composite ID.
idsparamsoptionsFetch fund activities for a deposit.
paramsdepositIdrequiredFetch maker-level fund activities.
limitmakerrequiredparamsFetch deposit daily snapshots.
limitparamsdepositIdrequiredPerform a raw GraphQL query against the indexer. Use sparingly; arbitrary queries can be expensive.
queryparamsvariablesList intents for the configured wallet or explicit owner.
ownerparamsShow a single intent by hash.
paramsintentHashrequiredInspect fulfill routing inputs for an intent.
paramsintentHashrequiredGet the pre-intent hook for a deposit.
paramsdepositIdrequiredFetch intents for an owner directly from ProtocolViewer.
ownerparamsFetch a single intent directly from ProtocolViewer.
paramsintentHashrequiredFetch intents for multiple deposits via the indexer.
paramsstatusesdepositIdsFetch intents by owner via the indexer.
ownerrequiredparamsstatusesFetch a single intent via the indexer.
paramsintentHashrequiredFetch expired intents via the indexer.
nowlimitparamsdepositIdsFetch fulfillment events for intents.
hashesparamsFetch fulfillment amounts for an intent.
paramsintentHashrequiredFetch fulfillment and payment records for an intent.
paramsintentHashrequiredList vaults via the indexer.
limitfilteroffsetparamsmanagerpaginationShow vault details by rateManagerId.
paramsrateManagerIdrequiredList delegated deposits for a vault.
limitoffsetparamspaginationrateManagerIdrequiredFetch daily snapshots for a vault.
limitparamsoptionsrateManagerIdrequiredFetch manual rate updates for a vault.
limitparamsoptionsrateManagerIdrequiredFetch oracle config updates for a vault.
limitparamsoptionsrateManagerIdrequiredRead the effective manager fee for a delegated deposit.
escrowparamsdepositIdRead the effective rate for a delegated deposit pair.
escrowparamscurrencyplatformdepositIdCheck whether the current escrow deployment supports inline oracle configs.
paramsescrowAddressValidate bundled oracle feeds on-chain.
paramsShow current controller-based delegation for a deposit.
escrowparamsdepositFetch the delegation record for a composite deposit ID via the indexer.
paramsoptionsdepositIdrequiredFetch current market spreads from Peerlytics.
limitparamscurrencyplatformincludeRatesFetch the live P2P orderbook from Peerlytics.
paramsminSizecurrencyplatformCompare live quote availability across platforms using the published SDK quote route.
fromamountparamsplatformrecipientquotesToReturnFetch Peerlytics protocol volume and analytics for a time range.
rangeparamscurrencyplatformFetch maker and taker leaderboard data from Peerlytics.
limitoffsetparamsFetch aggregate Peerlytics protocol statistics.
paramsFetch Peerlytics vault analytics.
limitoffsetparamsLook up a wallet address profile on Peerlytics.
limitoffsetparamsaddressrequiredLook up a deposit on Peerlytics.
idrequiredlimitoffsetparamsLook up an intent on Peerlytics.
hashrequiredparamsLook up a maker profile on Peerlytics.
paramsaddressrequiredLook up a verifier profile on Peerlytics.
paramsaddressrequiredLook up a vault on Peerlytics.
idrequiredparamsSearch across addresses, deposits, intents, and vaults on Peerlytics.
queryrequiredparamsQuery deposits from Peerlytics with filtering.
limitoffsetparamsstatuscurrencydelegateplatformacceptingdepositorQuery intents from Peerlytics with filtering.
limitowneroffsetparamsstatusdepositIdrecipientFetch recent protocol activity from Peerlytics.
typelimitsinceparamsFetch taker activity history for an address from Peerlytics.
paramsaddressrequiredFetch maker activity history for an address from Peerlytics.
paramsaddressrequiredList supported payment platforms from Peerlytics with method hashes.
paramsList supported currencies from Peerlytics.
paramsList Peerlytics API keys for the authenticated account.
paramsCheck Peerlytics API credit balance and usage.
paramsRead the current USDC balance for an address.
tokenparamsaddressList checkout sessions from the Pay API, with a local cache fallback.
pageparamsstatuspageSizeShow a single checkout session or poll its latest status.
paramssessionIdrequiredShow the stored Peer CLI config merged with current global flags.
paramsList supported payment platforms.
paramsList supported fiat currencies.
paramsRead the authoritative StakeVault state for a staker and optional taker.
takerparamsstakerrequiredRead indexed staking, authorization, claim, and risk-window state with freshness metadata.
takerrequiredparamsRead total stake owned by an address.
ownerrequiredparamsRead stake locked behind active chargeback windows.
ownerrequiredparamsRead stake available for withdrawal or a new lock.
ownerrequiredparamsRead non-stake USDC claimable by a beneficiary.
paramsbeneficiaryrequiredResolve the effective stake owner backing a taker.
takerrequiredparamsRead the stake owner selected by a taker before authorization checks.
takerrequiredparamsRead whether a stake owner authorizes a taker.
ownerrequiredtakerrequiredparamsRead whether chargebackable intent admissions are paused.
paramsRead the minimum collateral lock window for a payment method.
paramspaymentMethodHashrequiredRead whether a deposit has dispute protection enabled for a payment method.
escrowrequiredparamsdepositIdrequiredpaymentMethodrequiredCheck whether the selected environment has an IntentGuardian deployment.
paramsRead the live IntentGuardian fee and extension policy.
paramsQuote the authoritative on-chain cost to extend an intent.
paramsintentAmountrequiredadditionalSecondsrequiredRead payer token balance and allowance available to IntentGuardian.
payerrequiredtokenrequiredparamsDiscover Peer Cash capabilities
Return live Base USDC destinations, payout platforms, fiat currencies, payee hints, amount bounds, and pricing. Call this before naming a rail or currency.
includeRelaySourcesRead Peer Cash fill statistics
Return trailing 30-day fill counts and first-fill timing by payout platform and currency. Use this as historical routing evidence, never as a guarantee.
Takes no parameters.
Discover cross-chain source assets
Return live Relay-supported EVM source chains and tokens that can route into Base USDC before a Peer Cash order.
Takes no parameters.
Quote a source asset into Base USDC
Quote a live Relay route from an EVM source asset into Base USDC. The response contains unsigned transaction data; this tool never signs or submits it.
userrequiredamountrequiredrecipienttradeTypesourceChainIdrequiredsourceCurrencyrequiredRead Relay execution status
Track a previously submitted cross-chain source route by Relay request ID. Retry this read; never resubmit from an unknown status.
requestIdrequiredEstimate fiat received
Estimate fiat received for Base USDC at the live Chainlink oracle rate. This is not a locked quote; the binding rate resolves when a buyer fills.
amountrequiredcurrencyrequiredplatformFinalize a confirmed cash-out deposit
Read a confirmed Base createDeposit receipt and resolve the resumable Peer deposit id. Call only after the host confirms the createDeposit transaction.
transactionHashrequiredRead a Peer Cash buyer profile
Return protocol history for the buyer that matched an order so an automation can assess delivery context without trusting display identity.
addressrequiredRead a Peer Cash order
Return one order state, amounts, fills, and next actions from its deposit id. Brief ORDER_NOT_FOUND responses after finalization may be indexer lag; retry this read, never the deposit transaction.
depositIdrequiredList Peer Cash orders
List orders owned by a maker wallet, optionally limited to orders that still need attention.
limitownerrequiredinFlight100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
npm install --global [email protected]peer --helpnpx -y [email protected] quote --from USD --amount 100 --platform wise{ "mcpServers": { "peer": { "command": "npx", "args": [ "-y", "[email protected]", "mcp", "--profile", "read-only" ] } }}https://mcp.peer.xyz/mcpnpm installnpm run dev -- quote --from USD --amount 100 --platform wisenpm run check