Examples and workflows
Protocol IDs, chain slugs, and agent prompts for looping, curator screens, Solana, and credit pools.
Philidor MCP is a read-only risk layer. Protocol MCPs (Aave, Morpho) can prepare transactions. Use this server before you size a loop, pick a spoke, or rotate a book: scores, rates, utilization, deposit caps, and incidents.
No API key. Connect once, then ask in plain language. The tables below are the IDs the tools actually accept.
Protocol IDs
Use these values in search_vaults.protocol and get_protocol_info.protocolId.
| ID | What it covers | How to pick a generation |
|---|---|---|
aave | Aave V2, V3 (Main, Lido, Horizon), and V4 | Vaults: protocolVersion=v4. Markets: version=v4 |
morpho | Morpho Blue vaults and isolated markets | Markets are loan/collateral pairs, not pools |
spark | SparkLend and Spark Savings | Markets are version=v1 (SparkLend); Savings are vaults |
compound | Compound III Comets | One reserve per Comet |
yearn | Yearn V2 / V3 aggregators | Vault search only |
beefy | Beefy vaults | Vault search only |
uniswap | Uniswap V2 / V3 / V4 pools | Filter with protocolVersion (v3, v4) |
nest | Nest credit / savings | Vault search only |
maple | Maple V2 pools and Syrup share tokens | Credit evidence, not a generic money-market util |
kamino | Kamino K-Lend markets and Earn kVaults on Solana | Markets: version=klend. Vaults: klend or kvault |
aave-v4 is not a protocol id. Pass protocol=aave and protocolVersion=v4 (vaults) or
version=v4 (markets). The tools accept aave-v4 as an alias and rewrite it.
Live versions, auditors, and incidents: get_protocol_info with protocolId=aave (V4 is one row in the versions list). Full module notes: Supported Protocols.
Chain slugs
search_vaults.chain accepts the display name (Ethereum) or the slug. get_vault / get_vault_risk_breakdown want the slug. Markets also accept the integer chain id.
| Slug | Chain id | Notes |
|---|---|---|
ethereum | 1 | EVM 0x addresses |
base | 8453 | |
arbitrum | 42161 | |
optimism | 10 | Aave V4 EtherFi Cash lives here |
polygon | 137 | |
avalanche | 43114 | Aave V4 Main / Forex / AVAX Correlated |
linea | 59144 | |
monad | 143 | |
plume | 98866 | |
stable | 988 | |
plasma | 9745 | |
solana | 1399811149 | Addresses are base58 and case-sensitive |
Supported Chains has explorers and finality. Ask the agent to load philidor://supported-chains if you want live vault counts.
What each search returns
search_vaults prints a card per vault: name, protocol, chain, asset, TVL, APR, risk score / tier, and a Deposits: line (open with remaining cap, uncapped, closed, or unknown).
list_markets prints the venue a depositor picks (Aave pool or V4 spoke, Morpho pair, Kamino K-Lend market): id, supplied, borrowed, utilization, reserve count. Aave V4 spokes that share a hub are grouped under a composed parent (aave-v4-1-hub-global-dollar).
get_market expands one id into every reserve: supply APR, borrow APR, utilization, risk tier, and the liquidity hub_address on Aave V4. Hub parent ids are composed from those spokes. /v1/markets/{hubId} is not a real resource.
Do not treat a headline APR as executable. Check Deposits: and, for a loop, the borrow side on the market.
Same questions as Aave MCP
Aave's official server (https://mcp.aave.com) is the execution layer: wallet positions, health factor, preview_action, then prepare_action (unsigned txs). Philidor does not hold a wallet, does not compute health factor, and does not build calldata.
Connect both. Ask Aave "can I do this on my account." Ask Philidor "should I do this on this venue."
Aave's own first questions, rewritten for Philidor:
| You would ask Aave | Ask Philidor instead |
|---|---|
| Where can I earn the most on stablecoins across Aave right now? | Highest-APY Prime or Core USDC vaults that still accept deposits, across Aave V3, Aave V4, Morpho, and Spark. Split base yield from rewards. |
Review what 0x… holds on Aave V4, then simulate borrowing another 5,000 USDC. | Before I add USDC borrow on Aave V4 Ethereum Main: is the reserve open, what is utilization and borrow APR, and what is the 0-10 score of the collateral I will post (WETH, weETH, cbBTC)? |
| What is my health factor, and how far can BTC fall? | Break down the risk vectors on Aave V4 Main cbBTC and WBTC. Any critical incidents on that market in the last year? |
| Prepare a supply of 1M USDC on Aave V4. | Which Aave V4 USDC reserves are still Deposits: open, and what capacity is left? Compare Main vs Bluechip vs EtherFi Cash. |
| I have idle GHO. sGHO, or supply it to a market? | Compare Spark / Aave GHO-related vaults to Morpho USDC Prime on score, tier, and whether deposits are open. Philidor will not recommend a venue on APR alone. |
| Has USDC's supply rate on Ethereum been stable this year? | Open the largest Aave V3 and V4 USDC reserves on Ethereum and show current APR plus 7d / 30d averages from snapshots. |
One looping turn that uses both servers
I want to loop weETH against USDC on Aave V4. First, with Philidor: list V4 markets by supplied value, open Ethereum Main, show weETH and USDC reserves (score, tier, utilization, borrow APR, deposit status), and check incidents. If that still looks Core or better and USDC is open, then with Aave: review wallet
0x…, preview borrowing 5,000 USDC, and prepare the txs.
Aave answers get_user_summary / preview_action / prepare_action. Philidor answers check_loop_venue (or list_markets + get_market if you still need the full reserve list). Skip Philidor and you can prepare a perfect tx into a closed reserve or a points-farm APY. Skip Aave and you cannot see your health factor.
1. Size a loop across Aave deployments
Someone running a large loop (supply collateral, borrow a stable, restake or re-supply) needs the venue first, then the reserve. Official protocol MCPs can draft the txs. Philidor answers whether the spoke still has borrow depth, whether the collateral scores as Prime or Core, and whether the reserve is closed.
Ask:
Check looping weETH against USDC on Aave V4 Ethereum Main. Score, utilization, borrow APR, deposits, incidents. If that is still Core or better and USDC is open, I will preview the borrow on Aave MCP.
Tools the agent should call
check_loop_venuewithmarketId=aave-v4-1-main,collateral=weETH,debt=USDC- Optional:
list_marketswithprotocol=aave,version=v4if the spoke id is unknown - Optional:
check_loop_venueaave-v4-10-etherfi-cashif the loop sits on ether.fi Cash (Optimism, permissioned borrow) get_vault_risk_breakdownon the collateral vault id from step 1 if you need the vector split- Prompt
review_loop_venueif you want the same report as a structured analysis template
Market ids you can paste
| Market id | Spoke | Chain |
|---|---|---|
aave-v4-1-main | Main | Ethereum |
aave-v4-1-bluechip | Bluechip | Ethereum |
aave-v4-1-etherfi | Etherfi | Ethereum |
aave-v4-1-maple-syrupusdg | Maple SyrupUSDG | Ethereum |
aave-v4-1-hub-global-dollar | Global Dollar hub (composed) | Ethereum |
aave-v4-10-etherfi-cash | EtherFi Cash | Optimism |
aave-v4-43114-main | Main | Avalanche |
V3 is a different generation. Same protocol id, different version:
List Aave V3 markets on Ethereum, then read the USDC reserve's risk tier and utilization.
list_markets with protocol=aave, version=v3, chain=ethereum (or 1) returns the Ethereum Main market (aave-v3-1-ethereum); get_market on it lists every reserve. Other V3 instances (Lido, Horizon) are vaults, not markets: search_vaults with protocol=aave, protocolVersion=v3.
On V4, several spokes share one hub. get_market on a spoke returns hub_address and the parent id (aave-v4-1-hub-core for Main, EtherFi, Gold and Forex; aave-v4-1-hub-prime for Bluechip). get_market on the hub id lists every spoke and unions their reserves. check_loop_venue on a hub id only accepts a pair whose two legs sit on the same spoke.
2. Screen a Morpho USDC book
Curated vaults look similar on APY and are not the same book. Compare two names, then read the isolated markets underneath.
Ask:
Find Prime-tier Morpho USDC vaults on Ethereum that still accept deposits. Compare Gauntlet and Steakhouse. Break down risk vectors on the larger one.
Tools
search_vaults:protocol=morpho,asset=USDC,chain=ethereum,riskTier=Prime,depositable=true,sortBy=tvl_usdcompare_vaultswith the twonetwork+addresspairs from step 1get_vault_risk_breakdownon the winnerget_curator_infoif you care about who allocates
list_markets with protocol=morpho lists Blue pairs (collateral / loan / LLTV), not the vault wrapper.
3. Solana: Kamino K-Lend and Earn
Solana addresses are base58 and case-sensitive. Do not lowercase them.
Ask:
List Kamino K-Lend markets on Solana by supplied value. Then find the safest USDC kVaults that are still depositable.
Tools
list_markets:protocol=kamino,version=klend,chain=solanaget_marketwith a market id from that listsearch_vaults:protocol=kamino,protocolVersion=kvault,asset=USDC,chain=solana,depositable=truefind_safest_vaults:asset=USDC,chain=solana(no protocol filter; read the protocol line on each card)
4. Maple credit vs a money market
Maple is underwritten credit, not a utilization curve. The vault card still has TVL, APR, and a score. It will not invent a generic borrow APR.
Ask:
Show Maple pools on Ethereum, including syrupUSDC. Then compare syrupUSDC to the largest Aave V3 USDC reserve on Ethereum.
Tools
search_vaults:protocol=maple,chain=ethereumget_protocol_info:protocolId=maplesearch_vaults:protocol=aave,protocolVersion=v3,asset=USDC,chain=ethereum,sortBy=tvl_usd,limit=3compare_vaultson one Maple address and one Aave address
5. Cross-protocol USDC that you can still enter
The usual agent foot-gun: sort by APR and try to deposit into a capped reserve.
Ask:
Find USDC vaults across Ethereum and Base, Prime or Core, that are accepting deposits, sorted by net APR. Skip anything closed. Show base yield vs rewards on the top three.
Tools
search_vaults:asset=USDC,chain=ethereum,depositable=true,riskTier=Prime,sortBy=apr_net- Repeat for
chain=baseor ask for both in one prompt (the agent should run two calls;chainis a single filter) get_vaulton each shortlisted id (APR 7d / 30d averages when snapshots exist)explain_risk_scoreif a Core 7.1 needs a plain-language read
6. After an incident, before you add size
Ask:
Which vaults had a critical incident in the last year? Is Aave V4 Ethereum Main in that list? What happened on that market recently?
Tools
list_vaults_with_incidentsget_market_eventswithmarketId=aave-v4-1-mainget_protocol_infowithprotocolId=aavefor the published incident list
Absence of events is the normal state. Do not treat an empty list as a missing integration.
Prompt cheat sheet
Copy these after the quickstart.
| Job | Prompt |
|---|---|
| Aave V4 venues | List the largest Aave V4 markets by supplied value |
| Loop pair | Check looping weETH against USDC on aave-v4-1-main |
| One spoke | Show every reserve in Aave V4 Ethereum Main with borrow APR and risk tier |
| V3 vs V4 USDC | Compare Aave V3 Main USDC to Aave V4 Main USDC on Ethereum |
| Morpho curators | Compare Gauntlet and Steakhouse USDC vaults on Morpho Ethereum |
| Solana | List Kamino K-Lend markets on Solana, then the safest depositable USDC kVaults |
| Maple | Show Maple Ethereum pools and whether syrupUSDC is still open |
| Depositable yield | Highest-APY Prime USDC vaults on Ethereum that accept deposits right now |
| Incident check | Which vaults had critical incidents recently, and any events on aave-v4-1-main |
Parameter names differ by tool: vaults use protocolVersion, markets use version. Both mean the generation (v3, v4, klend).