Documentation Index
Fetch the complete documentation index at: https://docs.carboncopy.inc/llms.txt
Use this file to discover all available pages before exploring further.
This page reflects the current canonical MCP surface asserted by the server smoke test on main.
The server is organized around a smaller set of wrapper-style entry points:
list_markets selects listing shape and retrieval mode with view and mode
- market data is exposed through pluralized batch tools like
get_order_books and get_prices
- auth flows are centered on
ensure_api_key, prepare_order, place_order, cancel_orders, get_rewards, and get_rewards_market_details
- transaction building is unified under
build_transactions
- relayer execution is unified under
relayer_execute
1) Public market discovery
These tools work without credentials.
| Task | Tools |
|---|
| Health check | health_check |
| Market discovery | list_markets, get_market |
| Event discovery | list_events, get_event, search |
| Batched market data | get_order_books, get_prices, get_midpoints, get_spreads, get_last_trade_prices, get_price_history |
| Trade-event lookup | get_market_trade_events |
| Market metadata | get_fee_rate_bps, get_tick_size, get_neg_risk, calculate_market_price |
list_markets
list_markets is the canonical listing entry point. It accepts:
view to choose payload shape
mode to choose listing mode
next_cursor for pagination
Example:
{
"tool": "list_markets",
"input": {
"view": "simplified",
"mode": "sampling"
}
}
2) Batched market data
Use these tools when you already have one or more token_id values and want consistent batch responses.
| Tool | Purpose |
|---|
get_order_books | Level-2 order book snapshots for items[].token_id |
get_prices | Best quotes for items[].token_id + items[].side |
get_midpoints | Neutral midpoint values by token |
get_spreads | Bid/ask spread values by token |
get_last_trade_prices | Latest trade prices by token |
get_price_history | Historical pricing series for market/token inputs |
Example:
{
"tool": "get_prices",
"input": {
"items": [
{ "token_id": "<token_id>", "side": "BUY" },
{ "token_id": "<token_id>", "side": "SELL" }
]
}
}
items[].side is required for side-aware tools like get_prices. Including side in other batched calls is still useful for a uniform workflow shape.
3) Authenticated trading and account wrappers
These tools require configured Polymarket credentials.
| Task | Tools |
|---|
| L2 key bootstrap | ensure_api_key, get_api_keys, delete_api_key |
| Read-only key lifecycle | create_readonly_api_key, get_readonly_api_keys, validate_readonly_api_key, delete_readonly_api_key |
| Account inspection | get_order, get_open_orders, get_user_trades, get_balance_allowance |
| Allowance mutation | update_balance_allowance |
| Order preparation | prepare_order |
| Order posting | place_order |
| Order cancellation | cancel_orders |
| Rewards | get_rewards, get_rewards_market_details |
prepare_order
prepare_order prepares or signs an order locally without posting it.
kind: "limit" expects price and size
kind: "market" expects amount
place_order
place_order is the canonical order-posting wrapper. It uses source to select the posting path:
source: "draft" for create-and-post from a draft order
source: "signed" for posting one pre-signed order
source: "signed_batch" for posting a batch of pre-signed orders
confirm: true is required.
cancel_orders
cancel_orders is the canonical cancellation wrapper. It uses:
mode: "ids"
mode: "all"
mode: "market"
confirm: true is required.
get_rewards
get_rewards uses a scope selector:
day
total_day
current
percentages
user_market_config
Use get_rewards_market_details when you need market-specific reward details for a condition_id.
4) Bridge and transaction building
bridge_supported_assets
bridge_create_deposit_addresses
bridge_get_transaction_status
build_transactions
build_transactions is the canonical transaction-builder wrapper. Pass an items array where each item declares a kind plus its required fields.
Representative kind values include:
erc20_approval, erc1155_approval, erc20_transfer, eth_transfer
withdraw_on_matic
split_positions, merge_positions, redeem_positions
buy_market_outcome, sell_market_outcome
add_funding, remove_funding
neg_risk_convert_positions, neg_risk_redeem_positions
proxy_wallet_address, index_set, market_index
Example:
{
"tool": "build_transactions",
"input": {
"items": [
{
"kind": "erc20_transfer",
"token_address": "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",
"recipient": "0x000000000000000000000000000000000000dEaD",
"amount": "1000000"
}
]
}
}
5) Relayer and builder-relayer
Use these when transaction lifecycle tracking matters.
relayer_get_relay_address
relayer_get_nonce
relayer_get_relay_payload
relayer_get_transactions
relayer_execute
relayer_deploy_safe
relayer_poll_until_state
relayer_execute is the canonical relayer execution wrapper. It accepts:
execution_type: "proxy" | "safe" | "manual"
transactions
- optional
metadata
- optional
gas_limit / gas_price for manual mode
confirm: true
builder_relayer_get_nonce
builder_relayer_get_relay_payload
builder_relayer_get_transactions
builder_relayer_execute
builder_relayer_deploy
builder_relayer_get_deployed
builder_relayer_poll_until_state
6) Prompts and resources
Prompts
| Prompt | Purpose |
|---|
market-analysis | Structured market-analysis workflow |
portfolio-review | Portfolio and risk review workflow |
execution-checklist | Pre-trade execution readiness workflow |
Resources
| URI | Purpose |
|---|
polymarket://contracts | Canonical Polygon contract registry |
polymarket://status | Runtime/auth readiness with redacted secret state |
polymarket://endpoints | Canonical REST endpoint registry |
Resource template
| URI template | Purpose |
|---|
polymarket://markets/{conditionId} | Market payload for a specific Polymarket condition ID |