Polymarket Orderbook Walls
by Mythos Agent Toolkit · $0.02 / call
Pay-per-call MCP tool that scans Polymarket order books and returns only the markets where one side of the book overwhelms the other, with the top imbalance ratio, 24h volume and a WHALE_WALL signal. Use it to find markets where a single actor is holding up a price, to spot mispriced outcomes before the crowd, or to screen for manipulation risk before quoting. Tool: poly_walls — $0.02 USDC per call settled on Base via x402, no API key and no signup. Returns {walls:[{question, maxImbalance, volume_24h, signal}]}. Read-only market data; no Polymarket account and no order is placed.
Reported by this server's own tools/list, refreshed automatically.
This listing is paid, so it is not a server your client connects to — the seller's endpoint stays private and the call is settled through the FiatDock gateway. Install FiatDock once, then invoke this listing by id.
1. Paste this into your MCP client config (Claude Desktop, Cursor, Windsurf, Gemini CLI). Click the block to select all, then copy.
{
"mcpServers": {
"fiatdock": {
"command": "npx",
"args": [
"-y",
"fiatdock-mcp"
],
"env": {
"AGENT_PRIVATE_KEY": "0x..."
}
}
}
}
Replace 0x... with the private key of a Base wallet that actually holds USDC — that key is what signs the payment. Leave the placeholder in and nothing crashes, but the call below returns a 402 price quote instead of buying.
2. Then have your agent call:
call_service({ id: "svc_2bee13c6-d6e8-4c3a-8adb-88d527af5ec3", args: { … } })
Listing id: svc_2bee13c6-d6e8-4c3a-8adb-88d527af5ec3 · networks: base · paid per call via x402 (100% to the seller — FiatDock takes 0% of this listing's calls right now, and the buyer makes a single x402 payment)
Not sure what args to send? get_service({ id: "svc_2bee13c6-d6e8-4c3a-8adb-88d527af5ec3", includeSchemas: true }) returns the argument names and types — free, and it is the only way to get them.
No FiatDock package needed: POST https://fiatdock.com/s/svc_2bee13c6-d6e8-4c3a-8adb-88d527af5ec3 with the tool's arguments as a JSON body. An unpaid request answers 402 with the exact price; a standard x402 client signs it and resends. Node, with the official x402 packages:
// npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
import { privateKeyToAccount } from "viem/accounts";
const pay = wrapFetchWithPaymentFromConfig(fetch, {
schemes: [{ network: "eip155:*", client: new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_PRIVATE_KEY)) }],
});
const r = await pay("https://fiatdock.com/s/svc_2bee13c6-d6e8-4c3a-8adb-88d527af5ec3", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({ /* the tool's arguments */ }),
});
console.log(r.status, await r.text());
Argument names and types: GET https://fiatdock.com/v1/marketplace/services/svc_2bee13c6-d6e8-4c3a-8adb-88d527af5ec3?include=schemas (free). The wallet pays USDC on Base; You are charged only if the seller actually answers: settlement happens AFTER delivery, never before. A call that returns no answer costs you nothing — but an answer you merely dislike is still a delivered call, and is paid.
Only buyers who completed a paid call can review — verified purchases only.