Morpho MCP
Morpho's hosted MCP server — query vaults, markets, and positions, and prepare unsigned transactions from any MCP-compatible agent.
Morpho MCP is Morpho's hosted, remote MCP server. It gives any MCP-compatible agent live access to Morpho vaults, markets, and positions, and lets it prepare unsigned transactions for you to review and sign.
Morpho MCP is experimental and pre-v1.0. Tool names, schemas, and behavior may change without notice. Do not build production systems against it yet.
Setup and Usage
The server is hosted, public, and read-only by design. There is nothing to install and no key to manage.
| Endpoint | https://mcp.morpho.org/ |
| Transport | Streamable HTTP |
| Authentication | None — no API key, no account |
| Server name | morpho-mcp |
Two conventions apply to nearly every call:
- Every tool takes a
chain. Vault and market addresses are chain-specific, so the chain is required on all tools exceptmorpho_health_checkandmorpho_get_supported_chains. Rather than hardcoding a chain list that will drift, callmorpho_get_supported_chains— it returns each chain's slug, chain ID, and explorer URL. - Discover before you write. Find a target with
morpho_query_vaultsormorpho_query_markets, inspect it withmorpho_get_vaultormorpho_get_market, then call amorpho_prepare_*tool. Never hardcode addresses.
A morpho_prepare_* tool returns a PreparedOperation: the transactions to sign, any requirements such as ERC-20 approvals (already included in transactions), an outcome preview of the resulting position, and a warnings array. Warnings carry a severity — an error means stop, and the transactions must not be presented for signing.
Prepare tools return unsigned transaction payloads. The server never signs and never broadcasts. You always review and submit the transaction yourself — treat every payload as untrusted until you have read it.
Setup Examples
Claude Code
Add the server with the claude mcp add command. The --scope user flag registers it once for every project on your machine; drop it to scope the server to the current project.
claude mcp add morpho --scope user --transport http https://mcp.morpho.org/Confirm it connected:
claude mcp listInside a session, /mcp lists the connected servers and the tools each exposes.
Claude Code can also install the server as a plugin from the Morpho marketplace, which pins the same endpoint:
/plugin marketplace add morpho-org/morpho-skills
/plugin install morpho-mcp@morpho-agentCodex
Add the server with codex mcp add, passing --url to select the Streamable HTTP transport:
codex mcp add morpho --url https://mcp.morpho.org/Confirm it connected:
codex mcp listYou can also declare the server in ~/.codex/config.toml to make it global, or in a trusted project's .codex/config.toml to scope it to that project:
[mcp_servers.morpho]
url = "https://mcp.morpho.org/"A morpho_prepare_* call simulates the transaction before returning, so it can take longer than a plain read. If Codex times out with a transport error, raise the per-server tool timeout:
[mcp_servers.morpho]
url = "https://mcp.morpho.org/"
tool_timeout_sec = 120Other clients
Any MCP client that speaks the Streamable HTTP transport can connect by pointing at the endpoint. In Cursor, add it to .cursor/mcp.json:
{ "mcpServers": { "morpho": { "type": "http", "url": "https://mcp.morpho.org/" } } }Tools
The server exposes sixteen tools. Read tools answer questions about protocol state; prepare tools return unsigned transactions.
| Category | Tool | Description |
|---|---|---|
| Utility | morpho_health_check | Check the server and its connected services. |
| Utility | morpho_get_supported_chains | List supported chains with slug, chain ID, and explorer URL. |
| Vaults | morpho_query_vaults | Query vaults, with filtering and sorting. |
| Vaults | morpho_get_vault | Get one vault's details. |
| Markets | morpho_query_markets | Query Morpho Blue markets, with filtering. |
| Markets | morpho_get_market | Get one market's details. |
| Positions | morpho_get_positions | Every vault and market position for a user on a chain, zero balances filtered out. |
| Positions | morpho_get_token_balance | A token balance, plus whether Morpho or the Bundler still needs an approval. |
| Transactions | morpho_prepare_deposit | Deposit into a vault, including any approval. |
| Transactions | morpho_prepare_withdraw | Withdraw from a vault. Accepts "max". |
| Transactions | morpho_prepare_supply | Supply to a market, including any approval. |
| Transactions | morpho_prepare_borrow | Borrow from a market, with a health-factor check. |
| Transactions | morpho_prepare_repay | Repay a market borrow. Accepts "max". |
| Transactions | morpho_prepare_supply_collateral | Supply collateral without borrowing, including any approval. |
| Transactions | morpho_prepare_withdraw_collateral | Withdraw collateral. Accepts "max". |
| Transactions | morpho_prepare_claim_rewards | Claim Merkl rewards against the canonical Distributor. |
Every operation above is also available as a terminal command — see Morpho CLI & Skills.
Prompt Examples
Once the server is connected, ask in plain language. Your agent picks the tools.
- What are the five highest net-APY USDC vaults on Base? Show TVL and curator for each.
- Compare the borrow rates on the wstETH/WETH markets on Ethereum and Arbitrum.
- Show every Morpho position for
0x…on Base, and flag any health factor below 1.2. - Prepare a 1,000 USDC deposit into the highest-APY USDC vault on Base for
0x…, and show me the approval and deposit transactions before I sign anything. - If I borrow 1 WETH against my wstETH collateral on Ethereum, what is my health factor afterwards?
- Do I have claimable Merkl rewards on Base? If so, prepare the claim.
- Which chains does Morpho support, and what are their chain IDs?