polymarket-trader-mcp 1.5.1 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -6
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +24 -27
- package/dist/db/schema.js.map +1 -1
- package/dist/index.js +0 -0
- package/package.json +9 -3
package/README.md
CHANGED
|
@@ -37,12 +37,6 @@ The most comprehensive MCP server for Polymarket — 48 tools spanning direct tr
|
|
|
37
37
|
|
|
38
38
|
## Quick Start
|
|
39
39
|
|
|
40
|
-
### One-Line Install
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
curl -fsSL https://raw.githubusercontent.com/demwick/polymarket-trader-mcp/main/install.sh | bash
|
|
44
|
-
```
|
|
45
|
-
|
|
46
40
|
### npm Install
|
|
47
41
|
|
|
48
42
|
```bash
|
|
@@ -295,6 +289,20 @@ docker run -p 3000:3000 -v mcp-data:/app/data \
|
|
|
295
289
|
|
|
296
290
|
---
|
|
297
291
|
|
|
292
|
+
## Permissions & Capabilities
|
|
293
|
+
|
|
294
|
+
This package has a transparent, minimal footprint. Full details: **[PERMISSIONS.md](PERMISSIONS.md)**
|
|
295
|
+
|
|
296
|
+
| Category | Scope |
|
|
297
|
+
|----------|-------|
|
|
298
|
+
| **Network** | 3 Polymarket APIs (HTTPS) + 1 WebSocket for live prices + license check |
|
|
299
|
+
| **Filesystem** | Single SQLite database file + `.env` read at startup |
|
|
300
|
+
| **Environment** | API credentials (live mode only), budget config, mode selection |
|
|
301
|
+
| **Processes** | None — no child processes, no shell commands |
|
|
302
|
+
| **Telemetry** | None — no analytics, no tracking, no data sent to third parties |
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
298
306
|
## Development
|
|
299
307
|
|
|
300
308
|
```bash
|
package/dist/db/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAoFxD"}
|
package/dist/db/schema.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export function initializeDb(db) {
|
|
2
2
|
db.pragma("journal_mode = WAL");
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
const ddl = [
|
|
4
|
+
`CREATE TABLE IF NOT EXISTS watchlist (
|
|
5
5
|
address TEXT PRIMARY KEY,
|
|
6
6
|
alias TEXT,
|
|
7
7
|
roi REAL,
|
|
@@ -10,9 +10,8 @@ export function initializeDb(db) {
|
|
|
10
10
|
trade_count INTEGER,
|
|
11
11
|
added_at TEXT DEFAULT (datetime('now')),
|
|
12
12
|
last_checked TEXT
|
|
13
|
-
)
|
|
14
|
-
|
|
15
|
-
CREATE TABLE IF NOT EXISTS trades (
|
|
13
|
+
)`,
|
|
14
|
+
`CREATE TABLE IF NOT EXISTS trades (
|
|
16
15
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
17
16
|
trader_address TEXT NOT NULL,
|
|
18
17
|
market_slug TEXT,
|
|
@@ -29,21 +28,18 @@ export function initializeDb(db) {
|
|
|
29
28
|
resolved_at TEXT,
|
|
30
29
|
current_price REAL,
|
|
31
30
|
exit_reason TEXT
|
|
32
|
-
)
|
|
33
|
-
|
|
34
|
-
CREATE TABLE IF NOT EXISTS daily_budget (
|
|
31
|
+
)`,
|
|
32
|
+
`CREATE TABLE IF NOT EXISTS daily_budget (
|
|
35
33
|
date TEXT NOT NULL,
|
|
36
34
|
spent REAL DEFAULT 0,
|
|
37
35
|
limit_amount REAL NOT NULL,
|
|
38
36
|
PRIMARY KEY (date)
|
|
39
|
-
)
|
|
40
|
-
|
|
41
|
-
CREATE TABLE IF NOT EXISTS config (
|
|
37
|
+
)`,
|
|
38
|
+
`CREATE TABLE IF NOT EXISTS config (
|
|
42
39
|
key TEXT PRIMARY KEY,
|
|
43
40
|
value TEXT NOT NULL
|
|
44
|
-
)
|
|
45
|
-
|
|
46
|
-
CREATE TABLE IF NOT EXISTS agent_cycles (
|
|
41
|
+
)`,
|
|
42
|
+
`CREATE TABLE IF NOT EXISTS agent_cycles (
|
|
47
43
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
48
44
|
agent_name TEXT NOT NULL,
|
|
49
45
|
strategy TEXT NOT NULL,
|
|
@@ -58,9 +54,8 @@ export function initializeDb(db) {
|
|
|
58
54
|
actions_taken TEXT,
|
|
59
55
|
notes TEXT,
|
|
60
56
|
created_at TEXT DEFAULT (datetime('now'))
|
|
61
|
-
)
|
|
62
|
-
|
|
63
|
-
CREATE TABLE IF NOT EXISTS market_watchlist (
|
|
57
|
+
)`,
|
|
58
|
+
`CREATE TABLE IF NOT EXISTS market_watchlist (
|
|
64
59
|
condition_id TEXT PRIMARY KEY,
|
|
65
60
|
token_id TEXT,
|
|
66
61
|
title TEXT,
|
|
@@ -69,20 +64,22 @@ export function initializeDb(db) {
|
|
|
69
64
|
alert_above REAL,
|
|
70
65
|
last_price REAL,
|
|
71
66
|
added_at TEXT DEFAULT (datetime('now'))
|
|
72
|
-
)
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
67
|
+
)`,
|
|
68
|
+
`CREATE INDEX IF NOT EXISTS idx_trades_condition_id ON trades(condition_id)`,
|
|
69
|
+
`CREATE INDEX IF NOT EXISTS idx_trades_trader_address ON trades(trader_address)`,
|
|
70
|
+
`CREATE INDEX IF NOT EXISTS idx_trades_status ON trades(status)`,
|
|
71
|
+
`CREATE INDEX IF NOT EXISTS idx_trades_created_at ON trades(created_at)`,
|
|
72
|
+
`CREATE INDEX IF NOT EXISTS idx_daily_budget_date ON daily_budget(date)`,
|
|
73
|
+
];
|
|
74
|
+
for (const sql of ddl) {
|
|
75
|
+
db.prepare(sql).run();
|
|
76
|
+
}
|
|
80
77
|
// Migrations — add columns safely
|
|
81
78
|
const cols = db.prepare("PRAGMA table_info(trades)").all();
|
|
82
79
|
const colNames = new Set(cols.map((c) => c.name));
|
|
83
80
|
if (!colNames.has("sl_price"))
|
|
84
|
-
db.
|
|
81
|
+
db.prepare("ALTER TABLE trades ADD COLUMN sl_price REAL").run();
|
|
85
82
|
if (!colNames.has("tp_price"))
|
|
86
|
-
db.
|
|
83
|
+
db.prepare("ALTER TABLE trades ADD COLUMN tp_price REAL").run();
|
|
87
84
|
}
|
|
88
85
|
//# sourceMappingURL=schema.js.map
|
package/dist/db/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,YAAY,CAAC,EAAqB;IAChD,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAEhC,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,YAAY,CAAC,EAAqB;IAChD,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG;QACV;;;;;;;;;MASE;QACF;;;;;;;;;;;;;;;;;MAiBE;QACF;;;;;MAKE;QACF;;;MAGE;QACF;;;;;;;;;;;;;;;MAeE;QACF;;;;;;;;;MASE;QACF,4EAA4E;QAC5E,gFAAgF;QAChF,gEAAgE;QAChE,wEAAwE;QACxE,wEAAwE;KACzE,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACxB,CAAC;IAED,kCAAkC;IAClC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,GAAG,EAAwB,CAAC;IACjF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;QAAE,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,EAAE,CAAC;IAC/F,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;QAAE,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,EAAE,CAAC;AACjG,CAAC"}
|
package/dist/index.js
CHANGED
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "polymarket-trader-mcp",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.2",
|
|
4
4
|
"description": "MCP server for Polymarket — trade, analyze markets, copy top traders, and manage your portfolio via AI",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -19,12 +19,18 @@
|
|
|
19
19
|
"type": "module",
|
|
20
20
|
"keywords": [
|
|
21
21
|
"mcp",
|
|
22
|
+
"mcp-server",
|
|
23
|
+
"model-context-protocol",
|
|
22
24
|
"polymarket",
|
|
23
|
-
"trading",
|
|
24
25
|
"prediction-markets",
|
|
26
|
+
"trading",
|
|
27
|
+
"trading-bot",
|
|
25
28
|
"copy-trading",
|
|
26
29
|
"ai-agent",
|
|
27
|
-
"smart-money"
|
|
30
|
+
"smart-money",
|
|
31
|
+
"claude",
|
|
32
|
+
"ai-trading",
|
|
33
|
+
"portfolio-management"
|
|
28
34
|
],
|
|
29
35
|
"license": "MIT",
|
|
30
36
|
"repository": {
|