Use when the user wants to actually PLACE, manage, or redeem bets on Polymarket (not just read odds — that's blockrun_markets). Covers setup (deposit wallet, funding, approvals), buy/sell with confirm gating, positions, redeeming winnings, geoblock handling, and the end-to-end demo flow.
SkillScore58Maintained
Automatic
◆Finance & Accounting pack
Last verified 9/23/2026
What it changes
Passed 9 of 16 test cases with the skill, and 2 of 16 without it.
Without skill13%
With skill58%
Checks it passed that the model alone missed
Suggests offering FAK order type as a fill option
States the minimum deposit funding amount is 2 USD
Specifies that market sell orders require size in shares
and 16 more in the full report
11 fixed3 passed either way10 still failing0 broke
Pass-rate lift
+46 pp
Tokens
+60%
Agent turns
0%
Response time
-38%
Model gemini-3.6-flashMeasured 9/23/2026v214 of 24 cases passed with skill · 16 comparable
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 11 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 11
Prompt
What is the minimum dollar threshold for funding the Polymarket deposit vault from Base USDC, and how is credited balance updated? Summarize in a quick reference list.
What was checked, without and with the skill
Checked
Without skill
With skill
States the minimum deposit funding amount is 2 USD
Missed
Passed
Notes that pUSD vault balance credit is asynchronous and takes several minutes
Missed
Passed
case-23 · gemini-3.6-flash · 9/23/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md127 linessingle file
Polymarket Trading (blockrun_polymarket)
Real-money trading on Polymarket's CLOB V2 (Polygon), signed locally by the
user's BlockRun wallet key. Data discovery stays on blockrun_markets —
this tool only trades.
Mental model
Signer = the BlockRun wallet key (~/.blockrun/.session by default; a
BLOCKRUN_WALLET_KEY env var or an existing agent wallet.json takes
precedence). Never leaves the machine. setup prints the actual signer
address — back up the key behind it, wherever it lives (key file or env-var
value).
Deposit wallet = a Polygon vault contract derived from that key
(POLY_1271). It holds the betting funds in pUSD and only honors the
signer's EIP-712 signatures. Deploy/approve/redeem are gasless (relayer).
Money separation: bets spend pUSD on Polygon; x402 API fees spend USDC on
Base. The budget ledger does NOT cover bets — confirm:true + caps do.
Zero setup: no Polymarket account, no API keys, no gas token. On first
setup the MCP bootstraps a builder key from the user's OWN wallet, then
derives + deploys the vault (all gasless). Geoblock is handled by default —
CLOB traffic routes through BlockRun's Finland egress out of the box.
Golden rules for agents
Never pass confirm:true unless the user explicitly approved that exact
trade. Call once WITHOUT confirm → show the dry-run preview → ask → re-call
with confirm:true.
Per-order cap POLYMARKET_MAX_BET_USD (default $25) and optional session cap
are enforced server-side; don't try to split orders to sneak past them. The
optional POLYMARKET_MAX_FUND_USD bounds a single fund call the same way.
A withdraw preview marks any to_address that is not the user's own agent
wallet as CUSTOM — show the user that line verbatim before confirming.
On ANY error, read the message — it says exactly what to do next (fund,
approve, region, re-run setup). Don't retry blindly.
End-to-end flow
# 0. No Polymarket account or API keys needed — the MCP bootstraps everything