RWA Pipe MCP

July 21, 2026 · View on GitHub

The first MCP server purpose-built for AI agents that need to query, route, or hold tokenized real-world assets. ~$30B in distributed asset value across treasuries, private credit, real estate, gold, and equities — exposed as 47 tools any Claude / Cursor / Continue / custom agent can call.

Designed for the AI-treasury-management story: agents holding idle USDC need yield destinations they can evaluate and allocate to under explicit compliance constraints. RWA Pipe gives them the data layer to do that.


Why AI agents specifically?

What humans useWhat agents need
Dashboard charts (rwa.xyz, DeFi Llama)Structured JSON they can branch on
"Show me concentration over time"get_token_risk_signals returning anomaly classifications + flat flags[]
Filter UI on a websiteget_rwa_tokens({kycRequired: false, jurisdiction: 'US', minTvl: 50000000})
PDF audit reports(coming) LLM-readable attestation summaries
Subscription paywalls(coming) x402 micropayments — agent pays per call in USDC

Nobody else does this for RWA. Coinbase / BitGo / CoinGecko have crypto MCPs. The Graph is generic. rwa.xyz sells dashboards to humans for $500/seat. We are the only canonical RWA MCP — and we shipped it before the category exists.


Quick Start

npx rwapipe-mcp

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "rwapipe": {
      "command": "npx",
      "args": ["rwapipe-mcp"],
      "env": {
        "RWAPIPE_API_KEY": "rwa_free_your_key_here"
      }
    }
  }
}

Get a free key at https://rwapipe.com/register. Free tier = 100 req/min, no credit card.

Cursor / Continue

Same MCP-server config block under your editor's MCP settings. The server speaks both stdio and SSE.


Flagship tools for agent use cases

get_rwa_tokens — constraint-driven token discovery

The whole point: agents specify what they need in plain JSON and get a list of matching tokens.

get_rwa_tokens({
  category: "us-treasury",
  kycRequired: false,         // permissionless only
  audited: true,
  redeemable: true,           // must have on-chain exit
  minTvl: 50_000_000,         // institutional-grade
  hasApy: true,
  sortBy: "tvl",
  limit: 10
})

14 constraint filters map directly to the questions a treasury allocator agent has to answer:

FilterWhat it answers
kycRequired, accreditedOnly"Can I hold this without onboarding?"
audited, hasAttestation"Has anyone independently verified the contract / collateral?"
redeemable, transferable"Can I exit / can I move it on-chain?"
jurisdiction, custodianType, fundDomicile"Does this match our regulatory mandate?"
minTvl, maxManagementFee, maxMinInvestment"Is the size and economics OK?"

Plus the basics: chain, category, issuer, search, hasApy, excludeStablecoins, distributionType, platform, eligibleInvestors.

get_token_risk_signals — single-call risk dashboard

Returns the structured signals an agent needs to decide "is it safe to hold this right now":

{
  "token": {"chain":"ethereum","symbol":"BUIDL","issuer":"BlackRock"},
  "signals": {
    "tvl": {"current_usd": 147652591, "change_24h_pct": 0.01, "anomaly": "stable"},
    "mint_burn_24h": {"net_qty": 0, "anomaly": "quiet"},
    "whale_activity_24h": {"large_transfers_count": 0, "anomaly": "quiet"},
    "attestation": {"url": null, "status": "missing"},
    "compliance": {
      "kyc_required": true, "accredited_only": true,
      "jurisdiction": "US", "transferable": false,
      "audited": true, "custodian_type": "qualified"
    }
  },
  "flags": ["no_attestation_url", "kyc_required", "accredited_only"]
}

Anomaly classifications (stable/rising/falling/volatile for TVL; quiet/expansion/contraction for mints; quiet/active/outflow_spike for whales) replace the agent having to threshold raw numbers itself. The flat flags[] array is designed to be matchable against an agent's allow/deny rules.

get_whale_alerts — real-time whale-flow stream

Real-time mint/burn/transfer events >$50K USD with 1h delay on free tier. Agent subscribes to its own filter (chain, category, symbol).

Polling pattern for "subscribe to changes"

MCP servers don't push — agents poll. Recommended cadence for a treasury-monitoring agent:

ToolSuggested intervalWhat changes
get_token_risk_signals5–15 minTVL drift, mint/burn anomaly classification, whale-activity flag
get_whale_alerts({symbol, chain, timeWindow: '1h'})5 minIndividual large transfers
get_mint_burn_events({chain, days: 1})15 minBulk mint/burn breakdown
get_rwa_tokens({...constraints})60 minCohort membership changes (a token entered/left the agent's allow-list)

Compare against the agent's last-seen state, alert on diffs. Free tier (100 req/min) is plenty for this pattern across dozens of tokens.


Reference use case: "treasury allocator agent"

Prompt to Claude with this MCP loaded:

"I have $10M idle USDC on Base. Find the best yield-bearing tokenized treasury exposure with these constraints: no KYC, transferable on-chain, contract audited, minimum $50M TVL, redeemable within T+2. Rank by APY and current risk signals. Show your reasoning."

What the agent does:

  1. Calls get_rwa_tokens({chain: "base", category: "us-treasury", kycRequired: false, transferable: true, audited: true, minTvl: 50_000_000, hasApy: true, sortBy: "apy"})
  2. For each candidate, calls get_token_risk_signals(chain, address) to check anomalies
  3. Filters out tokens with flags matching no_attestation_url or whale_outflow_spike_24h for added safety
  4. Returns ranked list with explicit risk reasoning

This whole loop is one user prompt and three MCP calls — no website scraping, no PDF reading, no broker. That's the AI-RWA opportunity.


All 47 tools

AI-agent decision-making (new, flagship)

ToolUse case
get_rwa_tokensConstraint-driven token discovery (14 filters)
get_token_risk_signalsOne-call structured risk dashboard for a token
get_whale_alertsWhale-flow stream for monitoring/subscription

Tokens

ToolDescription
get_token_detailsGet token info: supply, APY, holders, issuer
get_token_transfersRecent transfers for a token
get_token_holdersTop holders sorted by balance
get_token_historyHistorical TVL/supply data
get_holder_balanceBalance of specific holder for a token
get_wallet_portfolioAll RWA holdings for a wallet across all chains

Market

ToolDescription
get_rwa_marketMarket overview with all token stats
get_market_statsTotal TVL, token count, average APY
get_market_trends24h/7d changes by category and chain
get_market_moversTop gainers and losers
get_market_concentrationHolder concentration across all tokens

TVL

ToolDescription
get_tvl_historyHistorical TVL data (up to 365 days)
get_tvl_by_chainCurrent TVL by blockchain
get_tvl_by_categoryTVL by asset category
get_tvl_by_issuerTVL by issuer
get_cross_chain_tvlCross-chain TVL for a token

Issuers, Categories, Chains

ToolDescription
get_issuersAll token issuers with aggregated TVL
get_issuer_detailsIssuer details and their tokens
get_categoriesToken categories with TVL stats
get_category_detailsCategory details and tokens
get_chainsSupported blockchains with TVL

Mint/Burn

ToolDescription
get_mint_burn_eventsRecent mint or burn events
get_mint_burn_summaryDaily mint/burn aggregates

Risk & Whales

ToolDescription
get_risk_scoreToken risk score with sub-scores
get_holder_concentrationConcentration metrics for one token
get_large_transfersRecent whale transfers for a token
get_whale_alertsWhale-sized transfers with filters
get_whale_net_flowNet inflow/outflow for an address
get_transfer_size_distributionWhale-transfer size histogram (5 USD buckets)
compare_treasuriesSide-by-side treasury comparison

Due diligence & discovery

ToolDescription
get_dossierComplete DAO-grade due-diligence dossier for one token
get_dossier_diffWhat changed in a token's dossier since a baseline date (quarterly re-review)
compare_dossiersUp to 12 tokens as compact diligence rows side-by-side
compare_tokens2-6 tokens compared on live metrics (any category)
resolve_tokenFuzzy-match a name/symbol/issuer to (chain, address) candidates
get_new_issuesRecently-launched RWA tokens within a time window

Yields, Webhooks, Contracts

ToolDescription
get_token_yieldsAPY data for yield-bearing tokens
manage_webhooksSubscribe to mint/burn/whale events
get_contract_profileContract intelligence for an address
list_contract_eventsContract activity events
list_contract_relationsDiscovered contract relationships
run_contract_scanTrigger a fresh contract scan
list_contract_profilesBrowse all known contracts

Supported blockchains (22 active)

EVM

ethereum, arbitrum, avalanche, base, bsc, celo, gnosis, linea, mantle, optimism, polygon, zksync, fraxtal, ink, plume, scroll, fantom, sei

Non-EVM

solana, stellar, hedera, sui, ton, xrpl, near

(algorand / tron deprecated 2026-04-30 due to indexer freshness — chain handlers retained for future re-add.)


Asset categories

CategoryExamples
us-treasuryBUIDL, USDY, OUSG, USDM
stablecoinUSDT, USDC, USD0, PYUSD
money-marketMoney market funds
commodity / goldPAXG, XAUT
equitybIB01, BackedERNX
non-us-debtbHIGH, bIBTA
corporate-bondCorporate bond tokens
private-creditMaple, Centrifuge pools
structured-creditStructured tranches
real-estateRealT, Lofty

Environment variables

VariableDefaultDescription
RWAPIPE_API_KEYrequiredAPI key. Get free at https://rwapipe.com/register
RWAPIPE_API_URLhttps://rwapipe.com/apiAPI endpoint
MCP_MODEstdioTransport mode: stdio or sse
MCP_PORT3001Port for SSE mode

SSE mode (hosted)

For multi-tenant agent platforms, run as SSE server:

MCP_MODE=sse MCP_PORT=3001 npm start

Endpoints: GET /sse (connection), POST /message (RPC), GET /health, GET / (info).

A hosted SSE server is also available at https://rwapipe.com/mcp for low-volume experiments.


Roadmap (pre-1.0)

  • ✅ 47 tools, 28 chains, 392 curated tokens (2026-07-20; registry pruned of 599 phantom entries 2026-07)
  • ✅ AI-agent constraint filters + risk-signals composite
  • 🚧 LLM-parsed attestation summaries (get_diligence_summary)
  • 🚧 Token taxonomy: regulatory_class, programmability, risk_class
  • 🚧 Agent-subscription stream (subscribe_anomaly)
  • 🚧 x402 metering — pay-per-call in USDC

License

MIT