LayerHop
com.layerhop/mcpVersion 0.5.0Best-price cross-chain swap quotes across 70 chains (EVM + Solana). Holds no keys, never signs.
Status
Responds353 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 14:04 UTC
- Latency
- 353 ms
- Remotes responding
- 1 of 1
- Sign-in
- No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 22:14 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://mcp.layerhop.com/mcpResponds353 msNo sign-in
Claude Code
claude mcp add --transport http layerhop https://mcp.layerhop.com/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: layerhop
Remote MCP server URL: https://mcp.layerhop.com/mcpCursor
{
"mcpServers": {
"layerhop": {
"url": "https://mcp.layerhop.com/mcp"
}
}
}VS Code
code --add-mcp '{"name":"layerhop","type":"http","url":"https://mcp.layerhop.com/mcp"}'Streamable HTTP
npm: @layerhop/mcp 0.5.0Package only
npm (npx)
claude mcp add layerhop -- npx -y @layerhop/mcp@0.5.0Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
22 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
build_transactionTurn a quoteId from get_quote into the UNSIGNED transaction the user's own wallet must sign: EVM {chainId, to, data, value in wei, optional ERC-20 approval to send first} or Solana {serializedTx base64}. Includes plain-language signing steps. The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. Only use this when the user has their own signer and explicitly wants raw transaction data, after they confirmed the quote; otherwise give them the swap link. | No | No | Yes | Yes |
cancel_limit_orderCancel an open limit order: returns the UNSIGNED cancel transaction (Solana) or the cancellation typed data (EVM, no gas) for the maker's wallet to sign, then submit_limit_order. An order that was never submitted is cancelled at once (nothing to sign). Confirm with the user first. The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. | Yes | No | Yes | Yes |
create_deposit_addressCreate an address the user sends tokens to; every deposit is swapped/bridged and delivered as toToken on toChain to recipient. No wallet connection or signing needed. Non-custodial: the address belongs to the liquidity provider (Relay), LayerHop never holds funds. Tell the user: send ONLY srcToken on srcChain to the address (other tokens or chains may be lost for good), at least $1 worth; refundTo must be the user's own address on srcChain, never an exchange (CEX) deposit address. Needs a LayerHop API key; test keys (lh_test_) give a fake sandbox address that must never receive real funds. The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. | No | No | No | Yes |
create_limit_orderBuild a limit order: sell sellAmount of sellToken once the market gives at least minReceive of buyToken. Solana (default, Jupiter Trigger): returns an UNSIGNED transaction; LayerHop's fee applies when buyToken is SOL, USDC or USDT. EVM chains with CoW Protocol (Ethereum, Arbitrum, Base, BNB Chain, Polygon, Avalanche, Gnosis, Linea, Plasma, Ink): returns EIP-712 typed data plus the token approval it needs; sellToken must be an ERC-20. Then the maker's own wallet signs and you call submit_limit_order. Worth at least $5. The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. Confirm the price with the user first. | No | No | No | Yes |
disable_deposit_addressDisable a deposit address: LayerHop stops tracking it (no more orders or webhooks for it). The provider may still process funds sent to it later, so the user must stop using it. Cannot be undone. Confirm with the user first. Needs a LayerHop API key. | Yes | No | Yes | Yes |
get_deposit_addressGet one deposit address with its 20 most recent deposits (orders, quoteId starting with dep_): amount deposited and delivered, status (submitted, pending, filled, refunded, failed) and tx hashes. Tell the user: send ONLY srcToken on srcChain to the address (other tokens or chains may be lost for good), at least $1 worth; refundTo must be the user's own address on srcChain, never an exchange (CEX) deposit address. Needs a LayerHop API key; test keys (lh_test_) give a fake sandbox address that must never receive real funds. Read-only. | Not declared | Yes | Not declared | Yes |
get_limit_orderGet one limit order with its fills (each fill is an order whose quoteId starts with lof_). Read-only. | Not declared | Yes | Not declared | Yes |
get_order_statusCheck the status of a swap or bridge after the source transaction was sent: pending, filled (funds delivered), refunded, failed, or unknown (some same-chain providers; check the tx on an explorer). Read-only. | Not declared | Yes | Not declared | Yes |
get_quoteGet the best price to swap or bridge tokens, within one chain or across chains (EVM <-> Solana). Asks every liquidity provider and returns the best quote plus alternatives with human-readable amounts, minimum received after slippage, fees (LayerHop fee, partner fee, provider fee, gas) and ETA. Returns a quoteId (valid until expiresAt) and a layerhop.com swapLink a human can open to review and sign. Read-only: The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. Always show the user the fees and output and get confirmation before proceeding. | Not declared | Yes | Not declared | Yes |
get_swap_linkCreate a https://layerhop.com/swap link prefilled with the swap, which the user opens to review the live quote and fees and sign in their own wallet. This is the default, safest way to execute a swap. The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. The amount is in human units. | Not declared | Yes | Not declared | No |
get_token_riskSafety report for a token before the user buys or receives it: honeypot (can't sell), buy/sell/transfer taxes, owner powers (mint, blacklist, pause, freeze), unpublished code, few holders, and fake majors (a token calling itself USDC/ETH/SOL at the wrong address). level is ok, caution, danger or unknown (no source answered; never block a swap on unknown alone). On danger, warn the user and get explicit confirmation before get_quote. Read-only. | Not declared | Yes | Not declared | Yes |
list_chainsList every blockchain LayerHop can swap from or to: slug, numeric chain id, name, VM type (evm or svm = Solana) and native coin. Read-only. | Not declared | Yes | Not declared | Yes |
list_deposit_addressesList the deposit addresses of the API key's account and mode (live or test), newest first: address, route, status, deposit count. Needs a LayerHop API key. Read-only. | Not declared | Yes | Not declared | Yes |
list_limit_ordersList limit orders (Solana: Jupiter Trigger; EVM: CoW Protocol) of a wallet, or of the API key's account without a wallet: what is sold, the minimum received, status (built, open, filled, cancelled, expired, failed) and fills. Read-only. | Not declared | Yes | Not declared | Yes |
list_ordersList LayerHop orders (swaps built or submitted through LayerHop) where the address is the sender or recipient, newest first, with status. Public data (addresses only). Read-only. | Not declared | Yes | Not declared | Yes |
list_tokensList LayerHop's built-in tokens on one chain (symbol, contract address or mint, decimals). Symbols can be used directly in get_quote; other tokens can be quoted by address. Read-only. | Not declared | Yes | Not declared | Yes |
lookup_tokenGet one token's symbol, name, decimals, USD price and verified flag from its contract address or SPL mint. The chain is optional: LayerHop finds it (Solana for a mint, else the EVM chain where the token has the most liquidity). verified false means it is on no curated list: confirm the address with the user before swapping. Read-only. | Not declared | Yes | Not declared | Yes |
refresh_deposit_addressAsk LayerHop to check a deposit address for new deposits right away (instead of waiting for the next scheduled check). Call it when the user says they sent funds, then call get_deposit_address after ~15-30 s. Needs a LayerHop API key. | No | No | Yes | Yes |
report_submittedTell LayerHop that the user's wallet broadcast the transaction for a quoteId, so the order is tracked (status, webhooks). Call this once after broadcasting, with the EVM tx hash (0x + 64 hex) or Solana signature. Idempotent. Does not sign or send anything. | No | No | Yes | Yes |
simulate_depositTEST MODE ONLY (lh_test_ key and a test deposit address): record a fake deposit so the integration can be tested end to end; it becomes a test order that settles with webhooks. The amount decides the outcome: base units ending in 4001 -> refunded, 4002 -> failed, anything else -> filled. Moves no real funds. Fails with a live key. | No | No | No | Yes |
simulate_transactionBuild the transaction for a quoteId and dry-run it on-chain (EVM eth_call + gas estimate from the sender; Solana simulateTransaction) without sending anything or recording an order. Reports whether it would succeed, gas / compute units, whether an ERC-20 approval is still needed, and the error if it would fail. Read-only: The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. | Not declared | Yes | Not declared | Yes |
submit_limit_orderSend a limit order's create or cancel step AFTER the maker's own wallet signed it (from create_limit_order or cancel_limit_order): the signed Solana transaction, or the EIP-712 signature of an EVM order. This only relays what the wallet signed; The LayerHop MCP server holds no private keys and never signs or broadcasts transactions. | No | No | Yes | Yes |
Details
- Registry status
- Active
- Published
- Oct 18, 2026
- Updated
- Oct 18, 2026
- Categories
- Uncategorized
- GDPR
- Not declared