@0xinsider/mcp 3.5.0 → 3.6.0
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 +2 -0
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/dist/prompts/index.d.ts +1 -1
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +6 -6
- package/dist/prompts/index.js.map +1 -1
- package/dist/resources/index.d.ts +1 -1
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +10 -10
- package/dist/resources/index.js.map +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +18 -7
- package/dist/server.js.map +1 -1
- package/dist/tools/combos.d.ts +1 -1
- package/dist/tools/combos.d.ts.map +1 -1
- package/dist/tools/combos.js +11 -11
- package/dist/tools/combos.js.map +1 -1
- package/dist/tools/explore-markets.d.ts +1 -1
- package/dist/tools/explore-markets.d.ts.map +1 -1
- package/dist/tools/explore-markets.js +3 -3
- package/dist/tools/explore-markets.js.map +1 -1
- package/dist/tools/games.d.ts +1 -1
- package/dist/tools/games.d.ts.map +1 -1
- package/dist/tools/games.js +8 -8
- package/dist/tools/games.js.map +1 -1
- package/dist/tools/get-insider-radar.d.ts +1 -1
- package/dist/tools/get-insider-radar.d.ts.map +1 -1
- package/dist/tools/get-insider-radar.js +4 -3
- package/dist/tools/get-insider-radar.js.map +1 -1
- package/dist/tools/get-large-positions.d.ts +1 -1
- package/dist/tools/get-large-positions.d.ts.map +1 -1
- package/dist/tools/get-large-positions.js +3 -3
- package/dist/tools/get-large-positions.js.map +1 -1
- package/dist/tools/get-leaderboard.d.ts +1 -1
- package/dist/tools/get-leaderboard.d.ts.map +1 -1
- package/dist/tools/get-leaderboard.js +4 -4
- package/dist/tools/get-leaderboard.js.map +1 -1
- package/dist/tools/get-market-flow.d.ts +1 -1
- package/dist/tools/get-market-flow.d.ts.map +1 -1
- package/dist/tools/get-market-flow.js +4 -4
- package/dist/tools/get-market-flow.js.map +1 -1
- package/dist/tools/get-position-timeline.d.ts +1 -1
- package/dist/tools/get-position-timeline.d.ts.map +1 -1
- package/dist/tools/get-position-timeline.js +3 -3
- package/dist/tools/get-position-timeline.js.map +1 -1
- package/dist/tools/get-positions.d.ts +1 -1
- package/dist/tools/get-positions.d.ts.map +1 -1
- package/dist/tools/get-positions.js +3 -3
- package/dist/tools/get-positions.js.map +1 -1
- package/dist/tools/get-suspicious-trades.d.ts +1 -1
- package/dist/tools/get-suspicious-trades.d.ts.map +1 -1
- package/dist/tools/get-suspicious-trades.js +6 -6
- package/dist/tools/get-suspicious-trades.js.map +1 -1
- package/dist/tools/get-trader-pnl.d.ts +1 -1
- package/dist/tools/get-trader-pnl.d.ts.map +1 -1
- package/dist/tools/get-trader-pnl.js +4 -4
- package/dist/tools/get-trader-pnl.js.map +1 -1
- package/dist/tools/get-trader.d.ts +1 -1
- package/dist/tools/get-trader.d.ts.map +1 -1
- package/dist/tools/get-trader.js +4 -4
- package/dist/tools/get-trader.js.map +1 -1
- package/dist/tools/get-trending-wallets.d.ts +1 -1
- package/dist/tools/get-trending-wallets.d.ts.map +1 -1
- package/dist/tools/get-trending-wallets.js +3 -3
- package/dist/tools/get-trending-wallets.js.map +1 -1
- package/dist/tools/get-whale-trades.d.ts +1 -1
- package/dist/tools/get-whale-trades.d.ts.map +1 -1
- package/dist/tools/get-whale-trades.js +4 -4
- package/dist/tools/get-whale-trades.js.map +1 -1
- package/dist/tools/large-trade-counterparties.d.ts +1 -1
- package/dist/tools/large-trade-counterparties.d.ts.map +1 -1
- package/dist/tools/large-trade-counterparties.js +8 -8
- package/dist/tools/large-trade-counterparties.js.map +1 -1
- package/dist/tools/market-reads.d.ts +1 -1
- package/dist/tools/market-reads.d.ts.map +1 -1
- package/dist/tools/market-reads.js +8 -8
- package/dist/tools/market-reads.js.map +1 -1
- package/dist/tools/pick-of-the-day.d.ts +1 -1
- package/dist/tools/pick-of-the-day.d.ts.map +1 -1
- package/dist/tools/pick-of-the-day.js +10 -10
- package/dist/tools/pick-of-the-day.js.map +1 -1
- package/dist/tools/read-parity.d.ts +1 -1
- package/dist/tools/read-parity.d.ts.map +1 -1
- package/dist/tools/read-parity.js +80 -80
- package/dist/tools/read-parity.js.map +1 -1
- package/dist/tools/search-markets.d.ts +1 -1
- package/dist/tools/search-markets.d.ts.map +1 -1
- package/dist/tools/search-markets.js +4 -4
- package/dist/tools/search-markets.js.map +1 -1
- package/dist/tools/trader-reads.d.ts +1 -1
- package/dist/tools/trader-reads.d.ts.map +1 -1
- package/dist/tools/trader-reads.js +12 -12
- package/dist/tools/trader-reads.js.map +1 -1
- package/package.json +2 -2
|
@@ -37,17 +37,17 @@ Args:
|
|
|
37
37
|
- limit (number, 1-100, default 100): Executions per page
|
|
38
38
|
|
|
39
39
|
Returns: executions (each with its first makers page and makers_next_cursor), executions_next_cursor, execution counts, status and meta.`,
|
|
40
|
-
inputSchema: {
|
|
40
|
+
inputSchema: z.object({
|
|
41
41
|
id: largeTradeId,
|
|
42
42
|
snapshot_id: snapshotId,
|
|
43
43
|
cursor: z.string().optional()
|
|
44
44
|
.describe("executions_next_cursor from get_large_trade or from the previous page"),
|
|
45
45
|
limit: pageLimit("executions"),
|
|
46
|
-
},
|
|
46
|
+
}),
|
|
47
47
|
annotations: readAnnotations,
|
|
48
|
-
}, async ({ id, ...query },
|
|
48
|
+
}, async ({ id, ...query }, ctx) => {
|
|
49
49
|
try {
|
|
50
|
-
const response = await client.request(executionsPath(id), query, undefined, { signal:
|
|
50
|
+
const response = await client.request(executionsPath(id), query, undefined, { signal: ctx.mcpReq.signal });
|
|
51
51
|
return ok(withMeta(response.data, response.meta));
|
|
52
52
|
}
|
|
53
53
|
catch (error) {
|
|
@@ -68,7 +68,7 @@ Args:
|
|
|
68
68
|
- limit (number, 1-100, default 100): Makers per page
|
|
69
69
|
|
|
70
70
|
Returns: items (makers), next_cursor, execution_id, snapshot_id and meta.`,
|
|
71
|
-
inputSchema: {
|
|
71
|
+
inputSchema: z.object({
|
|
72
72
|
id: largeTradeId,
|
|
73
73
|
execution_id: z.string().trim().min(1)
|
|
74
74
|
.describe("execution_id of one counterparty execution"),
|
|
@@ -76,11 +76,11 @@ Returns: items (makers), next_cursor, execution_id, snapshot_id and meta.`,
|
|
|
76
76
|
cursor: z.string().optional()
|
|
77
77
|
.describe("makers_next_cursor from the execution, or next_cursor from the previous page"),
|
|
78
78
|
limit: pageLimit("makers"),
|
|
79
|
-
},
|
|
79
|
+
}),
|
|
80
80
|
annotations: readAnnotations,
|
|
81
|
-
}, async ({ id, execution_id, ...query },
|
|
81
|
+
}, async ({ id, execution_id, ...query }, ctx) => {
|
|
82
82
|
try {
|
|
83
|
-
const response = await client.request(`${executionsPath(id)}/${encodeURIComponent(execution_id)}/makers`, query, undefined, { signal:
|
|
83
|
+
const response = await client.request(`${executionsPath(id)}/${encodeURIComponent(execution_id)}/makers`, query, undefined, { signal: ctx.mcpReq.signal });
|
|
84
84
|
return ok(withMeta(response.data, response.meta));
|
|
85
85
|
}
|
|
86
86
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"large-trade-counterparties.js","sourceRoot":"","sources":["../../src/tools/large-trade-counterparties.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,6EAA6E;AAC7E,2DAA2D;AAC3D,EAAE;AACF,0EAA0E;AAC1E,mFAAmF;AACnF,4CAA4C;AAG5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,eAAe,GAAG;IACtB,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,KAAK;CACZ,CAAC;AAEX,qFAAqF;AACrF,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC1C,QAAQ,CAAC,sCAAsC,CAAC,CAAC;AACpD,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KACjC,QAAQ,CAAC,wDAAwD,CAAC,CAAC;AAEtE,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;SACjD,QAAQ,CAAC,OAAO,IAAI,gCAAgC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,cAAc,CAAC,EAAU;IAChC,OAAO,wBAAwB,kBAAkB,CAAC,EAAE,CAAC,4BAA4B,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,2CAA2C,CAAC,MAAiB,EAAE,MAAiB;IAC9F,MAAM,CAAC,YAAY,CACjB,yCAAyC,EACzC;QACE,KAAK,EAAE,yCAAyC;QAChD,WAAW,EAAE;;;;;;;;yIAQsH;QACnI,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"large-trade-counterparties.js","sourceRoot":"","sources":["../../src/tools/large-trade-counterparties.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { McpServer } from "@modelcontextprotocol/
|
|
1
|
+
import { McpServer } from "@modelcontextprotocol/server";
|
|
2
2
|
import { ApiClient } from "../client.js";
|
|
3
3
|
export declare function registerGetMarketHolders(server: McpServer, client: ApiClient): void;
|
|
4
4
|
export declare function registerGetMarketCandles(server: McpServer, client: ApiClient): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-reads.d.ts","sourceRoot":"","sources":["../../src/tools/market-reads.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"market-reads.d.ts","sourceRoot":"","sources":["../../src/tools/market-reads.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAkBzC,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAmDnF;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAoCnF"}
|
|
@@ -31,7 +31,7 @@ Args:
|
|
|
31
31
|
- cursor (string, optional): next_cursor from the previous page, bound to the same market and filters
|
|
32
32
|
|
|
33
33
|
Returns: data (holders), has_more, next_cursor, total, market, scan, totals and meta.`,
|
|
34
|
-
inputSchema: {
|
|
34
|
+
inputSchema: z.object({
|
|
35
35
|
condition_id: marketConditionId,
|
|
36
36
|
outcome: z.enum(["yes", "no", "all"]).optional()
|
|
37
37
|
.describe("Keep holders netting one side; all (the default) lists both"),
|
|
@@ -41,11 +41,11 @@ Returns: data (holders), has_more, next_cursor, total, market, scan, totals and
|
|
|
41
41
|
.describe("Max holders per page (1-100, default 20)"),
|
|
42
42
|
cursor: z.string().optional()
|
|
43
43
|
.describe("next_cursor from the previous page; it is bound to the same market and filters"),
|
|
44
|
-
},
|
|
44
|
+
}),
|
|
45
45
|
annotations: readAnnotations,
|
|
46
|
-
}, async ({ condition_id, ...query },
|
|
46
|
+
}, async ({ condition_id, ...query }, ctx) => {
|
|
47
47
|
try {
|
|
48
|
-
const response = await client.request(marketPath(condition_id, "holders"), query, undefined, { signal:
|
|
48
|
+
const response = await client.request(marketPath(condition_id, "holders"), query, undefined, { signal: ctx.mcpReq.signal });
|
|
49
49
|
// `ListMetadata::MarketHolders` in `response.rs`: the page and its
|
|
50
50
|
// cursor pair, with the market, the scan and the roster totals beside
|
|
51
51
|
// it. An absent field stays absent; none is invented.
|
|
@@ -77,7 +77,7 @@ Args:
|
|
|
77
77
|
- to (integer, optional): Inclusive upper bound, unix seconds; from must not be after to
|
|
78
78
|
|
|
79
79
|
Returns: condition_id, resolution, and outcomes, each with its token_id and candles, plus meta.`,
|
|
80
|
-
inputSchema: {
|
|
80
|
+
inputSchema: z.object({
|
|
81
81
|
condition_id: marketConditionId,
|
|
82
82
|
resolution: z.enum(["1d", "1w"]).optional()
|
|
83
83
|
.describe("1d (the default) buckets by UTC day, 1w by ISO week from Monday 00:00 UTC"),
|
|
@@ -85,11 +85,11 @@ Returns: condition_id, resolution, and outcomes, each with its token_id and cand
|
|
|
85
85
|
.describe("Exclusive lower bound in unix seconds"),
|
|
86
86
|
to: z.number().int().optional()
|
|
87
87
|
.describe("Inclusive upper bound in unix seconds; from must not be after to"),
|
|
88
|
-
},
|
|
88
|
+
}),
|
|
89
89
|
annotations: readAnnotations,
|
|
90
|
-
}, async ({ condition_id, ...query },
|
|
90
|
+
}, async ({ condition_id, ...query }, ctx) => {
|
|
91
91
|
try {
|
|
92
|
-
const response = await client.request(marketPath(condition_id, "candles"), query, undefined, { signal:
|
|
92
|
+
const response = await client.request(marketPath(condition_id, "candles"), query, undefined, { signal: ctx.mcpReq.signal });
|
|
93
93
|
return ok(withMeta(response.data, response.meta));
|
|
94
94
|
}
|
|
95
95
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-reads.js","sourceRoot":"","sources":["../../src/tools/market-reads.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4BAA4B;AAC5B,EAAE;AACF,0EAA0E;AAC1E,mFAAmF;AACnF,4CAA4C;AAG5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,eAAe,GAAG;IACtB,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,KAAK;CACZ,CAAC;AAEX,qDAAqD;AACrD,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/C,QAAQ,CAAC,0DAA0D,CAAC,CAAC;AAExE,SAAS,UAAU,CAAC,WAAmB,EAAE,MAAc;IACrD,OAAO,kBAAkB,kBAAkB,CAAC,WAAW,CAAC,IAAI,MAAM,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAiB;IAC3E,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE;;;;;;;;;sFASmE;QAChF,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"market-reads.js","sourceRoot":"","sources":["../../src/tools/market-reads.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { McpServer } from "@modelcontextprotocol/
|
|
1
|
+
import { McpServer } from "@modelcontextprotocol/server";
|
|
2
2
|
import { ApiClient } from "../client.js";
|
|
3
3
|
export declare function registerGetPickOfTheDay(server: McpServer, client: ApiClient): void;
|
|
4
4
|
export declare function registerGetPickOfTheDayArchive(server: McpServer, client: ApiClient): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pick-of-the-day.d.ts","sourceRoot":"","sources":["../../src/tools/pick-of-the-day.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"pick-of-the-day.d.ts","sourceRoot":"","sources":["../../src/tools/pick-of-the-day.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAmBzC,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAwBlF;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAsBzF;AAED,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAoB7F"}
|
|
@@ -24,11 +24,11 @@ When no active pick is available, including after cancelled pending recommendati
|
|
|
24
24
|
Args: none
|
|
25
25
|
|
|
26
26
|
Returns: The published pick set for the current product day (America/New_York), or a pick_not_released error with retry_at.`,
|
|
27
|
-
inputSchema: {},
|
|
27
|
+
inputSchema: z.object({}),
|
|
28
28
|
annotations: readAnnotations,
|
|
29
|
-
}, async (_args,
|
|
29
|
+
}, async (_args, ctx) => {
|
|
30
30
|
try {
|
|
31
|
-
const response = await client.request("/api/v1/pick-of-the-day", undefined, undefined, { signal:
|
|
31
|
+
const response = await client.request("/api/v1/pick-of-the-day", undefined, undefined, { signal: ctx.mcpReq.signal });
|
|
32
32
|
return ok(withMeta(response.data, response.meta));
|
|
33
33
|
}
|
|
34
34
|
catch (error) {
|
|
@@ -44,11 +44,11 @@ export function registerGetPickOfTheDayArchive(server, client) {
|
|
|
44
44
|
Args: none
|
|
45
45
|
|
|
46
46
|
Returns: picks[] newest first with outcome and CLV fields, plus the aggregate record (hit_rate, decided, wins, losses, voids, profit, roi, total risked).`,
|
|
47
|
-
inputSchema: {},
|
|
47
|
+
inputSchema: z.object({}),
|
|
48
48
|
annotations: readAnnotations,
|
|
49
|
-
}, async (_args,
|
|
49
|
+
}, async (_args, ctx) => {
|
|
50
50
|
try {
|
|
51
|
-
const response = await client.request("/api/v1/pick-of-the-day/archive", undefined, undefined, { signal:
|
|
51
|
+
const response = await client.request("/api/v1/pick-of-the-day/archive", undefined, undefined, { signal: ctx.mcpReq.signal });
|
|
52
52
|
return ok(withMeta(response.data, response.meta));
|
|
53
53
|
}
|
|
54
54
|
catch (error) {
|
|
@@ -60,13 +60,13 @@ export function registerGetPickOfTheDayLedgerEntry(server, client) {
|
|
|
60
60
|
server.registerTool("get_pick_of_the_day_ledger_entry", {
|
|
61
61
|
title: "Get Pick of the Day Proof",
|
|
62
62
|
description: "Read one published pick's sealed, opened or uncommitted ledger entry by its stable decimal-string pick_id. commitment_version explicitly selects version 1 legacy proofs or version 2 rank-free proofs. Never infer a proof format from dates or reorder canonical bytes. Pending proofs withhold the backed side and nonce. This tool requires the usual authenticated MCP tools/call transport; the corresponding REST read is public.",
|
|
63
|
-
inputSchema: {
|
|
63
|
+
inputSchema: z.object({
|
|
64
64
|
pick_id: z.string().regex(/^[1-9][0-9]*$/).describe("Stable positive database row id as decimal text"),
|
|
65
|
-
},
|
|
65
|
+
}),
|
|
66
66
|
annotations: readAnnotations,
|
|
67
|
-
}, async ({ pick_id },
|
|
67
|
+
}, async ({ pick_id }, ctx) => {
|
|
68
68
|
try {
|
|
69
|
-
const response = await client.request(`/api/v1/pick-of-the-day/ledger/${encodeURIComponent(pick_id)}`, undefined, undefined, { signal:
|
|
69
|
+
const response = await client.request(`/api/v1/pick-of-the-day/ledger/${encodeURIComponent(pick_id)}`, undefined, undefined, { signal: ctx.mcpReq.signal });
|
|
70
70
|
return ok(withMeta(response.data, response.meta));
|
|
71
71
|
}
|
|
72
72
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pick-of-the-day.js","sourceRoot":"","sources":["../../src/tools/pick-of-the-day.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEjD,+EAA+E;AAC/E,sEAAsE;AACtE,+DAA+D;AAC/D,kEAAkE;AAClE,EAAE;AACF,kFAAkF;AAClF,gFAAgF;AAChF,+DAA+D;AAE/D,MAAM,eAAe,GAAG;IACtB,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,KAAK;CACZ,CAAC;AAEX,MAAM,UAAU,uBAAuB,CAAC,MAAiB,EAAE,MAAiB;IAC1E,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE;;;;;;4HAMyG;QACtH,WAAW,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"pick-of-the-day.js","sourceRoot":"","sources":["../../src/tools/pick-of-the-day.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { McpServer } from "@modelcontextprotocol/
|
|
1
|
+
import { McpServer } from "@modelcontextprotocol/server";
|
|
2
2
|
import { ApiClient } from "../client.js";
|
|
3
3
|
export declare function registerBatchGetTraders(server: McpServer, client: ApiClient): void;
|
|
4
4
|
export declare function registerGetLargeTradesHistory(server: McpServer, client: ApiClient): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-parity.d.ts","sourceRoot":"","sources":["../../src/tools/read-parity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"read-parity.d.ts","sourceRoot":"","sources":["../../src/tools/read-parity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAezC,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CA6BlF;AAqDD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAuBxF;AAED,gEAAgE;AAChE,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAuBxF;AAgCD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAYhF;AAED,uDAAuD;AACvD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAYhF;AA8BD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAarF;AAED,6DAA6D;AAC7D,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAatF;AAMD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CA4CrF;AAID,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CA4CrF;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAkCpF;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAoC1F;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAsBtF;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAoDtF;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAsB/E;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAyB7E;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAyBzF;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAkC1F;AAED,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAyB3F;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CA2B1F;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAsB9E;AAGD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAsB/E;AAMD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CA4BhF;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CA4B5E;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAsDhF"}
|