Skip to main content

Python SDK + MCP Server for agentCrab — trade Polymarket prediction markets, earn $CRAB token airdrops

Project description

agentcrab

Python SDK + MCP Server for agentCrab — turn any AI agent into a Polymarket assistant with 3 lines of code. Every API call earns $CRAB airdrop points worth 2x your spending.

Install

pip install agentcrab          # SDK only
pip install agentcrab[mcp]     # SDK + MCP server

Quick Start

from agentcrab import AgentCrab

client = AgentCrab("https://api.agentcrab.ai/polymarket", "0xYOUR_PRIVATE_KEY")

# Search markets
markets = client.search("bitcoin")
for m in markets:
    print(m.title, m.outcomes)

# Check balance
balance = client.get_balance()
print(f"{balance.calls_remaining} API calls remaining")

Trading

# One-time setup (deploys Safe + approvals + L2 credentials)
setup = client.setup_trading()
print(f"Safe: {setup.safe_address}")

# Buy shares
result = client.buy(token_id="TOKEN_ID", size=5.0, price=0.65)
print(f"Order {result.status}: {result.order_id}")

# Sell shares
result = client.sell(token_id="TOKEN_ID", size=5.0, price=0.70)

# View positions
for pos in client.get_positions():
    print(f"{pos.outcome}: {pos.size} shares, PnL: {pos.pnl}")

Full API

Balance & Payment

Method Description Cost
get_balance() Prepaid balance Free
get_wallet_balance() BSC wallet USDT + BNB Free
get_trading_status() Trading setup status Free
deposit(amount_usdt) Deposit to agentCrab Free
deposit_to_polymarket(amount_usdt) Deposit to Polymarket Free

Market Data

Method Description Cost
search(query, tag, category) Search events 0.01 USDT
browse(category, mood) Browse events 0.01 USDT
get_categories() List market categories Free
get_event(event_id) Get single event 0.01 USDT
get_event_by_slug(slug) Get event by slug 0.01 USDT
get_market(market_id) Get single market 0.01 USDT
get_orderbook(token_id) Get orderbook 0.01 USDT
get_orderbooks_batch(token_ids) Batch orderbooks (up to 20) 0.01 USDT
get_price(token_id) Get price 0.01 USDT
get_prices_batch(token_ids) Batch prices (up to 20) 0.01 USDT
find_tradeable(query, category, mood) Find liquid market + orderbook (1 search + N orderbook calls) 0.01+ USDT
search_history(query, category) Search closed events 0.01 USDT
sync_history() Trigger closed-event sync Free

Positions & History

Method Description Cost
get_positions() Your positions 0.01 USDT
get_trades(limit, offset) Your trades 0.01 USDT
get_activity(limit, offset) On-chain activity 0.01 USDT
get_trader_positions(address) Any trader's positions 0.01 USDT
get_trader_trades(address) Any trader's trades 0.01 USDT

Leaderboard

Method Description Cost
get_leaderboard(limit, offset) Global leaderboard 0.01 USDT
get_category_leaderboard(category) Category leaderboard 0.01 USDT
get_trader_category_profile(address) Trader category breakdown 0.01 USDT
get_category_stats(category) Category aggregate stats 0.01 USDT

Trading (auto-setup on first trade)

Method Description Cost
setup_trading() Deploy Safe + approvals + creds 0.01-0.03 USDT
set_credentials(key, secret, passphrase) Manual cred set Free
refresh_balance() Refresh CLOB balance cache Free
buy(token_id, size, price) Buy shares 0.01 USDT
sell(token_id, size, price) Sell shares 0.01 USDT
batch_order(orders) Batch orders (max 15) N × 0.01 USDT
cancel_order(order_id) Cancel order 0.01 USDT
cancel_all_orders() Cancel all 0.01 USDT
get_open_orders(market) Open orders 0.01 USDT

Stop Loss / Take Profit

Method Description Cost
set_stop_loss(token_id, trigger_price, size, exit_price) Set stop loss 0.01 USDT
set_take_profit(token_id, trigger_price, size, exit_price) Set take profit 0.01 USDT
get_triggers(status, token_id) List triggers Free
cancel_trigger(trigger_id) Cancel trigger Free
cancel_all_triggers(token_id) Cancel all triggers Free

$CRAB Token & Points

Method Description Cost
get_points() Your airdrop points Free
get_points_leaderboard(limit) Points ranking Free
get_token_info() Token details + rules Free

Every API call earns points. 1 USDT deposited = 100 points, 1 API call = 1 point. Airdrop value >= 2x total spend.

Wallet

Method Description
AgentCrab.create_wallet(api_url) Create new wallet (static)

MCP Server

For Claude Code, Cursor, Windsurf, and other MCP-compatible tools:

# stdio mode (Claude Code, local agents)
AGENTCRAB_PRIVATE_KEY=0x... agentcrab-mcp

# HTTP mode (remote/shared)
AGENTCRAB_PRIVATE_KEY=0x... agentcrab-mcp --transport streamable-http --port 8000

Exposes all SDK methods as MCP tools. No code needed — the AI calls tools directly.

Typed Responses

All methods return typed dataclasses with a .raw escape hatch:

balance = client.get_balance()
print(balance.calls_remaining)   # typed field
print(balance.raw)               # full server response dict

Error Handling

from agentcrab import AgentCrabError, InsufficientBalance

try:
    result = client.buy(token_id, size=5.0, price=0.65)
    # buy()/sell() auto-call setup_trading() if needed — no manual setup required
except InsufficientBalance as e:
    print(f"Top up: {e.message}")
except AgentCrabError as e:
    print(f"Error [{e.error_code}]: {e.message}")

Dependencies

Minimal — no web3 required:

  • eth-account — EIP-191, EIP-712, tx signing
  • httpx — Sync HTTP
  • hexbytes — SafeTx hash signing

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentcrab-0.3.1.tar.gz (21.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentcrab-0.3.1-py3-none-any.whl (25.6 kB view details)

Uploaded Python 3

File details

Details for the file agentcrab-0.3.1.tar.gz.

File metadata

  • Download URL: agentcrab-0.3.1.tar.gz
  • Upload date:
  • Size: 21.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for agentcrab-0.3.1.tar.gz
Algorithm Hash digest
SHA256 f00e568c3c37de66b5511b4de100ff1de8f3a2e7126829e46384edf259ebe453
MD5 afea570c987ffeb186ab8f40c5e35c72
BLAKE2b-256 2d6e00a3106b3db5083a904cd0da01f4cb3c3f618e1d6be4b8a0a898f045e200

See more details on using hashes here.

File details

Details for the file agentcrab-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: agentcrab-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 25.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for agentcrab-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b1fc42a9b6e27a1284fee88f92e50b1f595069e64bbd72caa4ebcb8995b223e4
MD5 72c6314c317c2e3a6bd42c5b626bcb1d
BLAKE2b-256 dd98e55e4cce03dde9305e505fd5769b5295b10776c49369a87d653766aa79ae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page