Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
Polymarket Toolkit
ภาพรวม
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Read-only Polymarket data tools for AI agents: profiles, PnL, market scans. No keys, no orders.
สามเสาของ PopNx MCP
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
- เสียงผู้ใช้iยังไม่มีรีวิวรีวิวเปิดพร้อมระบบบัญชีในขั้นถัดไป
- ผลตรวจเบื้องต้นของเราiผ่าน 1 จาก 1 ข้อตรวจจากข้อมูลที่เปิดอยู่ ยังไม่ได้สแกนโค้ด
- การใช้งานiยังไม่ได้วัด★ –
ใช้ทำอะไรได้
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
- การเชื่อมต่อ: รันบนเครื่อง
- ช่องทาง (transport): stdio
- หมวด: ร้านค้าออนไลน์และรับเงิน
ติดตั้ง
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ก่อนติดตั้ง
- ผลตรวจเบื้องต้น: ผ่าน 1 จาก 1 ข้อ
- รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
- ทะเบียนไม่ได้ระบุ key ที่ต้องใส่
ต้องเตรียมก่อน
- npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"polymarket-toolkit": {
"command": "npx",
"args": [
"-y",
"polymarket-toolkit-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add polymarket-toolkit -- npx -y polymarket-toolkit-mcpหรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"polymarket-toolkit": {
"command": "npx",
"args": [
"-y",
"polymarket-toolkit-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"polymarket-toolkit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"polymarket-toolkit-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ทำอะไรได้บ้าง
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
ผลตรวจเบื้องต้นi
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
- ✓ ผ่าน
ตัวตนผู้ทำตรงกับ repo
ชื่อใน registry ยืนยันด้วยบัญชี GitHub runesleo ซึ่งเป็นเจ้าของ repo
- … ยังไม่ตรวจ
ยังมีคนดูแล
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- … ยังไม่ตรวจ
มีสัญญาอนุญาต (license)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- – ไม่เกี่ยว
endpoint ตอบ
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
- – ไม่เกี่ยว
ล็อกอินแบบ OAuth
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
- … ยังไม่ตรวจ
คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับตัวอื่นในหมวด ร้านค้าออนไลน์และรับเงินi
- ดาวมากกว่า 0% ของอีก 1754 ตัวในหมวดนี้
- ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 21% ของอีก 1754 ตัวในหมวดนี้
- ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 1754 ตัวในหมวดนี้
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
คำถามที่พบบ่อย
Polymarket Toolkit ปลอดภัยไหม?
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใช้กุญแจหรือรหัสอะไรบ้าง?
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ตัวนี้รันบนเครื่องหรือบนคลาวด์?
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
ยังมีคนดูแลอยู่ไหม?
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.7.1) เข้า registry 4 เดือนที่ผ่านมา
ใช้กับโปรแกรมไหนได้บ้าง?
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
มีตัวไหนใช้แทนได้บ้าง?
ในหมวดเดียวกันมี Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
ตัวที่ใช้แทนได้
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Stripe MCP
server ทางการของ Stripe ให้ AI ดูและจัดการลูกค้า สินค้า การชำระเงิน และใบแจ้งหนี้ ต่อผ่านคลาวด์ของ Stripe และล็อกอินแบบ OAuth
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
README จากผู้ทำ
เปิดอ่าน README
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Polymarket Toolkit
For anyone who wants to research Polymarket on their own — run the CLI yourself, or install skills for Claude / Cursor / OpenClaw and let AI run the tools. Read-only public APIs. No API keys. No signing.
Nothing to install? probpocket.com/lookup answers the same first question in a browser: paste an address, see lifetime PnL, what the wallet actually makes its money on, and how its leaderboard days compare with its real settled total. Free, no signup. Same public APIs as this CLI.
中文说明
Machine-readable product facts: ai-info.json · llms.txt. Both are generated from content/ai-identity.json; npm run check:ai-discovery fails on tool, package-version, or output drift.
Install as a plugin
- Claude Code (2.1.275 or later):
/plugin install polymarket-toolkit --marketplace runesleo/x-reader - Codex:
codex plugin marketplace add runesleo/x-reader, thencodex plugin add polymarket-toolkit@runesleo
The runesleo marketplace also lists Leo's other tools; see runesleo/x-reader.
Toolbox · pick a drawer
| I want to… | Start here |
|---|---|
| Research an address | pm profile · skills polymarket-profile / polymarket-pnl / polymarket-brier |
| See whether they actually cash out | pm cashflow — on-chain pUSD withdrawals, separated from trade settlement |
| Check execution quality | pm markout — markout vs market baseline (adverse selection) |
| Classify a trader | pm mix — passive market maker or aggressive taker |
| Scan markets & prices | pm markets · examples/01,09,11 · docs/cookbook.md |
| Wire my own data pipeline | src/index.ts · cookbook · examples/14 |
| Validation checklists | docs/templates/ — handoff · backtest · paper · live-gate · runbook |
| PnL cross-check (LB snapshot) | pm pnl-check · docs/fee-inclusive-pnl.md |
| Track leaderboard / redeem / activity | pm lb · pm redeem · pm activity · examples/05–08,15–20 |
| Give an AI agent tools | skills/ — copy into Claude / OpenClaw / Cursor |
Full index: docs/toolbox.md
30-second try
git clone https://github.com/runesleo/polymarket-toolkit.git && cd polymarket-toolkit
./bin/pm profile 0x63ce342161250d705dc0b16df89036c8e5f9ba9a
What you get: LB PnL snapshot + first-page positions. For audit-grade PnL, use the polymarket-pnl skill.
V2 merge/split broken? → docs/v2-ctf-ops-faq.md + ./bin/pm v2-check 0x…
CLI (pm)
Node 22+ (uses --experimental-strip-types). From repo root:
./bin/pm help
./bin/pm profile 0x63ce342161250d705dc0b16df89036c8e5f9ba9a ./bin/pm profile Theo4 --json ./bin/pm brier 0x63ce342161250d705dc0b16df89036c8e5f9ba9a ./bin/pm redeem 0x63ce342161250d705dc0b16df89036c8e5f9ba9a 25 ./bin/pm markets --limit 5 --active ./bin/pm activity 0x63ce342161250d705dc0b16df89036c8e5f9ba9a --type TRADE --max-pages 5
Prefer ./bin/pm from repo root (no install step). Or: npm run pm -- profile … · optional npm link for global pm.
| Command | What it does |
|---|---|
pm profile | LB PnL + open positions sample + Brier hint |
pm activity | Activity pagination + ~4000 row cap warnings |
pm scan | Top markets by 24h volume + spread |
pm updown | Crypto updown event fields / resolution source |
pm v2-check | V2 CTF split/merge checklist + activity sample |
pm lb | Leaderboard snapshot + day-over-day diff |
pm pnl-check | LB snapshot + hints — not audit-grade PnL |
pm limits | Official API rate limit pacing |
pm brier | Brier score from settled positions (sample) |
pm markout | Execution quality — markout vs market baseline |
pm mix | Execution style — maker/taker split, cross-checked against fees |
pm fees | Lifetime taker fees from /activity · pre-fee → net PnL |
pm redeem | Read-only redeem watchdog JSON |
pm markets | Quick Gamma market list |
Audit-grade PnL (Python): python3 skills/polymarket-pnl/compute_precise_pnl.py --address …
pm fees — why your number never matches the profile
./bin/pm fees 0xYourProxy
**Polymarket's own PnL — profile,
lb-api, theuser-pnlcurve — is *pre-fee*.
A cashflow replay is *post-fee*.
gap ≈ lifetime taker fees − maker rebates.**
The fee is already in /activity: usdcSize is not size × price, and the residual is what you were charged. That means lifetime fees, per-fill taker proof, and the pre-fee → net conversion come from one REST call — no RPC, no receipt decoding, no credentials.
Verified by predicting the gap before comparing, on four wallets: a heavy-taker wallet landed at a $0.84 residual against a $1,308.87 prediction, and a pure maker matched the official number to $0.40.
⚠️ The taker test is one-directional. fee > 0 proves you were the taker — makers are never charged. fee == 0 means maker or fee-exempt category, so it is reported as an upper bound on passive share, never as a maker count.
⚠️ Fees are recent. The earliest on record here is late June 2026, rate stepping 0.03 → 0.05 → 0.07. Any reconciliation that passed before then proves nothing about today.
pm markout — is this address getting picked off?
./bin/pm markout 0x9a18f10966262d9be5d662754256380583fabb54 --fills 200
Markout is where a fill stands some seconds later: (reference − fill) × direction, in cents per share. Negative means the price walked away from you — adverse selection.
Three things this command does that a hand-rolled version usually gets wrong:
- Passive fills are included.
/trades?user=behaves liketakerOnly=trueby default, so a market maker's entire passive side is missing unless you ask for it. - The reference is a windowed VWAP, not the next print. Prints alternate between bid and ask, and that bounce alone makes every SELL look good and every BUY look bad.
- Everything is measured against a baseline — the same tokens over the same span, minus this wallet. Levels drift; the excess is the part that means something.
Read the excess column and the coverage column together. In short-dated markets a large tau leaves most fills with nothing ahead of them to be priced against, and the mean then describes the surviving handful rather than the trader.
Why these three defaults exist. I ran 15 strategies on Polymarket over half a year, and the ones that cost the most failed at measurement, not at strategy: the same logic made +77% on paper and lost −74% live; 18.3% of my own trade records were quietly wrong, two thirds of those being false wins; market-making went 0 for 10 while the platform shipped three fee formulas in a single night. Each flag above is one of those mistakes turned into a default, so it isn't paid for twice.
The full write-up — 15 strategies, 5 deep pits, 14,000 words — is at leolabs.me/pm-quant ($49). It comes with monthly supplement notes; the current one measures a ~300ms server-side floor on taker orders that no colo or private line removes, against 56ms for maker.
TypeScript library
Zero-dependency helpers in src/index.ts. Run demos with Node 22+:
npx tsx examples/01-fetch-gamma-markets.ts
node --experimental-strip-types examples/01-fetch-gamma-markets.ts
- Examples:
examples/— one numbered script per API pattern - Cookbook:
docs/cookbook.md— bilingual recipes
Skills (AI agents)
| Skill | What it does |
|---|---|
polymarket-profile | Deep profile — PnL, win rate, positions, categories, strategy detection |
polymarket-brier | Prediction accuracy scoring, calibration analysis |
polymarket-pnl | Audit-grade PnL via cashflow reconstruction (~0.2% MAPE vs. official) |
Install: copy the chosen skill into the skills directory configured by your agent client. polymarket-pnl also needs: pip install httpx
Skill details: skills/*/SKILL.md · long-form docs in sections below.
What's in this repo
| Included | Not included |
|---|---|
| Read-only APIs, CLI, skills, docs, templates | Private keys, signing, or trade execution |
V2 FAQ + pm v2-check diagnostics | Runnable merge/split/redeem modules |
polymarket-pnl audit script | Custodial wallets or one-click trading |
| Builder attribution helper for future CLOB executors | Builder API credentials or reward guarantees |
Opt-in executor/ sub-package (isolated deps, dry-run default) | Custody, strategy logic, or one-click trading |
mcp/ MCP server — read-only tools for AI agents (docs/mcp.md) | MCP-exposed order placement |
The core (src/, CLI, skills) never holds keys or sends transactions. Order execution lives only in the opt-in executor/ sub-package, which signs with your env-provided key, defaults to dry-run, and is never imported by the core. For normal redemption, use the official Polymarket app.
New to Polymarket? Sign up via the link above (affiliate disclosure: the author may earn referral rewards; no extra cost to you).
Building your own order executor? Start from the opt-in executor/ sub-package (docs/executor.md) — CLOB V2 limit orders with dry-run default, notional cap, and default builder attribution via src/builder.ts (override / opt-out via env). See builder attribution for the disclosure and FAQ. Read-only CLI/skills still do not send orders.
Release notes
v0.7 — MCP server for AI agents
- `mcp/` — Model Context Protocol server exposing 12 read-only tools (
pm_profile,pm_activity,pm_brier,pm_mix,pm_markout,pm_pnl_check,pm_scan,pm_updown,pm_leaderboard,pm_redeem_watchdog,pm_v2_check,pm_rate_limits) — docs/mcp.md - The CLI is the contract: every tool shells out to
pm, so the server is exactly as read-only as the CLI; inputs are allowlist-validated before reaching argv - Order placement is deliberately not exposed over MCP — the executor stays a separate, human-wired opt-in
v0.6 — Opt-in executor sub-package
- `executor/` — isolated CLOB V2 order execution module (docs/executor.md): own dependencies, never imported by the zero-dependency core
- Safety ladder — dry-run by default (
EXECUTOR_LIVE=1to post), notional capEXECUTOR_MAX_USD(default $10), fail-closed credential validation - Builder attribution wired end-to-end — default / override / opt-out via core
src/builder.ts, full disclosure in docs - Core CLI/skills remain read-only and key-free — scope table updated above
v0.5 — Toolbox CLI + roadmap flagships
- `pm` CLI — profile · activity · scan · updown · v2-check · brier · redeem · markets
- Activity cap detection — duplicate-page warnings near ~4000 rows
- V2 CTF FAQ —
docs/v2-ctf-ops-faq.md(split/merge/convert · infra alignment) - Builder attribution helper —
src/builder.ts+docs/builder-attribution.mdfor future CLOB executors, with default / override / opt-out paths - Market scanner · crypto updown fields · handoff template — toolbox.md
v0.4 — Redeem wat
ตัดมาแค่ช่วงต้น อ่านต่อใน repo