{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_wna5sn2dfx3q","handle":"ophis-mcp","url":"https://wellknown.network/agents/ophis-mcp","links":{"self":"https://wellknown.network/agents/ophis-mcp/record.json","html":"https://wellknown.network/agents/ophis-mcp","markdown":"https://wellknown.network/agents/ophis-mcp/record.md","api":"https://wellknown.network/api/v1/agents/ophis-mcp","status":"https://wellknown.network/api/v1/agents/ophis-mcp/status","claim":"https://wellknown.network/agents/ophis-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/ophis-mcp/claim.json","badge":"https://wellknown.network/agents/ophis-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:mcp.ophis.fi:server:ophis-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Ophis MCP","summary":"Gasless, MEV-protected onchain token swaps for AI agents on 14 EVM chains, built on CoW Protocol.","description":"Gasless, MEV-protected onchain token swaps for AI agents on 14 EVM chains, built on CoW Protocol.","publisher":{"name":"fi.ophis","url":null},"homepage":"https://ophis.fi","repository":"https://github.com/ophis-fi/ophis","version":"0.1.1","license":"GPL-3.0-or-later","protocols":["mcp"],"tags":["ophis","agentkit","coinbase","ai-agent","agent","swap","cow-protocol","defi","rebate","agent-skills","skill","skill-md","claude","mcp","dex","dex-aggregator","intent","intent-based","mev-protection","gasless","eip-712","web3","ethereum","optimism","unichain","robinhood-chain","elizaos","elizaos-plugins","plugin"],"pricing":null,"endpoints":[{"url":"https://mcp.ophis.fi/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"npm:@ophis/agentkit-ophis","type":"package_npm","auth":null,"probeable":false},{"url":"npm:@ophis/agent-skills","type":"package_npm","auth":null,"probeable":false},{"url":"npm:@ophis/plugin-elizaos","type":"package_npm","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-08-18T17:44:03.387339Z","npmKeywords":["ophis","agentkit","coinbase","ai-agent","agent","swap","cow-protocol","defi","rebate"],"publishedAt":"2026-08-18T17:44:03.387339Z","registryName":"fi.ophis/mcp"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","license":"npm","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"commerce.pricing","name":"Pricing & Quotes","confidence":1,"provenance":"derived"},{"slug":"finance.markets","name":"Markets & Trading","confidence":1,"provenance":"declared"},{"slug":"knowledge.knowledge-graph","name":"Knowledge Graphs","confidence":0.525,"provenance":"derived"}],"categories":["commerce","finance","knowledge"],"language":"en"},"observed":{"status":"recently_observed","statusReason":"Responded 17h ago; 1 recent check failed (latest 10h ago).","lastOkAt":"2026-09-10T17:23:16.753Z","lastProbedAt":"2026-09-11T00:23:16.950Z","statusComputedAt":"2026-09-11T00:24:07.172Z","reliability30d":{"probes":12,"successRate":0.9167,"p50Ms":553},"latestObservations":[{"at":"2026-09-11T00:23:16.950Z","kind":"mcp_initialize","ok":false,"httpStatus":500,"latencyMs":496,"error":"http 500","detail":null},{"at":"2026-09-10T17:23:16.753Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":542,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-09-10T10:28:27.865Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":595,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-09-10T03:23:46.020Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":483,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-09-09T20:28:37.699Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":764,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-09-09T13:24:03.333Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":622,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-09-08T23:20:13.661Z","kind":"mcp_initialize","ok":false,"httpStatus":500,"latencyMs":473,"error":"http 500","detail":null},{"at":"2026-09-08T16:23:13.638Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":638,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-09-08T09:26:04.400Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":640,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-09-08T02:21:58.606Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":416,"error":null,"detail":{"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"toolCount":14,"serverName":"ophis","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}}],"tools":[{"name":"parse_intent","description":"Parse a plain-English swap request (e.g. \"swap 100 USDC for ETH on Optimism\") into a structured intent: { intent: \"swap\"|\"unknown\", entities: [{type: sellToken|"},{"name":"get_quote","description":"Fetch a best-execution quote from the chain's Ophis orderbook (use a chainId from list_chains' `tradeable`). Amounts are in atoms (smallest unit, uint256 decima"},{"name":"build_order","description":"Build a bounded, ready-to-sign CoW order on Ophis. Returns { order, signing:{domain,types,primaryType}, fullAppData, appDataHash, partnerFee, next }. The receiv"},{"name":"submit_order","description":"Relay a PRE-SIGNED order to the chain's Ophis orderbook. Pass the exact `order` object and `fullAppData` from build_order, plus your EIP-712 `signature` and `fr"},{"name":"lookup_tier","description":"Look up a wallet's Ophis fee-rebate tier and live status (30-day volume → bronze/silver/gold/platinum, rebate %). Returns the indexer status plus the static tie"},{"name":"get_integrator_earnings","description":"Look up what an integrator's own-fee routing earned, by appCode (the identifier you tag into appData: your widget appCode or your SDK ophisReferrer code). Retur"},{"name":"list_chains","description":"List Ophis chains, split into `tradeable` (orderbook host is live, only route get_quote/build_order to these) and `paused` (settlement deployed but no live orde"},{"name":"get_balances","description":"Read a wallet's native-token balance plus ERC-20 balances for the given token addresses on one chain, via a public RPC (one multicall). Returns each token's sym"},{"name":"get_portfolio","description":"Read a wallet's native and (optionally) ERC-20 balances across multiple chains at once. Pass `tokensByChain` (chainId -> token addresses) to include token balan"},{"name":"get_gas","description":"Read a chain's current gas price (EIP-1559 maxFee/maxPriority suggestion when supported, plus an effective gasPrice in wei and gwei). Ophis trades are gasless f"},{"name":"get_token_chart","description":"Fetch OHLCV price history for a token from the keyless GeckoTerminal market API (resolves the token's deepest pool, then returns candles). Use for an agent to r"},{"name":"expected_surplus","description":"Estimate how much better Ophis quotes than the open market for a sell: fetches the Ophis orderbook sell-quote and a public all-DEX aggregator (KyberSwap) quote "},{"name":"resolve_token","description":"Resolve an ERC-20 token SYMBOL to its CANONICAL on-chain address from the trusted Ophis/CoW token list (the same curated list the swap UI uses). Use this BEFORE"},{"name":"validate_order","description":"Offline preflight for an order you built OUTSIDE build_order (no network call, no keys). Catches the documented silent-failure modes before you sign or submit: "}],"package":{"name":"@ophis/agentkit-ophis","registry":"npm","observedAt":"2026-09-10T17:24:18.727Z","publishedAt":"2026-08-18T18:37:44.859Z","latestVersion":"0.3.2","weeklyDownloads":15}},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"npm","key":"@ophis/agentkit-ophis","url":"https://www.npmjs.com/package/@ophis/agentkit-ophis","firstSeenAt":"2026-09-06T11:20:41.748Z","fetchedAt":"2026-09-10T14:18:31.884Z","normalizedAt":"2026-09-10T14:18:31.884Z"},{"source":"npm","key":"@ophis/agent-skills","url":"https://www.npmjs.com/package/@ophis/agent-skills","firstSeenAt":"2026-09-06T12:18:21.354Z","fetchedAt":"2026-09-10T15:20:16.273Z","normalizedAt":"2026-09-10T15:20:16.273Z"},{"source":"npm","key":"@ophis/plugin-elizaos","url":"https://www.npmjs.com/package/@ophis/plugin-elizaos","firstSeenAt":"2026-09-06T12:18:21.354Z","fetchedAt":"2026-09-10T15:20:15.621Z","normalizedAt":"2026-09-10T15:20:15.621Z"},{"source":"mcp_registry","key":"fi.ophis/mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/fi.ophis%2Fmcp","firstSeenAt":"2026-09-05T23:21:00.087Z","fetchedAt":"2026-09-09T21:22:26.347Z","normalizedAt":"2026-09-09T21:22:26.347Z"}]},"firstSeenAt":"2026-09-05T23:21:00.087Z","updatedAt":"2026-09-10T17:24:18.727Z"}