Verdict: DeFi risk ratings
Verdict, the security marketplace for DeFi: keyless ratings, methodology and a hack incident feed.
Beschreibung vom Entwickler (englisches Original)
DeFi execution for AI agents — swap, lend, bridge, and yield across 22 chains.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
HAIKU_API_KEY, WALLET_PRIVATE_KEYAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"haiku": {
"command": "npx",
"args": [
"-y",
"haiku-mcp-server"
],
"env": {
"HAIKU_API_KEY": "your-value",
"WALLET_PRIVATE_KEY": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add haiku --env HAIKU_API_KEY=your-value --env WALLET_PRIVATE_KEY=your-value -- npx -y haiku-mcp-serverTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"haiku": {
"command": "npx",
"args": [
"-y",
"haiku-mcp-server"
],
"env": {
"HAIKU_API_KEY": "your-value",
"WALLET_PRIVATE_KEY": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"haiku": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"haiku-mcp-server"
],
"env": {
"HAIKU_API_KEY": "your-value",
"WALLET_PRIVATE_KEY": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 9. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto Haiku-Trading bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: HAIKU_API_KEY, WALLET_PRIVATE_KEY
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.0.8) kam vor 7 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.
In derselben Kategorie: Verdict: DeFi risk ratings, Highwire, Nftdata MCP
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Verdict, the security marketplace for DeFi: keyless ratings, methodology and a hack incident feed.
Trade, launch and research higher.fun coins on Solana, from any AI agent. Unsigned or policy-signed.
OpenSea NFT data, paid per request in USDC on Base via x402 (default) or MPP.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
An MCP (Model Context Protocol) server that enables AI agents to execute blockchain transactions via the Haiku API.
npm install haiku-mcp-server
Or run directly with npx:
npx haiku-mcp-server
| Variable | Required | Description |
|---|---|---|
HAIKU_API_KEY | No | Your Haiku API key for higher rate limits. Contact contact@haiku.trade to request one. |
HAIKU_BASE_URL | No | API base URL. Defaults to https://api.haiku.trade/v1 |
WALLET_PRIVATE_KEY | No | Private key (0x hex) for self-contained execution via haiku_execute. |
RPC_URL_{chainId} | No | Override RPC URL for a specific chain (e.g., RPC_URL_42161 for Arbitrum). |
Note: The API works without a key, but providing one unlocks higher rate limits for production use.
Add to your claude_desktop_config.json:
{
"mcpServers": { "haiku": { "command": "npx", "args": ["haiku-mcp-server"] } } }
With API key for higher rate limits:
{
"mcpServers": { "haiku": { "command": "npx", "args": ["haiku-mcp-server"], "env": { "HAIKU_API_KEY": "your-api-key-here" } } } }
haiku_get_tokensGet supported tokens and DeFi assets for trading.
Parameters:
network (optional): Filter by chain ID (e.g., 42161 for Arbitrum)category (optional): Filter by token category:token - Vanilla tokens (ETH, USDC, etc.)collateral - eg. Aave aTokens (deposited collateral)varDebt - eg. Aave variable debt tokensvault - eg. Yearn/Morpho yield vaultsweightedLiquidity - eg. Balancer LP tokensconcentratedLiquidity - eg. Uniswap V3 LP positionsExample:
{
"network": 42161, "category": "token" }
haiku_get_balancesGet token balances for a wallet address across all chains.
Parameters:
walletAddress (optional): Wallet address or ENS name. Required when WALLET_PRIVATE_KEY is not set; omit to auto-derive from WALLET_PRIVATE_KEY when it is set.Example:
{
"walletAddress": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045" }
Omit `walletAddress` when `WALLET_PRIVATE_KEY` is set to use the derived address.
haiku_get_quoteGet a quote for a token swap or portfolio rebalance.
Note: Quotes are valid for 5 minutes, but execute as quickly as possible after quoting — the longer you wait, the more likely prices have moved and the transaction will fail on-chain.
Parameters:
inputPositions (required): Map of token IID to amount to spendtargetWeights (required): Map of output token IID to weight (must sum to 1)slippage (optional): Max slippage as decimal (default: 0.003)receiver: Receiving wallet address. Required when `WALLET_PRIVATE_KEY` is not set — must be provided explicitly. When WALLET_PRIVATE_KEY is set, auto-derived if omitted. When WALLET_PRIVATE_KEY is not set (Path B), you must pass receiver explicitly.Example:
{
"inputPositions": { "arb:0x82aF49447D8a07e3bd95BD0d56f35241523fBab1": "1.0" }, "targetWeights": { "arb:0xaf88d065e77c8cC2239327C5EDb3A432268e5831": 0.5, "arb:0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9": 0.5 }, "slippage": 0.005 }
Example above omits `receiver` (valid when `WALLET_PRIVATE_KEY` is set). For Path B, include `"receiver": "0x..."`.
haiku_prepare_signaturesExtract and normalize EIP-712 signing payloads from a quote for external wallet signing (Path B only). When using quoteId, the quote must have been obtained in the same session.
Use this when a wallet MCP handles signing (Coinbase Payments MCP, wallet-agent, AgentKit, Safe, etc.). Returns standardized typed data that any wallet's signTypedData can consume, plus step-by-step instructions.
Parameters:
quoteId (preferred): Quote ID from haiku_get_quote — server resolves the full quote from session cache. QuoteId only works when the quote was returned by haiku_get_quote in the same MCP session; otherwise use quoteResponse.quoteResponse (fallback): Full response object from haiku_get_quote, if quoteId is unavailableReturns:
requiresPermit2: Whether Permit2 signature is neededpermit2: EIP-712 payload to pass to signTypedData (if required)requiresBridgeSignature: Whether bridge signature is neededbridgeIntent: EIP-712 payload to pass to signTypedData (if required)sourceChainId: Chain ID for the transactioninstructions: Step-by-step instructions for completing the flowExample:
{
"quoteId": "abc123..." }
haiku_discover_yieldsDiscover yield-bearing opportunities across DeFi protocols, ranked by APY or TVL.
Use this to answer questions like "best lending yields on Arbitrum", "highest APY vaults with at least $1M TVL", or "what can I do with USDC on Base". The iid field in results can be used directly as a key in the targetWeights object in haiku_get_quote.
Parameters:
network (optional): Filter by chain ID (e.g., 42161 for Arbitrum)category (optional): lending (Aave collateral), vault (Yearn/Morpho), lp (Balancer/Uniswap), all (default)minApy (optional): Minimum APY as a percentage (e.g., 5 means ≥5% APY)minTvl (optional): Minimum TVL in USD (e.g., 1000000 means ≥$1M). Filters to established mainstream vaults.sortBy (optional): apy (default) or tvl, descendinglimit (optional): Max results (default 20)Example:
{
"network": 42161, "category": "lending", "minTvl": 1000000, "sortBy": "apy", "limit": 10 }
haiku_analyze_portfolioAnalyze a wallet's DeFi portfolio and surface relevant yield opportunities.
Returns current positions enriched with available APY options, collateral health factors, and context-specific opportunities based on what the wallet actually holds. Pair with haiku_discover_yields for broader market context, then use haiku_get_quote to execute.
Parameters:
walletAddress (required): Wallet address (0x...) to analyzeExample:
{
"walletAddress": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045" }
haiku_executeExecute a quote. Two distinct paths depending on who holds the private key.
Path A — Self-contained (WALLET_PRIVATE_KEY set in env): Haiku signs Permit2/bridge payloads internally and broadcasts. Returns a tx hash.
Parameters:
quoteId (required): Quote ID from haiku_get_quotesourceChainId (recommended): Chain ID from the quote response. Omit only if the quote was obtained in the same session — the server can recover from cache.permit2SigningPayload (optional): Pass through from haiku_get_quote if presentbridgeSigningPayload (optional): Pass through from haiku_get_quote if present (cross-chain only)approvals (optional): Pass through from haiku_get_quote if presentExample:
{
"quoteId": "abc123...", "sourceChainId": 42161, "permit2SigningPayload": { /* from haiku_get_quote, if present */ }, "approvals": [ /* from haiku_get_quote, if present */ ] }
Path B — External wallet (no WALLET_PRIVATE_KEY, using a wallet MCP): You sign and broadcast. broadcast: false is required — without WALLET_PRIVATE_KEY, haiku cannot sign or send the final EVM transaction. If you call haiku_execute with broadcast: true and no WALLET_PRIVATE_KEY, the server returns an error directing you to set broadcast: false and broadcast the returned transaction via your wallet MCP.
Before calling haiku_execute:
approvals is non-empty in the quote: broadcast each approval as a transaction { to, data, value } (include value when present, e.g. for native token) via your wallet MCP and wait for confirmation.haiku_prepare_signatures with the quoteId, sign the returned EIP-712 payloads via your wallet MCP, then pass the signatures here.Parameters:
quoteId (required): Quote ID from haiku_get_quotesourceChainId (recommended): Chain ID from the quote response. Omit only if the quote was obtained in the same session — the server can recover from cache.broadcast (required): Must be false — haiku returns the unsigned tx for you to broadcastpermit2Signature (optional): Signature from signing the Permit2 payload via your wallet MCPuserSignature (optional): Signature from signing the bridge payload via your wallet MCP (cross-chain only)Example:
{
"quoteId": "abc123...", "sourceChainId": 42161, "broadcast": false, "permit2Signature": "0x..." }
Returns `{ transaction: { to, data, value, chainId } }` — pass `transaction` to your wallet MCP's `sendTransaction`.
Tokens are identified using the IID format: chainSlug:tokenAddress
Examples:
arb:0x82aF49447D8a07e3bd95BD0d56f35241523fBab1 - WETH on Arbitrumarb:0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee - Native ETH on Arbitrumbase:0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 - USDC on Base| Chain | Chain ID | Slug |
|---|---|---|
| Arbitrum | 42161 | arb |
| Avalanche | 43114 | avax |
| Base | 8453 | base |
| Berachain | 80094 | bera |
| BNB Smart Chain | 56 | bsc |
| Bob | 60808 | bob |
| Ethereum | 1 | eth |
| Gnosis | 100 | gnosis |
| Hyperliquid | 999 | hype |
| Katana | 747474 | katana |
| Lisk | 1135 | lisk |
| MegaETH | 4326 | megaeth |
| Monad | 143 | monad |
| Optimism | 10 | opt |
| Plasma | 9745 | plasma |
| Polygon | 137 | poly |
| Scroll | 534352 | scroll |
| Sei | 1329 | sei |
| Sonic | 146 | sonic |
| Unichain | 130 | uni |
| World Chain | 480 | worldchain |
| ApeChain | 33139 | ape |
Haiku handles all signing and broadcasting. Returns a tx hash.
1. haiku_get_quote(inputPositions, targetWeights) → returns quoteId, sourceChainId, permit2SigningPayload?, bridgeSigningPayload?, approvals
Use when WALLET_PRIVATE_KEY is not set and a separate wallet MCP holds the keys.
Simple swap (no Permit2 or bridge signatures needed, e.g. native ETH input):
1. haiku_get_quote(inputPositions, targetWeights, receiver) → returns quoteId, sourceChainId, approvals
Nur der Anfang wird gezeigt; den Rest findest du im Repo