MCP Tools

Complete reference for all Clawmarket MCP tools with JSON schemas, parameters, and response formats.

Overview

Clawmarket provides 6 core MCP tools for AI agent prediction market workflows:

  1. market.search - Discover prediction markets by search criteria

  2. market.get_data - Retrieve orderbook, trades, and market metadata

  3. position.open - Open new positions in prediction markets

  4. position.close - Close existing positions

  5. portfolio.get_positions - Retrieve all active positions and P&L

  6. market.get_probabilities - Extract market-implied probability distributions

market.search

Discover prediction markets matching search criteria.

Parameters:

Parameter
Type
Required
Description

query

string

Yes

Search query for market title/description

platform

string

No

Filter by platform (polymarket, kalshi)

category

string

No

Filter by category (politics, economics, technology)

min_liquidity

number

No

Minimum liquidity in USD

status

string

No

Market status (open, closed, resolved)

Request Example:

Response:

market.get_data

Retrieve detailed market data including orderbook depth, trade history, and metadata.

Parameters:

Parameter
Type
Required
Description

market_id

string

Yes

Unique market identifier

platform

string

Yes

Platform name (polymarket, kalshi)

data_types

array

Yes

Data to retrieve (orderbook, trades, metadata)

depth

number

No

Orderbook depth levels (default: 10)

trades_limit

number

No

Number of recent trades (default: 50)

Request Example:

Response:

position.open

Open a new position in a prediction market.

Parameters:

Parameter
Type
Required
Description

market_id

string

Yes

Market identifier

platform

string

Yes

Platform name

outcome

string

Yes

Outcome to buy (YES, NO, or category name)

order_type

string

Yes

Order type (market, limit)

amount

number

Yes

USD amount to invest

limit_price

number

No

Limit price (required for limit orders)

slippage_tolerance

number

No

Max acceptable slippage (default: 0.02)

Request Example:

Response:

position.close

Close an existing position.

Parameters:

Parameter
Type
Required
Description

position_id

string

Yes

Position identifier

platform

string

Yes

Platform name

close_type

string

Yes

Close type (market, limit)

limit_price

number

No

Limit price (for limit orders)

partial_shares

number

No

Close partial position (default: close all)

Request Example:

Response:

portfolio.get_positions

Retrieve all active positions across platforms with portfolio summary.

Parameters:

Parameter
Type
Required
Description

platforms

array

No

Filter by platforms (default: all connected)

status

string

No

Filter by status (open, closed, all)

Request Example:

Response:

market.get_probabilities

Extract market-implied probability distributions for analysis.

Parameters:

Parameter
Type
Required
Description

market_id

string

Yes

Market identifier

platform

string

Yes

Platform name

Request Example:

Response:

Error Responses

All tools return structured error responses:

Common error codes:

  • MARKET_NOT_FOUND - Market ID does not exist

  • MARKET_CLOSED - Market has closed to new orders

  • INSUFFICIENT_BALANCE - Insufficient funds for trade

  • SLIPPAGE_EXCEEDED - Price moved beyond slippage tolerance

  • RATE_LIMIT_EXCEEDED - Too many requests

  • AUTHENTICATION_FAILED - Invalid API credentials

  • POSITION_NOT_FOUND - Position ID does not exist

Rate Limits

Per Platform:

  • Polymarket: 100 requests/minute, 5 orders/second

  • Kalshi: 200 requests/minute, 10 orders/second

Per Tool:

  • market.search: 30/minute

  • market.get_data: 60/minute

  • position.open: 20/minute

  • position.close: 20/minute

  • portfolio.get_positions: 60/minute

  • market.get_probabilities: 60/minute

Last updated