polymarket_orderbook

Pack: polymarket · Endpoint: https://gateway.pipeworx.io/polymarket/mcp

REAL-TIME CLOB orderbook for one Polymarket market — bid/ask ladder on both YES and NO sides with size at each price level. Use to check actual tradable depth before quoting a size estimate; the liquidity field on polymarket_market is a rolled-up summary, this is the actual ladder. Returns yes_bids[], yes_asks[], no_bids[], no_asks[] each as [price, size] pairs sorted from inside the book outward. Necessary input before any “you could buy $X at price Y” answer — without depth that’s a guess.

Parameters

NameTypeRequiredDescription
slug_or_idstringyesMarket slug or numeric id

Example call

Arguments

{
  "slug_or_id": "will-bitcoin-hit-150k-by-june-30-2026"
}

curl

curl -X POST https://gateway.pipeworx.io/polymarket/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"polymarket_orderbook","arguments":{"slug_or_id":"will-bitcoin-hit-150k-by-june-30-2026"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('polymarket_orderbook', {
  "slug_or_id": "will-bitcoin-hit-150k-by-june-30-2026"
});

Response shape

Full JSON Schema
{
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "error": {
          "type": "string",
          "enum": [
            "not_found"
          ],
          "description": "Error code"
        },
        "message": {
          "type": "string",
          "description": "Error message"
        }
      },
      "required": [
        "error",
        "message"
      ]
    },
    {
      "type": "object",
      "properties": {
        "error": {
          "type": "string",
          "enum": [
            "no_token"
          ],
          "description": "Error code"
        },
        "message": {
          "type": "string",
          "description": "Error message"
        }
      },
      "required": [
        "error",
        "message"
      ]
    },
    {
      "type": "object",
      "properties": {
        "market_id": {
          "type": "string",
          "description": "Market ID"
        },
        "market_slug": {
          "type": "string",
          "description": "Market slug"
        },
        "question": {
          "type": "string",
          "description": "Market question"
        },
        "yes_token": {
          "type": "string",
          "description": "Yes token ID"
        },
        "no_token": {
          "type": "string",
          "description": "No token ID"
        },
        "yes_bids": {
          "type": "array",
          "description": "Yes side bids [price, size]",
          "items": {
            "type": "object",
            "properties": {
              "price": {
                "type": "number",
                "description": "Bid price"
              },
              "size": {
                "type": "number",
                "description": "Bid size"
              }
            }
          }
        },
        "yes_asks": {
          "type": "array",
          "description": "Yes side asks [price, size]",
          "items": {
            "type": "object",
            "properties": {
              "price": {
                "type": "number",
                "description": "Ask price"
              },
              "size": {
                "type": "number",
                "description": "Ask size"
              }
            }
          }
        },
        "no_bids": {
          "type": "array",
          "description": "No side bids [price, size]",
          "items": {
            "type": "object",
            "properties": {
              "price": {
                "type": "number",
                "description": "Bid price"
              },
              "size": {
                "type": "number",
                "description": "Bid size"
              }
            }
          }
        },
        "no_asks": {
          "type": "array",
          "description": "No side asks [price, size]",
          "items": {
            "type": "object",
            "properties": {
              "price": {
                "type": "number",
                "description": "Ask price"
              },
              "size": {
                "type": "number",
                "description": "Ask size"
              }
            }
          }
        },
        "depth_summary_usd": {
          "type": "object",
          "description": "Rollup of dollars available at each side",
          "properties": {
            "yes_bid_total": {
              "type": "number",
              "description": "Total USD available for Yes bids"
            },
            "yes_ask_total": {
              "type": "number",
              "description": "Total USD available for Yes asks"
            },
            "no_bid_total": {
              "type": "number",
              "description": "Total USD available for No bids"
            },
            "no_ask_total": {
              "type": "number",
              "description": "Total USD available for No asks"
            }
          },
          "required": [
            "yes_bid_total",
            "yes_ask_total",
            "no_bid_total",
            "no_ask_total"
          ]
        },
        "builder_signed": {
          "type": "boolean",
          "description": "Whether request was authenticated with Builder API key"
        }
      },
      "required": [
        "market_id",
        "market_slug",
        "question",
        "yes_token",
        "no_token",
        "yes_bids",
        "yes_asks",
        "no_bids",
        "no_asks",
        "depth_summary_usd",
        "builder_signed"
      ]
    }
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "polymarket": {
      "url": "https://gateway.pipeworx.io/polymarket/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build July 8, 2026