io.github.zkp2p/peer
OfficialIntegrates Chainlink oracle rates to estimate fiat received and resolve the binding exchange rate when a Peer Cash buyer fills an order.
Uses Relay-supported source chains and tokens for Peer Cash cross-chain route quoting and tracking into Base USDC.
Supports Wise as a payment platform rail for quotes and related deposit/payee registration workflows via the CLI, such as --platform wise.
This server has a remotely hosted endpoint. Open its connector listing for connection details, authentication requirements, and setup instructions:
peer-cli
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.
Docs and agent-readable text: https://agents.peer.xyz
Exact CLI schemas:
agents/tool-catalog.jsonError contract:
agents/error-catalog.jsonRuntime profiles and counts:
agents/runtime-manifest.json
The generated files come from the runtime registries. Do not hand-maintain a second command list in documentation.
Install
Node.js 22 or newer is required.
The package is peer-protocol-cli; do not install the unrelated unscoped
peer-cli package.
npm install --global peer-protocol-cli@0.4.1
peer --helpRun without a global install:
npx -y peer-protocol-cli@0.4.1 quote --from USD --amount 100 --platform wiseSuccessful output is JSON by default. Errors always use the canonical JSON
error envelope on stderr. --format table changes successful human-facing
output only.
Related MCP server: @coragentic/mcp
Safety model
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.
MCP profiles
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-separatedpeer_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.
{
"mcpServers": {
"peer": {
"command": "npx",
"args": [
"-y",
"peer-protocol-cli@0.4.1",
"mcp",
"--profile",
"read-only"
]
}
}
}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:
https://mcp.peer.xyz/mcpRun the same transport yourself with peer mcp --transport http. HTTP refuses
the cash and full profiles; those authority-bearing profiles remain local
stdio processes.
Peer Cash
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 durabledepositId.peer_cash_order/peer_cash_orders— resume and inspect orders.peer_cash_prepare_access_policy,peer_cash_prepare_withdraw, andpeer_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
Configuration resolves in this order:
CLI flags
environment variables
~/.peer/config.jsonruntime defaults
Common settings:
PEER_ENV:production,preproduction, orstagingPEER_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 followPEER_ENV:api.zkp2p.xyz,api-preprod.zkp2p.xyz, orapi-staging.zkp2p.xyz.PEER_CASH_RPC_URL,PEER_CASH_API_KEY,PEER_CASH_REFERRAL_CODE, andPEER_CASH_REFERRER: cash-profile overrides
Use peer config show, set, unset, and reset for persistent local
settings. peer config show masks secret values. Prefer environment variables
for credentials.
Command families
The CLI covers:
quotes, payee registration, and payee-hash resolution
deposit lifecycle, payment methods, currencies, oracle configuration, and batch updates
intents, pre-intent hooks, fulfillment, release, and cleanup
StakeVault deposits, withdrawals, authorization, indexed freshness, and matured chargeback releases
IntentGuardian policy, live extension quotes, payer funding, and preview-first intent extension
ProtocolViewer and indexer reads, including a raw GraphQL escape hatch
vaults, rate managers, delegation, fees, and snapshots
Peerlytics market, explorer, history, attribution, and API-key operations
USDC balances and transfers
hosted checkout creation, reads, cancellation, and local resume cache
local config and environment inspection
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.
Development
This repository uses npm and its committed package-lock.json.
npm install
npm run dev -- quote --from USD --amount 100 --platform wise
npm run checknpm 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.
Release, deploy and publish
One release ships three things from the same commit: the hosted MCP server
(https://mcp.peer.xyz), the npm package peer-protocol-cli, and the MCP
Registry entry from server.json. Do them in this order:
Version on
main. Align the version inpackage.json,mcp.json,plugin.json,server.jsonand the packaged skill, and merge tomainwith CI green.Deploy. Fast-forward
releases/prodto that commit..github/workflows/deploy.ymlrequires a successfulci.ymlrun for the commit, buildsdeploy/Dockerfile, and deploys it over SSM with peer-deploy's blue-green strategy. Afterwardshttps://mcp.peer.xyz/healthreports the newversion.Publish to npm. Dispatch
publish.ymlonmainwhilemainstill points at the release commit. It runsnpm run checkandnpm publishthrough npm trusted publishing (GitHub OIDC); there is no npm token.Publish to the MCP Registry. Dispatch
publish-mcp.ymlonmain. It checks that npm haspeer-protocol-cli@<server.json version>and that the hosted/healthreports that version, then publishesserver.jsonwith GitHub OIDC. It skips a version the registry already has.
Production config is Infisical project mcp, env prod; config CD snapshots it
to Secrets Manager peer/mcp/prod and runs Deploy releases/prod (reconcile)
automatically. Roll back the hosted server by moving releases/prod to the last
known-good commit; npm and registry versions are not rolled back, so ship a new
version instead. Deploy output is in CloudWatch /peer/deploy/mcp. See
deploy/AWS.md for details.
UPI
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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only gateway for durable agent identity, consent, recognized work, and signed receipts.
Agent routing, safety preflight, execution receipts, best execution and verified outcomes.
Scoped agent execution. Server-side credentials, policy, budgets and verifiable receipts.
Governed agent execution: x402 payments, budgets, receipts, verification, and audit.
Related MCP Servers
- AlicenseAqualityDmaintenanceExposes a machine-callable proof-market surface for agents to submit proof requests, monitor market state, compare coordination regimes, and compose multi-step workflows with no human in the loop.5MIT
- AlicenseNot gradedqualityBmaintenanceEnables agents and clients to manage wallet-owned identity, private per-agent context, swarm coordination, jobs and offerings, policy-gated tool execution, and audit proofs, with Robinhood Chain execution and payment verification support.MIT
- FlicenseNot gradedqualityAmaintenanceEnables AI agents to discover and inspect agent-bound markets, request HTTP 402 quotes, buy tokens cross-chain with USDC via EIP-3009 authorization, and read market history.2-
- AlicenseAqualityCmaintenanceEnables AI agents to browse customers, bookings, and availability while any booking creation or cancellation stays gated behind a human-approved, single-use token cryptographically bound to the exact arguments. Runs over stdio or Streamable HTTP and enforces the read/write separation in host code with a full audit trail.7MIT