_ registry / mcp streamable-http · checked 2h ago

pax-mcp

https://mcp.predictasiax.com

Registry code: 54aea6facd5e20cb

api record

PredictAsiaX MCP server. 44 tools across markets, portfolio, trading, liquidity, MM/RFQ, subaccount, composer/resolution, builder, webhook, access request, meta. Call tools/list to enumerate. Auth via Authorization: Bearer <sk_live_* or OAuth token>.

endpoint
https://mcp.predictasiax.com
protocol
streamable-http ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is pax-mcp live?
Yes — it answered the hub's last check (checked 2h ago). It answered 100% of checks over the last 30 days.
Is pax-mcp free to use?
Not anonymously — it asks for a key or a login before it will serve. Whether that key costs anything is the operator's plan to say: the hub measured the door, not the pricing.
What tools does pax-mcp have?
44 tools: pax.cancel_order, pax.tier_status, pax.subaccount_list, pax.balance_get, pax.sandbox_agent_examples, pax.market_search, pax.market_get, pax.portfolio_read, ….
Is pax-mcp safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
99.5%

90 days 99.1%· all time 99.1%

latency
94ms

last good check

priced tools
0

of 44 tools

_ answered our checks, 90 days 347 checks · signed record
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • place a prediction market order
  • read a market orderbook
  • get market price history
  • read portfolio positions
  • cancel all open orders
takes → gives
data → data
tools
17 reads5 changes data3 moves money
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 44 tools
44 auth-required 44 of 44 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • pax.cancel_order auth-required never probed

    Cancel an open or partially-filled order.

    mcp-tool

    {
      "type": "object",
      "required": [
        "order_id"
      ],
      "properties": {
        "order_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.tier_status auth-required never probed

    Read the current builder tier + auto-graduation progress (30d volume + days remaining + abuse flags).

    mcp-tool

    {
      "type": "object",
      "properties": {}
    }
    arguments 4 lines
  • pax.subaccount_list reads auth-required never probed

    List all subaccounts for a user with kind, currency, and balance.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.balance_get auth-required 41d ago

    USDT free + reserved balance for a subaccount.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        },
        "subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 14 lines
  • pax.sandbox_agent_examples reads auth-required never probed

    End-to-end examples for building an AI agent against PAX — sandbox keys, minimal flows.

    mcp-tool

    {
      "type": "object",
      "properties": {}
    }
    arguments 4 lines
  • pax.market_search auth-required 45d ago

    Search PredictAsiaX markets by keyword or category. Returns paginated list with prices, volume, status.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free-text query on title/question"
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1
        },
        "cursor": {
          "type": "string",
          "description": "Opaque pagination cursor from previous response"
        },
        "status": {
          "enum": [
            "open",
            "closed",
            "settled",
            "resolved"
          ],
          "type": "string"
        },
        "category": {
          "type": "string",
          "description": "Filter by category (crypto/politics/sports/tech/macro/asia)"
        }
      }
    }
    arguments 31 lines
  • pax.market_get auth-required 41d ago

    Get full detail for a single market: title, question, prices, volume, open interest, resolution rules, template.

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id"
      ],
      "properties": {
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.portfolio_read reads auth-required 41d ago

    Read the user's current positions, mark-price PNL, unrealized PnL, and USDT balances.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        },
        "subaccount_id": {
          "type": "string",
          "description": "Omit to read primary subaccount"
        }
      }
    }
    arguments 15 lines
  • pax.mm_stipend_estimate auth-required never probed

    Real-time LQF stipend forecast for a market maker on one market this epoch. Returns projected payout at 00:15 UTC based on snapshots seen so far.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id",
        "market_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 15 lines
  • pax.composer_templates_list auth-required 45d ago

    List market templates available for opening new markets (crypto price binary, sports, election, etc).

    mcp-tool

    {
      "type": "object",
      "properties": {
        "kind": {
          "type": "string"
        }
      }
    }
    arguments 8 lines
  • pax.composer_proposal_submit changes data auth-required never probed

    Submit a new market proposal from a template. Enters admin review queue.

    mcp-tool

    {
      "type": "object",
      "required": [
        "template_id",
        "title",
        "rules",
        "sources",
        "cutoff_ms",
        "deadline_ms"
      ],
      "properties": {
        "rules": {
          "type": "string",
          "minLength": 20
        },
        "title": {
          "type": "string",
          "maxLength": 200,
          "minLength": 5
        },
        "sources": {
          "type": "array",
          "items": {
            "type": "string",
            "description": "https:// URLs used as resolution sources"
          }
        },
        "question": {
          "type": "string"
        },
        "cutoff_ms": {
          "type": "integer"
        },
        "deadline_ms": {
          "type": "integer"
        },
        "template_id": {
          "type": "string"
        }
      }
    }
    arguments 41 lines
  • pax.webhook_deliveries auth-required never probed

    Read recent webhook delivery attempts for an endpoint (status, HTTP code, retry count).

    mcp-tool

    {
      "type": "object",
      "required": [
        "webhook_id"
      ],
      "properties": {
        "cursor": {
          "type": "string"
        },
        "from_ms": {
          "type": "integer"
        },
        "webhook_id": {
          "type": "string"
        }
      }
    }
    arguments 17 lines
  • pax.access_request_status reads auth-required 41d ago

    Check status of a pending access request by its request_id.

    mcp-tool

    {
      "type": "object",
      "required": [
        "request_id"
      ],
      "properties": {
        "request_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.probability_movers auth-required never probed

    Return markets whose YES probability moved the most in a window. Ranked by |delta|.

    mcp-tool

    {
      "type": "object",
      "required": [
        "from_ms",
        "to_ms"
      ],
      "properties": {
        "to_ms": {
          "type": "integer",
          "description": "Window end (ms since epoch)"
        },
        "top_n": {
          "type": "integer",
          "default": 10,
          "maximum": 100,
          "minimum": 1
        },
        "from_ms": {
          "type": "integer",
          "description": "Window start (ms since epoch)"
        },
        "category": {
          "type": "string"
        },
        "direction": {
          "enum": [
            "up",
            "down",
            "both"
          ],
          "type": "string",
          "default": "both"
        }
      }
    }
    arguments 35 lines
  • pax.markets_top_volume reads auth-required never probed

    24h volume leaderboard. Useful for surfacing hot markets.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "top_n": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1
        },
        "window": {
          "enum": [
            "1h",
            "24h",
            "7d"
          ],
          "type": "string",
          "default": "24h"
        },
        "category": {
          "type": "string"
        }
      }
    }
    arguments 23 lines
  • pax.subaccount_close changes data auth-required never probed

    Close (freeze) a subaccount. Rejects if positions/balance/open orders remain.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id",
        "subaccount_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        },
        "subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 15 lines
  • pax.resolution_evidence auth-required never probed

    Return the evidence + sources used to resolve a market.

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id"
      ],
      "properties": {
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.mm_quote_post auth-required never probed

    Post a two-sided MM quote to a market. TTL 1-3600s. Requires designated MM status for rebate.

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id",
        "bid_price",
        "ask_price",
        "size"
      ],
      "properties": {
        "size": {
          "type": "string"
        },
        "ttl_sec": {
          "type": "integer",
          "default": 60,
          "maximum": 3600,
          "minimum": 1
        },
        "ask_price": {
          "type": "string"
        },
        "bid_price": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 29 lines
  • pax.rfq_accept moves money auth-required never probed

    Accept a specific RFQ quote — atomically fills at the quoted price.

    mcp-tool

    {
      "type": "object",
      "required": [
        "rfq_id",
        "quote_id"
      ],
      "properties": {
        "rfq_id": {
          "type": "string"
        },
        "quote_id": {
          "type": "string"
        }
      }
    }
    arguments 15 lines
  • pax.builder_me auth-required never probed

    Return the current builder profile: tier, apps count, 30d volume + fee revenue, verified status.

    mcp-tool

    {
      "type": "object",
      "properties": {}
    }
    arguments 4 lines
  • pax.market_orderbook reads auth-required never probed

    Read top-of-book bid/ask ladder for a market. Depth capped at 20 levels each side.

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id"
      ],
      "properties": {
        "side": {
          "enum": [
            "yes",
            "no",
            "both"
          ],
          "type": "string",
          "default": "both"
        },
        "depth": {
          "type": "integer",
          "default": 10,
          "maximum": 20,
          "minimum": 1
        },
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 26 lines
  • pax.market_price_history reads auth-required never probed

    Time-series probability history for a market (LTTB-sampled). Range 1h through 90d.

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id"
      ],
      "properties": {
        "range": {
          "enum": [
            "1h",
            "6h",
            "1d",
            "7d",
            "30d",
            "90d"
          ],
          "type": "string",
          "default": "1d"
        },
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 23 lines
  • pax.category_list reads auth-required 45d ago

    List all market categories with counts and 24h volume.

    mcp-tool

    {
      "type": "object",
      "properties": {}
    }
    arguments 4 lines
  • pax.portfolio_history auth-required never probed

    Historical PnL curve (realized + unrealized) for the user, sampled daily.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "to_ms": {
          "type": "integer"
        },
        "from_ms": {
          "type": "integer"
        },
        "user_id": {
          "type": "string"
        },
        "subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 20 lines
  • pax.positions_list reads auth-required 41d ago

    List open positions across markets with size + entry price + current mark.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        },
        "subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 17 lines
  • pax.place_order moves money auth-required never probed

    Submit a new order. Requires Idempotency-Key header on the transport. Tier caps enforced server-side.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id",
        "market_id",
        "side",
        "price",
        "size",
        "client_order_id"
      ],
      "properties": {
        "side": {
          "enum": [
            "yes",
            "no",
            "buy",
            "sell"
          ],
          "type": "string"
        },
        "size": {
          "type": "string",
          "description": "Decimal string"
        },
        "price": {
          "type": "string",
          "description": "Decimal string 0.01..0.99"
        },
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        },
        "builder_code": {
          "type": "string",
          "description": "Optional bytes32 hex for additive builder fee attribution"
        },
        "subaccount_id": {
          "type": "string"
        },
        "client_order_id": {
          "type": "string"
        },
        "additive_fee_bps": {
          "type": "integer",
          "maximum": 100,
          "minimum": 0,
          "description": "Optional builder-set additive fee (0-100 bps)"
        }
      }
    }
    arguments 52 lines
  • pax.cancel_all_orders changes data auth-required never probed

    Bulk cancel all open orders for a user + (optional) market. Atomic.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string",
          "description": "Omit to cancel across all markets"
        },
        "subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 18 lines
  • pax.orders_open reads auth-required never probed

    List currently-open orders for the user (status IN open, partially_filled).

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        },
        "subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 17 lines
  • pax.orders_history auth-required never probed

    Historical orders (filled + cancelled + expired) for the user, paginated.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "to_ms": {
          "type": "integer"
        },
        "cursor": {
          "type": "string"
        },
        "from_ms": {
          "type": "integer"
        },
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        },
        "subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 26 lines
  • pax.fee_estimate reads auth-required never probed

    Estimate the taker fee for a hypothetical order under the PAX Adaptive Fee Curve (PAF): 8-25 bps depending on price extremity, plus optional additive partner fee (0-100 bps).

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id",
        "price",
        "size"
      ],
      "properties": {
        "size": {
          "type": "string"
        },
        "price": {
          "type": "string"
        },
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        },
        "additive_fee_bps": {
          "type": "integer",
          "maximum": 100,
          "minimum": 0
        }
      }
    }
    arguments 27 lines
  • pax.mm_stipend_history reads auth-required never probed

    Historical LQF stipend payouts for a market maker. Optional market_id filter, default limit 30.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 200,
          "minimum": 1
        },
        "user_id": {
          "type": "string"
        },
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 19 lines
  • pax.liquidity_leaderboard reads auth-required never probed

    Public leaderboard of top LQF stipend earners over a rolling window. Optional market_id filter.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "days": {
          "type": "integer",
          "maximum": 30,
          "minimum": 1
        },
        "top_n": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1
        },
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 18 lines
  • pax.subaccount_create auth-required never probed

    Create a new subaccount under the primary user account.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id",
        "label",
        "kind",
        "currency"
      ],
      "properties": {
        "kind": {
          "enum": [
            "trading",
            "mm",
            "copy_vault",
            "rfq_mm",
            "custody",
            "clearing"
          ],
          "type": "string"
        },
        "label": {
          "type": "string",
          "maxLength": 100,
          "minLength": 1
        },
        "user_id": {
          "type": "string"
        },
        "currency": {
          "enum": [
            "USDT",
            "USDC"
          ],
          "type": "string"
        }
      }
    }
    arguments 37 lines
  • pax.subaccount_transfer moves money auth-required never probed

    Transfer USDT between subaccounts under the same primary user.

    mcp-tool

    {
      "type": "object",
      "required": [
        "user_id",
        "from_subaccount_id",
        "to_subaccount_id",
        "amount"
      ],
      "properties": {
        "amount": {
          "type": "string"
        },
        "user_id": {
          "type": "string"
        },
        "to_subaccount_id": {
          "type": "string"
        },
        "from_subaccount_id": {
          "type": "string"
        }
      }
    }
    arguments 23 lines
  • pax.composer_template_get auth-required 41d ago

    Read a single market template with resolution rules + example config.

    mcp-tool

    {
      "type": "object",
      "required": [
        "template_id"
      ],
      "properties": {
        "template_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.mm_quotes_list reads auth-required 41d ago

    List active MM quotes for a market.

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id"
      ],
      "properties": {
        "market_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.rfq_create auth-required never probed

    Create an RFQ (request for quote) — asks MMs to bid for a specific size.

    mcp-tool

    {
      "type": "object",
      "required": [
        "market_id",
        "side",
        "size"
      ],
      "properties": {
        "side": {
          "enum": [
            "yes",
            "no"
          ],
          "type": "string"
        },
        "size": {
          "type": "string"
        },
        "ttl_sec": {
          "type": "integer",
          "default": 60,
          "maximum": 600,
          "minimum": 10
        },
        "market_id": {
          "type": "string"
        },
        "max_price": {
          "type": "string"
        },
        "min_price": {
          "type": "string"
        }
      }
    }
    arguments 35 lines
  • pax.builder_apps_list reads auth-required 45d ago

    List apps registered under the current builder profile.

    mcp-tool

    {
      "type": "object",
      "properties": {}
    }
    arguments 4 lines
  • pax.fee_ledger_read reads auth-required 45d ago

    Read fee_ledger entries attributed to the current builder — 4-way split shares + additive builder fees.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "to_ms": {
          "type": "integer"
        },
        "cursor": {
          "type": "string"
        },
        "from_ms": {
          "type": "integer"
        }
      }
    }
    arguments 14 lines
  • pax.webhook_endpoints_list auth-required never probed

    List webhook endpoints registered under an app.

    mcp-tool

    {
      "type": "object",
      "required": [
        "app_id"
      ],
      "properties": {
        "app_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • pax.webhook_create changes data auth-required never probed

    Register a new webhook endpoint. Returns whsec_<hex> ONCE for signing verification.

    mcp-tool

    {
      "type": "object",
      "required": [
        "app_id",
        "url",
        "events"
      ],
      "properties": {
        "url": {
          "type": "string",
          "description": "https:// URL, no userinfo, no fragment"
        },
        "label": {
          "type": "string",
          "maxLength": 100
        },
        "app_id": {
          "type": "string"
        },
        "events": {
          "type": "array",
          "items": {
            "enum": [
              "trade.filled",
              "market.resolved",
              "payout.available",
              "payout.paid",
              "auth.token.revoked"
            ],
            "type": "string"
          }
        }
      }
    }
    arguments 34 lines
  • pax.access_request_create changes data auth-required never probed

    Submit an access-request for a builder track (no email required — provide Telegram / Signal / Discord / Matrix / X DM handle).

    mcp-tool

    {
      "type": "object",
      "required": [
        "contact_channel",
        "contact_handle",
        "use_case"
      ],
      "properties": {
        "track": {
          "enum": [
            "sandbox",
            "trade_capped",
            "trade_full",
            "genesis",
            "partner"
          ],
          "type": "string"
        },
        "org_name": {
          "type": "string"
        },
        "use_case": {
          "type": "string",
          "maxLength": 2000,
          "minLength": 20
        },
        "jurisdiction": {
          "type": "string"
        },
        "contact_handle": {
          "type": "string"
        },
        "contact_channel": {
          "enum": [
            "telegram",
            "signal",
            "discord",
            "matrix",
            "x_dm"
          ],
          "type": "string"
        },
        "intended_scopes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    }
    arguments 50 lines
  • pax.health auth-required 45d ago

    MCP server health + protocol version + D1 reachability + upstream latency.

    mcp-tool

    {
      "type": "object",
      "properties": {}
    }
    arguments 4 lines
  • pax.builder_apikeys_list reads auth-required never probed

    List API keys for a specific app (metadata only — secrets never returned).

    mcp-tool

    {
      "type": "object",
      "required": [
        "app_id"
      ],
      "properties": {
        "app_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 54aea6facd5e20cb.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/54aea6facd5e20cb/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/54aea6facd5e20cb/badge.svg)](https://brick.blue/agent/54aea6facd5e20cb?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.