CoW Protocol MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CoW Protocol MCP Server Get a quote to sell 1 ETH for USDC on mainnet."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
CoW Protocol MCP Server
An MCP (Model Context Protocol) server for interacting with CoW Protocol's order book API.
Features
Token Tools
cow_resolve_token - Look up token address by symbol (uses official CoW Swap token list)
cow_search_tokens - Search for tokens by name/symbol across networks
Order Tools
cow_get_quote - Get price and fee quotes for trades (accepts symbols OR addresses)
cow_get_order - Get full order details by UID
cow_get_order_status - Check order status (open, filled, cancelled, expired)
cow_get_trades - Fetch trade history for an address or order
cow_get_auction - View current auction batch information
Related MCP server: hyperliquid-mcp
Token Resolution
The server uses the official CoW Protocol token list for symbol resolution. This is the same list used by CoW Swap.
Example: Instead of providing the full address for USDC or COW, you can just use the symbol:
sellToken: "WETH"
buyToken: "COW"And it will automatically resolve to the correct address for the specified network.
Supported Networks
mainnet (Ethereum)
gnosis (Gnosis Chain)
arbitrum (Arbitrum One)
base (Base)
avalanche (Avalanche)
polygon (Polygon)
bnb (BNB Chain)
sepolia (Sepolia testnet)
Installation
npm install
npm run buildUsage
With Claude Desktop
Add to your Claude Desktop config:
{
"mcpServers": {
"cow": {
"command": "node",
"args": ["/path/to/cow-mcp-server/dist/index.js"]
}
}
}With OpenClaw
Add to your OpenClaw MCP servers configuration.
Testing with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.jsDevelopment
# Watch mode
npm run dev
# Build
npm run build
# Clean
npm run cleanAPI Reference
cow_get_quote
Get a quote for a potential trade:
{
"network": "mainnet",
"sellToken": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
"buyToken": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"kind": "sell",
"amount": "1000000000000000000",
"from": "0xYourAddress"
}cow_get_order_status
Check an order's status:
{
"network": "mainnet",
"orderUid": "0x..."
}cow_get_trades
Get trade history:
{
"network": "mainnet",
"owner": "0xYourAddress",
"limit": 20
}License
MIT
Available Tools
8 toolscow_get_auctionGet Current CoW AuctionARead-only
Get information about the current auction batch on CoW Protocol.
CoW Protocol batches orders into auctions that solvers compete to settle. This returns the current auction state.
Args:
network: The blockchain network
Returns:
Current auction ID
Block number
Orders in the batch
Prices for tokens in the batch
Inputs: network.
cow_get_orderGet CoW Order DetailsARead-onlyIdempotent
Get full details of an order on CoW Protocol.
Args:
network: The blockchain network
orderUid: The unique order identifier
Returns the complete order data including:
Sell/buy tokens and amounts
Fee amount
Validity period
Signature and signing scheme
App data
Creation timestamp
Inputs: orderUid (required), network.
cow_get_order_statusGet CoW Order StatusARead-onlyIdempotent
Get the current status of an order on CoW Protocol.
Args:
network: The blockchain network
orderUid: The unique order identifier
Returns the order status which can be:
presignaturePending: Order is waiting for on-chain signature
open: Order is active and waiting to be matched
fulfilled: Order has been completely filled
cancelled: Order has been cancelled
expired: Order has expired
Inputs: orderUid (required), network.
cow_get_quoteGet CoW Protocol QuoteARead-only
Get a price and fee quote for a potential trade on CoW Protocol.
This returns the estimated amounts, fees, and a prepared order structure that can be signed and submitted.
Args:
network: The blockchain network (mainnet, gnosis, arbitrum, base, avalanche, polygon, bnb, sepolia)
sellToken: Token to sell (address or symbol like 'WETH')
buyToken: Token to buy (address or symbol like 'USDC')
kind: 'sell' for market sell (exact sell amount), 'buy' for market buy (exact buy amount)
amount: The amount in wei as a string
from: The trader's address (used for balance/allowance simulation)
receiver: Optional address to receive bought tokens (defaults to 'from')
partiallyFillable: Whether the order can be partially filled (default: false)
slippageBps: Optional slippage tolerance in basis points
Returns the quoted order with:
sellAmount, buyAmount, feeAmount
expiration timestamp
quote ID for tracking
Whether the quote was verified via simulation
Inputs: from (required), kind (required), amount (required), buyToken (required), +5 more.
cow_get_tradesGet CoW Trade HistoryARead-onlyIdempotent
Get trade history for an address or order on CoW Protocol.
Args:
network: The blockchain network
owner: The address to fetch trades for (optional if orderUid provided)
orderUid: Filter trades by specific order (optional if owner provided)
limit: Maximum number of trades to return (1-100, default 20)
offset: Pagination offset (default 0)
Note: Either owner or orderUid must be provided, but not both.
Returns a list of executed trades with:
Transaction hash
Sell/buy amounts and tokens
Block number and timestamp
Inputs: no named parameters.
cow_prepare_orderPrepare CoW Order for SigningARead-onlyIdempotent
Prepare an order for signing with EIP-712.
This generates the typed data structure needed to sign a CoW Protocol order. Use this after getting a quote from cow_get_quote.
Args:
network: The blockchain network
sellToken, buyToken: Token addresses or symbols
sellAmount, buyAmount, feeAmount: Amounts from the quote
validTo: Expiration timestamp from the quote
from: The address that will sign the order
kind: Order kind (sell/buy)
partiallyFillable: Whether partial fills are allowed
receiver: Optional receiver (defaults to from)
appData: Optional app data hash
Returns:
EIP-712 typed data JSON
Foundry cast command to sign the order
curl command to submit the signed order
Inputs: from (required), validTo (required), buyToken (required), buyAmount (required), +8 more.
cow_resolve_tokenResolve Token Symbol to AddressARead-onlyIdempotent
Look up a token's contract address by its symbol on a specific network.
This is useful when you know the token symbol but not the address.
Args:
symbolOrAddress: Token symbol (e.g., 'USDC', 'WETH', 'COW') or an address (returns info if found)
network: The blockchain network
Returns:
Token address
Symbol and name
Decimals
Chain ID
Inputs: symbolOrAddress (required), network.
cow_search_tokensSearch for TokensARead-onlyIdempotent
Search for tokens by symbol or name across networks.
Args:
query: Search string (e.g., 'USDC', 'cow', 'wrapped')
network: Optional network filter
Returns up to 10 matching tokens with addresses and metadata.
Inputs: query (required), network.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 8 tools
Each tool targets a distinct aspect of CoW Protocol: auction state, order details, order status, quote, trades, order preparation, token resolution, and token search. No overlapping functionality.
All tools follow a consistent 'cow_verb_noun' pattern with snake_case. Examples: cow_get_auction, cow_prepare_order, cow_search_tokens.
8 tools is well-scoped for a protocol-specific server. They cover key operations without being excessive or minimal.
Covers core query and preparation operations but lacks direct submission of orders, cancellation, and listing of all orders for a user. Agents must rely on external curl commands for submission.
Maintenance
Related MCP Connectors
Gasless, MEV-protected onchain token swaps for AI agents on 14 EVM chains, built on CoW Protocol.
Doc search, intent & cross-chain swaps, limit orders, portfolio, spot prices, gas & all APIs.
Warden MCP lets AI agents find tokens, quote swaps and trade onchain on Base, BNB Chain, Robinhood Chain, Arc and Solana, within limits you set. Market tools need no credential: list_chains, search_tokens, trending_tokens, price_history, quote_swap and swap_status. Search by name, ticker or contract address, read USD price candles, and price a swap before committing to it, including cross-chain swaps. Wallet tools act for the wallet whose owner connected the agent, by OAuth sign-in or a wk_ key. agent_permissions shows what the agent may do and its daily limits. prepare_swap builds a trade and hands the owner a review link to sign. With request_session the owner turns on hands-free trading in one tap, and execute_swap then trades within the limits they set. swap_status tracks gasless and cross-chain trades. get_wallet shows holdings on every chain. Gasless trading is available on Base, BNB Chain and Robinhood Chain. Built by Warden Protocol, the team behind Warden Token Terminal.
Pay-per-call onchain reads (Base, Ethereum, Gnosis), token verdicts and LLM chat over x402 USDC
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to automate token swaps on Uniswap DEX across multiple blockchains including Ethereum, Optimism, Polygon, Arbitrum, and more, with real-time price quotes, swap execution, and multi-hop route optimization.9 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to securely trade on Hyperliquid perpetual exchange, including order placement, position management, market data retrieval, and vault operations via natural language.23 PyPI24MIT
- AlicenseBqualityDmaintenanceIntegrates with Hyperliquid DEX to enable trading, account management, and market data queries through natural language.1220 npm3MIT
- AlicenseNot gradedqualityCmaintenanceTrade DeFi using plain language prompts.MIT