@sharpe-terminal/mcp-server 1.2.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 +193 -0
- package/dist/api-client.d.ts +13 -0
- package/dist/api-client.d.ts.map +1 -0
- package/dist/api-client.js +105 -0
- package/dist/api-client.js.map +1 -0
- package/dist/composite-tools.d.ts +14 -0
- package/dist/composite-tools.d.ts.map +1 -0
- package/dist/composite-tools.js +520 -0
- package/dist/composite-tools.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +243 -0
- package/dist/index.js.map +1 -0
- package/dist/resources.d.ts +229 -0
- package/dist/resources.d.ts.map +1 -0
- package/dist/resources.js +132 -0
- package/dist/resources.js.map +1 -0
- package/dist/tool-runtime.d.ts +37 -0
- package/dist/tool-runtime.d.ts.map +1 -0
- package/dist/tool-runtime.js +127 -0
- package/dist/tool-runtime.js.map +1 -0
- package/dist/tools.d.ts +503 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +861 -0
- package/dist/tools.js.map +1 -0
- package/package.json +43 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-runtime.d.ts","sourceRoot":"","sources":["../src/tool-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AAGxF,eAAO,MAAM,SAAS,MAAM,CAAC;AAC7B,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC,eAAO,MAAM,sCAAsC,EAAE,eAKpD,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAQnB,iBAAiB,CAAC;AAElC,eAAO,MAAM,uBAAuB,EAGpB,iBAAiB,CAAC;AAKlC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAyCvD;AAqDD,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO;;;;;;;;EAU3C;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;EAWhC;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO;;;;;;;;;EAY/C"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { z } from "zod/v3";
|
|
2
|
+
export const MAX_ITEMS = 200;
|
|
3
|
+
export const CHARACTER_LIMIT = 25000;
|
|
4
|
+
export const READ_ONLY_MARKET_DATA_TOOL_ANNOTATIONS = {
|
|
5
|
+
readOnlyHint: true,
|
|
6
|
+
destructiveHint: false,
|
|
7
|
+
idempotentHint: true,
|
|
8
|
+
openWorldHint: true,
|
|
9
|
+
};
|
|
10
|
+
export const API_TOOL_OUTPUT_SCHEMA = {
|
|
11
|
+
result: z
|
|
12
|
+
.unknown()
|
|
13
|
+
.optional()
|
|
14
|
+
.describe("Sharpe API payload after filtering and response-size truncation."),
|
|
15
|
+
error: z.string().optional().describe("Error message when the call fails."),
|
|
16
|
+
};
|
|
17
|
+
export const TEXT_TOOL_OUTPUT_SCHEMA = {
|
|
18
|
+
report: z.string().optional().describe("Formatted markdown report."),
|
|
19
|
+
error: z.string().optional().describe("Error message when the call fails."),
|
|
20
|
+
};
|
|
21
|
+
const TRUNCATION_MESSAGE = "Response truncated to protect the agent context window. Narrow the result set with a cursor, offset, or filter parameters to retrieve the remaining items.";
|
|
22
|
+
export function truncateResponse(data) {
|
|
23
|
+
if (Array.isArray(data) && data.length > MAX_ITEMS) {
|
|
24
|
+
return capByCharacters({
|
|
25
|
+
items: data.slice(0, MAX_ITEMS),
|
|
26
|
+
truncated: true,
|
|
27
|
+
total: data.length,
|
|
28
|
+
showing: MAX_ITEMS,
|
|
29
|
+
}, ["items"]);
|
|
30
|
+
}
|
|
31
|
+
if (data && typeof data === "object" && !Array.isArray(data)) {
|
|
32
|
+
const obj = data;
|
|
33
|
+
const truncatedKeys = [];
|
|
34
|
+
let result;
|
|
35
|
+
// Truncate ANY own array-valued key longer than MAX_ITEMS so wrappers like
|
|
36
|
+
// { rows }, { coins }, { matrix } are covered, not just the legacy fixed keys.
|
|
37
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
38
|
+
if (Array.isArray(value) && value.length > MAX_ITEMS) {
|
|
39
|
+
if (!result) {
|
|
40
|
+
result = { ...obj };
|
|
41
|
+
}
|
|
42
|
+
result[key] = value.slice(0, MAX_ITEMS);
|
|
43
|
+
result.truncated = true;
|
|
44
|
+
result.total = value.length;
|
|
45
|
+
result.showing = MAX_ITEMS;
|
|
46
|
+
truncatedKeys.push(key);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
if (result) {
|
|
50
|
+
return capByCharacters(result, truncatedKeys);
|
|
51
|
+
}
|
|
52
|
+
return capByCharacters({ ...obj }, getArrayKeys(obj));
|
|
53
|
+
}
|
|
54
|
+
return data;
|
|
55
|
+
}
|
|
56
|
+
function getArrayKeys(obj) {
|
|
57
|
+
return Object.entries(obj)
|
|
58
|
+
.filter(([, value]) => Array.isArray(value))
|
|
59
|
+
.map(([key]) => key);
|
|
60
|
+
}
|
|
61
|
+
// After serialization, if the payload still exceeds CHARACTER_LIMIT, further
|
|
62
|
+
// shrink the largest array-valued keys until it fits (or arrays are exhausted)
|
|
63
|
+
// and attach an advisory truncation_message.
|
|
64
|
+
function capByCharacters(obj, arrayKeys) {
|
|
65
|
+
if (JSON.stringify(obj).length <= CHARACTER_LIMIT) {
|
|
66
|
+
return obj;
|
|
67
|
+
}
|
|
68
|
+
const result = { ...obj };
|
|
69
|
+
let changed = false;
|
|
70
|
+
// Repeatedly halve the longest array until under the limit or nothing left.
|
|
71
|
+
while (JSON.stringify(result).length > CHARACTER_LIMIT) {
|
|
72
|
+
const longestKey = arrayKeys
|
|
73
|
+
.filter((key) => Array.isArray(result[key]))
|
|
74
|
+
.sort((a, b) => result[b].length - result[a].length)[0];
|
|
75
|
+
if (longestKey === undefined) {
|
|
76
|
+
break;
|
|
77
|
+
}
|
|
78
|
+
const current = result[longestKey];
|
|
79
|
+
if (current.length <= 1) {
|
|
80
|
+
// The longest array is already minimal; cannot shrink further.
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
result[longestKey] = current.slice(0, Math.floor(current.length / 2));
|
|
84
|
+
result.truncated = true;
|
|
85
|
+
changed = true;
|
|
86
|
+
}
|
|
87
|
+
if (changed) {
|
|
88
|
+
result.truncation_message = TRUNCATION_MESSAGE;
|
|
89
|
+
}
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
export function toToolResult(result) {
|
|
93
|
+
return {
|
|
94
|
+
structuredContent: { result },
|
|
95
|
+
content: [
|
|
96
|
+
{
|
|
97
|
+
type: "text",
|
|
98
|
+
text: JSON.stringify(result, null, 2),
|
|
99
|
+
},
|
|
100
|
+
],
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
export function toTextToolResult(report, extra) {
|
|
104
|
+
return {
|
|
105
|
+
structuredContent: { report, ...extra },
|
|
106
|
+
content: [
|
|
107
|
+
{
|
|
108
|
+
type: "text",
|
|
109
|
+
text: report,
|
|
110
|
+
},
|
|
111
|
+
],
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
export function toToolErrorResult(error) {
|
|
115
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
116
|
+
return {
|
|
117
|
+
structuredContent: { error: message },
|
|
118
|
+
content: [
|
|
119
|
+
{
|
|
120
|
+
type: "text",
|
|
121
|
+
text: JSON.stringify({ error: message }),
|
|
122
|
+
},
|
|
123
|
+
],
|
|
124
|
+
isError: true,
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=tool-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-runtime.js","sourceRoot":"","sources":["../src/tool-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts
ADDED
|
@@ -0,0 +1,503 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const fundingRatesSchema: {
|
|
3
|
+
type: z.ZodDefault<z.ZodEnum<{
|
|
4
|
+
accumulated: "accumulated";
|
|
5
|
+
current: "current";
|
|
6
|
+
history: "history";
|
|
7
|
+
}>>;
|
|
8
|
+
coin: z.ZodOptional<z.ZodString>;
|
|
9
|
+
days: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
10
|
+
};
|
|
11
|
+
export declare const futuresDataSchema: {
|
|
12
|
+
chart: z.ZodEnum<{
|
|
13
|
+
[x: string]: string;
|
|
14
|
+
}>;
|
|
15
|
+
coin: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
16
|
+
timeframe: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
17
|
+
"3M": "3M";
|
|
18
|
+
"1W": "1W";
|
|
19
|
+
"2W": "2W";
|
|
20
|
+
"1M": "1M";
|
|
21
|
+
"6M": "6M";
|
|
22
|
+
"1Y": "1Y";
|
|
23
|
+
"3Y": "3Y";
|
|
24
|
+
}>>>;
|
|
25
|
+
exchanges: z.ZodOptional<z.ZodString>;
|
|
26
|
+
};
|
|
27
|
+
export declare const futuresCoinsSchema: {};
|
|
28
|
+
export declare const correlationMatrixSchema: {
|
|
29
|
+
period: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
30
|
+
"30d": "30d";
|
|
31
|
+
"90d": "90d";
|
|
32
|
+
"1y": "1y";
|
|
33
|
+
"3y": "3y";
|
|
34
|
+
}>>>;
|
|
35
|
+
ids: z.ZodOptional<z.ZodString>;
|
|
36
|
+
};
|
|
37
|
+
export declare const arbitrageSpotPerpSchema: {
|
|
38
|
+
exchange: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
39
|
+
direction: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
40
|
+
all: "all";
|
|
41
|
+
long: "long";
|
|
42
|
+
short: "short";
|
|
43
|
+
}>>>;
|
|
44
|
+
};
|
|
45
|
+
export declare const arbitrageCrossExchangeSchema: {
|
|
46
|
+
exchanges: z.ZodOptional<z.ZodString>;
|
|
47
|
+
};
|
|
48
|
+
export declare const arbitrageScannerSchema: {
|
|
49
|
+
coin: z.ZodOptional<z.ZodString>;
|
|
50
|
+
exchanges: z.ZodOptional<z.ZodString>;
|
|
51
|
+
minApr: z.ZodOptional<z.ZodNumber>;
|
|
52
|
+
minOiUsd: z.ZodOptional<z.ZodNumber>;
|
|
53
|
+
minDepthUsd: z.ZodOptional<z.ZodNumber>;
|
|
54
|
+
notional: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
55
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
56
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
57
|
+
};
|
|
58
|
+
export declare const cexSpotTransferScannerSchema: {
|
|
59
|
+
coin: z.ZodOptional<z.ZodString>;
|
|
60
|
+
exchanges: z.ZodOptional<z.ZodString>;
|
|
61
|
+
minApr: z.ZodOptional<z.ZodNumber>;
|
|
62
|
+
minDepthUsd: z.ZodOptional<z.ZodNumber>;
|
|
63
|
+
notional: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
64
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
65
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
66
|
+
};
|
|
67
|
+
export declare const heatmapSchema: {
|
|
68
|
+
mode: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
69
|
+
narratives: "narratives";
|
|
70
|
+
coins: "coins";
|
|
71
|
+
ecosystems: "ecosystems";
|
|
72
|
+
}>>>;
|
|
73
|
+
category: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
74
|
+
};
|
|
75
|
+
export declare const dexScreenerDataSchema: {
|
|
76
|
+
category: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
77
|
+
volume: "volume";
|
|
78
|
+
trending: "trending";
|
|
79
|
+
gainers: "gainers";
|
|
80
|
+
losers: "losers";
|
|
81
|
+
new_pairs: "new_pairs";
|
|
82
|
+
}>>>;
|
|
83
|
+
network: z.ZodOptional<z.ZodString>;
|
|
84
|
+
phrase: z.ZodOptional<z.ZodString>;
|
|
85
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
86
|
+
};
|
|
87
|
+
export declare const dexScreenerSecuritySchema: {
|
|
88
|
+
address: z.ZodString;
|
|
89
|
+
chainId: z.ZodNumber;
|
|
90
|
+
};
|
|
91
|
+
export declare const tokenScannerSchema: {
|
|
92
|
+
mode: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
93
|
+
hot: "hot";
|
|
94
|
+
"new-runners": "new-runners";
|
|
95
|
+
"alpha-drops": "alpha-drops";
|
|
96
|
+
"ai-top": "ai-top";
|
|
97
|
+
"top-new": "top-new";
|
|
98
|
+
}>>>;
|
|
99
|
+
chains: z.ZodOptional<z.ZodString>;
|
|
100
|
+
chain: z.ZodOptional<z.ZodString>;
|
|
101
|
+
profile: z.ZodOptional<z.ZodEnum<{
|
|
102
|
+
discovery: "discovery";
|
|
103
|
+
balanced: "balanced";
|
|
104
|
+
strict: "strict";
|
|
105
|
+
custom: "custom";
|
|
106
|
+
}>>;
|
|
107
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
108
|
+
minLiquidityUsd: z.ZodOptional<z.ZodNumber>;
|
|
109
|
+
minVolumeH24: z.ZodOptional<z.ZodNumber>;
|
|
110
|
+
minTxnsH1: z.ZodOptional<z.ZodNumber>;
|
|
111
|
+
maxAgeHours: z.ZodOptional<z.ZodNumber>;
|
|
112
|
+
};
|
|
113
|
+
export declare const rugCheckSecuritySchema: {
|
|
114
|
+
address: z.ZodString;
|
|
115
|
+
chainId: z.ZodNumber;
|
|
116
|
+
};
|
|
117
|
+
export declare const rugCheckTrendingSchema: {
|
|
118
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
119
|
+
};
|
|
120
|
+
export declare const stablecoinsSchema: {
|
|
121
|
+
type: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
122
|
+
overview: "overview";
|
|
123
|
+
detail: "detail";
|
|
124
|
+
yields: "yields";
|
|
125
|
+
}>>>;
|
|
126
|
+
slug: z.ZodOptional<z.ZodString>;
|
|
127
|
+
};
|
|
128
|
+
export declare const mindshareSchema: {
|
|
129
|
+
tokens: z.ZodOptional<z.ZodEnum<{
|
|
130
|
+
true: "true";
|
|
131
|
+
false: "false";
|
|
132
|
+
}>>;
|
|
133
|
+
narrative: z.ZodOptional<z.ZodString>;
|
|
134
|
+
historical: z.ZodOptional<z.ZodEnum<{
|
|
135
|
+
true: "true";
|
|
136
|
+
false: "false";
|
|
137
|
+
}>>;
|
|
138
|
+
timeframe: z.ZodOptional<z.ZodEnum<{
|
|
139
|
+
"3M": "3M";
|
|
140
|
+
"1W": "1W";
|
|
141
|
+
"1M": "1M";
|
|
142
|
+
"6M": "6M";
|
|
143
|
+
"1Y": "1Y";
|
|
144
|
+
"3Y": "3Y";
|
|
145
|
+
}>>;
|
|
146
|
+
window: z.ZodOptional<z.ZodEnum<{
|
|
147
|
+
"30d": "30d";
|
|
148
|
+
now: "now";
|
|
149
|
+
"24h": "24h";
|
|
150
|
+
"7d": "7d";
|
|
151
|
+
}>>;
|
|
152
|
+
};
|
|
153
|
+
export declare const webTrafficSchema: {
|
|
154
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
155
|
+
coin: "coin";
|
|
156
|
+
exchange: "exchange";
|
|
157
|
+
narrative: "narrative";
|
|
158
|
+
}>>;
|
|
159
|
+
mode: z.ZodOptional<z.ZodEnum<{
|
|
160
|
+
rankings: "rankings";
|
|
161
|
+
trends: "trends";
|
|
162
|
+
snapshots: "snapshots";
|
|
163
|
+
market: "market";
|
|
164
|
+
}>>;
|
|
165
|
+
tf: z.ZodOptional<z.ZodEnum<{
|
|
166
|
+
all: "all";
|
|
167
|
+
"30d": "30d";
|
|
168
|
+
"90d": "90d";
|
|
169
|
+
"1y": "1y";
|
|
170
|
+
"3y": "3y";
|
|
171
|
+
"7d": "7d";
|
|
172
|
+
}>>;
|
|
173
|
+
entities: z.ZodOptional<z.ZodString>;
|
|
174
|
+
sub: z.ZodOptional<z.ZodEnum<{
|
|
175
|
+
trending: "trending";
|
|
176
|
+
categories: "categories";
|
|
177
|
+
global: "global";
|
|
178
|
+
}>>;
|
|
179
|
+
};
|
|
180
|
+
export declare const katanaSchema: {};
|
|
181
|
+
export declare const narrativesSchema: {
|
|
182
|
+
narrative: z.ZodOptional<z.ZodString>;
|
|
183
|
+
correlation: z.ZodOptional<z.ZodString>;
|
|
184
|
+
timeframe: z.ZodOptional<z.ZodString>;
|
|
185
|
+
};
|
|
186
|
+
export declare const ecosystemsSchema: {
|
|
187
|
+
ecosystem: z.ZodOptional<z.ZodString>;
|
|
188
|
+
excludeNative: z.ZodOptional<z.ZodString>;
|
|
189
|
+
correlation: z.ZodOptional<z.ZodString>;
|
|
190
|
+
timeframe: z.ZodOptional<z.ZodString>;
|
|
191
|
+
};
|
|
192
|
+
export declare const memecoinsSchema: {
|
|
193
|
+
narrative: z.ZodOptional<z.ZodString>;
|
|
194
|
+
historical: z.ZodOptional<z.ZodEnum<{
|
|
195
|
+
"30d": "30d";
|
|
196
|
+
"1y": "1y";
|
|
197
|
+
"24h": "24h";
|
|
198
|
+
"7d": "7d";
|
|
199
|
+
}>>;
|
|
200
|
+
coinHistory: z.ZodOptional<z.ZodEnum<{
|
|
201
|
+
"1y": "1y";
|
|
202
|
+
"24h": "24h";
|
|
203
|
+
"7d": "7d";
|
|
204
|
+
"1m": "1m";
|
|
205
|
+
}>>;
|
|
206
|
+
};
|
|
207
|
+
export declare const memecoinLaunchesSchema: {
|
|
208
|
+
chains: z.ZodOptional<z.ZodString>;
|
|
209
|
+
days: z.ZodOptional<z.ZodNumber>;
|
|
210
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
211
|
+
profile: z.ZodOptional<z.ZodEnum<{
|
|
212
|
+
discovery: "discovery";
|
|
213
|
+
balanced: "balanced";
|
|
214
|
+
strict: "strict";
|
|
215
|
+
}>>;
|
|
216
|
+
};
|
|
217
|
+
export declare const newsSchema: {
|
|
218
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
219
|
+
category: z.ZodOptional<z.ZodString>;
|
|
220
|
+
coin: z.ZodOptional<z.ZodString>;
|
|
221
|
+
since: z.ZodOptional<z.ZodString>;
|
|
222
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
223
|
+
};
|
|
224
|
+
export declare const curatedNewsSchema: {
|
|
225
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
226
|
+
category: z.ZodOptional<z.ZodEnum<{
|
|
227
|
+
all: "all";
|
|
228
|
+
crypto: "crypto";
|
|
229
|
+
ai: "ai";
|
|
230
|
+
markets: "markets";
|
|
231
|
+
geopolitics: "geopolitics";
|
|
232
|
+
}>>;
|
|
233
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
234
|
+
};
|
|
235
|
+
export declare const marketOverviewSchema: {};
|
|
236
|
+
export declare const pricePredictionSchema: {
|
|
237
|
+
coin: z.ZodOptional<z.ZodString>;
|
|
238
|
+
};
|
|
239
|
+
export declare const searchMarketCapSchema: {
|
|
240
|
+
q: z.ZodString;
|
|
241
|
+
};
|
|
242
|
+
export declare const gemFinderSchema: {
|
|
243
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
244
|
+
};
|
|
245
|
+
export declare const derivativesOverviewSchema: {};
|
|
246
|
+
export declare const apiCoverageSchema: {};
|
|
247
|
+
export declare const listingsDataSchema: {
|
|
248
|
+
narrative: z.ZodOptional<z.ZodString>;
|
|
249
|
+
exchange: z.ZodOptional<z.ZodEnum<{
|
|
250
|
+
hyperliquid: "hyperliquid";
|
|
251
|
+
binance: "binance";
|
|
252
|
+
okx: "okx";
|
|
253
|
+
bybit: "bybit";
|
|
254
|
+
gateio: "gateio";
|
|
255
|
+
mexc: "mexc";
|
|
256
|
+
bitget: "bitget";
|
|
257
|
+
kucoin: "kucoin";
|
|
258
|
+
bingx: "bingx";
|
|
259
|
+
bitmart: "bitmart";
|
|
260
|
+
deepcoin: "deepcoin";
|
|
261
|
+
coinbase: "coinbase";
|
|
262
|
+
kraken: "kraken";
|
|
263
|
+
crypto_com: "crypto_com";
|
|
264
|
+
upbit: "upbit";
|
|
265
|
+
bithumb: "bithumb";
|
|
266
|
+
htx: "htx";
|
|
267
|
+
bitfinex: "bitfinex";
|
|
268
|
+
bitstamp: "bitstamp";
|
|
269
|
+
gemini: "gemini";
|
|
270
|
+
bitmex: "bitmex";
|
|
271
|
+
deribit: "deribit";
|
|
272
|
+
phemex: "phemex";
|
|
273
|
+
lbank: "lbank";
|
|
274
|
+
bitrue: "bitrue";
|
|
275
|
+
coinex: "coinex";
|
|
276
|
+
backpack: "backpack";
|
|
277
|
+
hashkey: "hashkey";
|
|
278
|
+
whitebit: "whitebit";
|
|
279
|
+
toobit: "toobit";
|
|
280
|
+
aster: "aster";
|
|
281
|
+
dydx: "dydx";
|
|
282
|
+
aevo: "aevo";
|
|
283
|
+
}>>;
|
|
284
|
+
};
|
|
285
|
+
export declare const listingsRecentSchema: {
|
|
286
|
+
narrative: z.ZodOptional<z.ZodString>;
|
|
287
|
+
exchange: z.ZodOptional<z.ZodEnum<{
|
|
288
|
+
hyperliquid: "hyperliquid";
|
|
289
|
+
binance: "binance";
|
|
290
|
+
okx: "okx";
|
|
291
|
+
bybit: "bybit";
|
|
292
|
+
gateio: "gateio";
|
|
293
|
+
mexc: "mexc";
|
|
294
|
+
bitget: "bitget";
|
|
295
|
+
kucoin: "kucoin";
|
|
296
|
+
bingx: "bingx";
|
|
297
|
+
bitmart: "bitmart";
|
|
298
|
+
deepcoin: "deepcoin";
|
|
299
|
+
coinbase: "coinbase";
|
|
300
|
+
kraken: "kraken";
|
|
301
|
+
crypto_com: "crypto_com";
|
|
302
|
+
upbit: "upbit";
|
|
303
|
+
bithumb: "bithumb";
|
|
304
|
+
htx: "htx";
|
|
305
|
+
bitfinex: "bitfinex";
|
|
306
|
+
bitstamp: "bitstamp";
|
|
307
|
+
gemini: "gemini";
|
|
308
|
+
bitmex: "bitmex";
|
|
309
|
+
deribit: "deribit";
|
|
310
|
+
phemex: "phemex";
|
|
311
|
+
lbank: "lbank";
|
|
312
|
+
bitrue: "bitrue";
|
|
313
|
+
coinex: "coinex";
|
|
314
|
+
backpack: "backpack";
|
|
315
|
+
hashkey: "hashkey";
|
|
316
|
+
whitebit: "whitebit";
|
|
317
|
+
toobit: "toobit";
|
|
318
|
+
aster: "aster";
|
|
319
|
+
dydx: "dydx";
|
|
320
|
+
aevo: "aevo";
|
|
321
|
+
}>>;
|
|
322
|
+
venue_type: z.ZodOptional<z.ZodEnum<{
|
|
323
|
+
cex: "cex";
|
|
324
|
+
perp_dex: "perp_dex";
|
|
325
|
+
dex: "dex";
|
|
326
|
+
}>>;
|
|
327
|
+
market_type: z.ZodOptional<z.ZodEnum<{
|
|
328
|
+
spot: "spot";
|
|
329
|
+
perp: "perp";
|
|
330
|
+
futures: "futures";
|
|
331
|
+
options: "options";
|
|
332
|
+
margin: "margin";
|
|
333
|
+
}>>;
|
|
334
|
+
event_type: z.ZodOptional<z.ZodEnum<{
|
|
335
|
+
listing: "listing";
|
|
336
|
+
delisting: "delisting";
|
|
337
|
+
suspension: "suspension";
|
|
338
|
+
resumption: "resumption";
|
|
339
|
+
prelaunch: "prelaunch";
|
|
340
|
+
}>>;
|
|
341
|
+
asset_class: z.ZodOptional<z.ZodEnum<{
|
|
342
|
+
token: "token";
|
|
343
|
+
spot_pair: "spot_pair";
|
|
344
|
+
perp_contract: "perp_contract";
|
|
345
|
+
futures_contract: "futures_contract";
|
|
346
|
+
options_contract: "options_contract";
|
|
347
|
+
}>>;
|
|
348
|
+
status: z.ZodOptional<z.ZodEnum<{
|
|
349
|
+
announced: "announced";
|
|
350
|
+
scheduled: "scheduled";
|
|
351
|
+
live: "live";
|
|
352
|
+
completed: "completed";
|
|
353
|
+
cancelled: "cancelled";
|
|
354
|
+
needs_review: "needs_review";
|
|
355
|
+
}>>;
|
|
356
|
+
confidence: z.ZodOptional<z.ZodEnum<{
|
|
357
|
+
manual: "manual";
|
|
358
|
+
authoritative: "authoritative";
|
|
359
|
+
high: "high";
|
|
360
|
+
medium: "medium";
|
|
361
|
+
low: "low";
|
|
362
|
+
proxy: "proxy";
|
|
363
|
+
}>>;
|
|
364
|
+
from: z.ZodOptional<z.ZodString>;
|
|
365
|
+
to: z.ZodOptional<z.ZodString>;
|
|
366
|
+
days: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
367
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
368
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
369
|
+
};
|
|
370
|
+
export declare const listingsEventsSchema: {
|
|
371
|
+
exchange: z.ZodOptional<z.ZodEnum<{
|
|
372
|
+
hyperliquid: "hyperliquid";
|
|
373
|
+
binance: "binance";
|
|
374
|
+
okx: "okx";
|
|
375
|
+
bybit: "bybit";
|
|
376
|
+
gateio: "gateio";
|
|
377
|
+
mexc: "mexc";
|
|
378
|
+
bitget: "bitget";
|
|
379
|
+
kucoin: "kucoin";
|
|
380
|
+
bingx: "bingx";
|
|
381
|
+
bitmart: "bitmart";
|
|
382
|
+
deepcoin: "deepcoin";
|
|
383
|
+
coinbase: "coinbase";
|
|
384
|
+
kraken: "kraken";
|
|
385
|
+
crypto_com: "crypto_com";
|
|
386
|
+
upbit: "upbit";
|
|
387
|
+
bithumb: "bithumb";
|
|
388
|
+
htx: "htx";
|
|
389
|
+
bitfinex: "bitfinex";
|
|
390
|
+
bitstamp: "bitstamp";
|
|
391
|
+
gemini: "gemini";
|
|
392
|
+
bitmex: "bitmex";
|
|
393
|
+
deribit: "deribit";
|
|
394
|
+
phemex: "phemex";
|
|
395
|
+
lbank: "lbank";
|
|
396
|
+
bitrue: "bitrue";
|
|
397
|
+
coinex: "coinex";
|
|
398
|
+
backpack: "backpack";
|
|
399
|
+
hashkey: "hashkey";
|
|
400
|
+
whitebit: "whitebit";
|
|
401
|
+
toobit: "toobit";
|
|
402
|
+
aster: "aster";
|
|
403
|
+
dydx: "dydx";
|
|
404
|
+
aevo: "aevo";
|
|
405
|
+
}>>;
|
|
406
|
+
venue_type: z.ZodOptional<z.ZodEnum<{
|
|
407
|
+
cex: "cex";
|
|
408
|
+
perp_dex: "perp_dex";
|
|
409
|
+
dex: "dex";
|
|
410
|
+
}>>;
|
|
411
|
+
market_type: z.ZodOptional<z.ZodEnum<{
|
|
412
|
+
spot: "spot";
|
|
413
|
+
perp: "perp";
|
|
414
|
+
futures: "futures";
|
|
415
|
+
options: "options";
|
|
416
|
+
margin: "margin";
|
|
417
|
+
}>>;
|
|
418
|
+
event_type: z.ZodOptional<z.ZodEnum<{
|
|
419
|
+
listing: "listing";
|
|
420
|
+
delisting: "delisting";
|
|
421
|
+
suspension: "suspension";
|
|
422
|
+
resumption: "resumption";
|
|
423
|
+
prelaunch: "prelaunch";
|
|
424
|
+
}>>;
|
|
425
|
+
asset_class: z.ZodOptional<z.ZodEnum<{
|
|
426
|
+
token: "token";
|
|
427
|
+
spot_pair: "spot_pair";
|
|
428
|
+
perp_contract: "perp_contract";
|
|
429
|
+
futures_contract: "futures_contract";
|
|
430
|
+
options_contract: "options_contract";
|
|
431
|
+
}>>;
|
|
432
|
+
status: z.ZodOptional<z.ZodEnum<{
|
|
433
|
+
announced: "announced";
|
|
434
|
+
scheduled: "scheduled";
|
|
435
|
+
live: "live";
|
|
436
|
+
completed: "completed";
|
|
437
|
+
cancelled: "cancelled";
|
|
438
|
+
needs_review: "needs_review";
|
|
439
|
+
}>>;
|
|
440
|
+
narrative: z.ZodOptional<z.ZodString>;
|
|
441
|
+
confidence: z.ZodOptional<z.ZodEnum<{
|
|
442
|
+
manual: "manual";
|
|
443
|
+
authoritative: "authoritative";
|
|
444
|
+
high: "high";
|
|
445
|
+
medium: "medium";
|
|
446
|
+
low: "low";
|
|
447
|
+
proxy: "proxy";
|
|
448
|
+
}>>;
|
|
449
|
+
from: z.ZodOptional<z.ZodString>;
|
|
450
|
+
to: z.ZodOptional<z.ZodString>;
|
|
451
|
+
days: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
452
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
453
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
454
|
+
};
|
|
455
|
+
export declare const listingsExchangesSchema: {
|
|
456
|
+
venue_type: z.ZodOptional<z.ZodEnum<{
|
|
457
|
+
cex: "cex";
|
|
458
|
+
perp_dex: "perp_dex";
|
|
459
|
+
dex: "dex";
|
|
460
|
+
}>>;
|
|
461
|
+
market_type: z.ZodOptional<z.ZodEnum<{
|
|
462
|
+
spot: "spot";
|
|
463
|
+
perp: "perp";
|
|
464
|
+
futures: "futures";
|
|
465
|
+
options: "options";
|
|
466
|
+
margin: "margin";
|
|
467
|
+
}>>;
|
|
468
|
+
enabled: z.ZodOptional<z.ZodEnum<{
|
|
469
|
+
true: "true";
|
|
470
|
+
false: "false";
|
|
471
|
+
}>>;
|
|
472
|
+
};
|
|
473
|
+
export declare const signalScoreSchema: {
|
|
474
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
475
|
+
min_score: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
476
|
+
};
|
|
477
|
+
export declare const pumpDumpSchema: {
|
|
478
|
+
limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
479
|
+
min_score: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
480
|
+
phase: z.ZodOptional<z.ZodEnum<{
|
|
481
|
+
setup: "setup";
|
|
482
|
+
markup: "markup";
|
|
483
|
+
distribution: "distribution";
|
|
484
|
+
dump: "dump";
|
|
485
|
+
dumping: "dumping";
|
|
486
|
+
}>>;
|
|
487
|
+
};
|
|
488
|
+
export interface ToolDef {
|
|
489
|
+
name: string;
|
|
490
|
+
description: string;
|
|
491
|
+
schema: Record<string, z.ZodType>;
|
|
492
|
+
apiPath: string;
|
|
493
|
+
fallbackPath: string;
|
|
494
|
+
/**
|
|
495
|
+
* Runs after the HTTP response is unwrapped but before MAX_ITEMS truncation.
|
|
496
|
+
* Use this when the backend ignores a filter param (e.g. funding/rates
|
|
497
|
+
* ignores `coin` in current/accumulated mode) -- filtering client-side here
|
|
498
|
+
* ensures the target rows survive truncation instead of being dropped.
|
|
499
|
+
*/
|
|
500
|
+
postProcess?: (data: unknown, args: Record<string, unknown>) => unknown;
|
|
501
|
+
}
|
|
502
|
+
export declare const TOOL_DEFS: ToolDef[];
|
|
503
|
+
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,kBAAkB;;;;;;;;CAsB9B,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;CAsB7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,IAAK,CAAC;AAErC,eAAO,MAAM,uBAAuB;;;;;;;;CAYnC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;CAanC,CAAC;AAEF,eAAO,MAAM,4BAA4B;;CAOxC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;CAsClC,CAAC;AAIF,eAAO,MAAM,4BAA4B;;;;;;;;CAQxC,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;;;CAWzB,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;CASjC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;CAGrC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;CAoB9B,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;CAGlC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;CAElC,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;CAO7B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;CAkB3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;CAkB5B,CAAC;AAEF,eAAO,MAAM,YAAY,IAAK,CAAC;AAE/B,eAAO,MAAM,gBAAgB;;;;CAc5B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;CAoB5B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;CAe3B,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;CAalC,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;CAkCtB,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;CAkB7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,IAAK,CAAC;AAEvC,eAAO,MAAM,qBAAqB;;CAKjC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAMjC,CAAC;AAEF,eAAO,MAAM,eAAe;;CAQ3B,CAAC;AAEF,eAAO,MAAM,yBAAyB,IAAK,CAAC;AAE5C,eAAO,MAAM,iBAAiB,IAAK,CAAC;AAsCpC,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW9B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoEhC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DhC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;CAanC,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;CAgB7B,CAAC;AAMF,eAAO,MAAM,cAAc;;;;;;;;;;CAoB1B,CAAC;AAIF,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;CACzE;AAED,eAAO,MAAM,SAAS,EAAE,OAAO,EAsU9B,CAAC"}
|