@cryptoquant_official/mcp 0.0.5 → 0.0.6-alpha2
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/LICENSE +21 -0
- package/README.md +329 -59
- package/dist/ai-sdk/anthropic.d.ts +125 -0
- package/dist/ai-sdk/anthropic.d.ts.map +1 -0
- package/dist/ai-sdk/anthropic.js +278 -0
- package/dist/ai-sdk/anthropic.js.map +1 -0
- package/dist/ai-sdk/execute.d.ts +35 -0
- package/dist/ai-sdk/execute.d.ts.map +1 -0
- package/dist/ai-sdk/execute.js +531 -0
- package/dist/ai-sdk/execute.js.map +1 -0
- package/dist/ai-sdk/index.d.ts +51 -0
- package/dist/ai-sdk/index.d.ts.map +1 -0
- package/dist/ai-sdk/index.js +53 -0
- package/dist/ai-sdk/index.js.map +1 -0
- package/dist/ai-sdk/prompts.d.ts +34 -0
- package/dist/ai-sdk/prompts.d.ts.map +1 -0
- package/dist/ai-sdk/prompts.js +74 -0
- package/dist/ai-sdk/prompts.js.map +1 -0
- package/dist/ai-sdk/schemas.d.ts +66 -0
- package/dist/ai-sdk/schemas.d.ts.map +1 -0
- package/dist/ai-sdk/schemas.js +136 -0
- package/dist/ai-sdk/schemas.js.map +1 -0
- package/dist/ai-sdk/tools.d.ts +165 -0
- package/dist/ai-sdk/tools.d.ts.map +1 -0
- package/dist/ai-sdk/tools.js +152 -0
- package/dist/ai-sdk/tools.js.map +1 -0
- package/dist/ai-sdk/types.d.ts +149 -0
- package/dist/ai-sdk/types.d.ts.map +1 -0
- package/dist/ai-sdk/types.js +5 -0
- package/dist/ai-sdk/types.js.map +1 -0
- package/dist/core/auth/storage.d.ts.map +1 -0
- package/dist/core/auth/storage.js.map +1 -0
- package/dist/core/cache/storage.d.ts +110 -0
- package/dist/core/cache/storage.d.ts.map +1 -0
- package/dist/core/cache/storage.js +356 -0
- package/dist/core/cache/storage.js.map +1 -0
- package/dist/core/cache/summary.d.ts.map +1 -0
- package/dist/core/cache/summary.js.map +1 -0
- package/dist/{cache → core/cache}/types.d.ts +25 -0
- package/dist/{cache → core/cache}/types.d.ts.map +1 -1
- package/dist/core/cache/types.js.map +1 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/discovery.d.ts.map +1 -0
- package/dist/core/discovery.js.map +1 -0
- package/dist/core/index.d.ts +16 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +19 -0
- package/dist/core/index.js.map +1 -0
- package/dist/{permissions.d.ts → core/permissions.d.ts} +1 -1
- package/dist/core/permissions.d.ts.map +1 -0
- package/dist/{permissions.js → core/permissions.js} +6 -6
- package/dist/core/permissions.js.map +1 -0
- package/dist/core/plan-limits.d.ts.map +1 -0
- package/dist/core/plan-limits.js.map +1 -0
- package/dist/core/utils.d.ts.map +1 -0
- package/dist/{utils.js → core/utils.js} +2 -2
- package/dist/core/utils.js.map +1 -0
- package/dist/http/chat-proxy.d.ts +32 -0
- package/dist/http/chat-proxy.d.ts.map +1 -0
- package/dist/http/chat-proxy.js +310 -0
- package/dist/http/chat-proxy.js.map +1 -0
- package/dist/http/index.d.ts +12 -0
- package/dist/http/index.d.ts.map +1 -0
- package/dist/http/index.js +30 -0
- package/dist/http/index.js.map +1 -0
- package/dist/http/server.d.ts +20 -0
- package/dist/http/server.d.ts.map +1 -0
- package/dist/http/server.js +231 -0
- package/dist/http/server.js.map +1 -0
- package/dist/shared/index.d.ts +164 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +79 -0
- package/dist/shared/index.js.map +1 -0
- package/dist/shared/intent-routing.generated.d.ts +40 -0
- package/dist/shared/intent-routing.generated.d.ts.map +1 -0
- package/dist/shared/intent-routing.generated.js +518 -0
- package/dist/shared/intent-routing.generated.js.map +1 -0
- package/dist/shared/metrics-data.generated.d.ts +176 -0
- package/dist/shared/metrics-data.generated.d.ts.map +1 -0
- package/dist/shared/metrics-data.generated.js +3077 -0
- package/dist/shared/metrics-data.generated.js.map +1 -0
- package/dist/shared/skill-prompts.generated.d.ts +38 -0
- package/dist/shared/skill-prompts.generated.d.ts.map +1 -0
- package/dist/shared/skill-prompts.generated.js +89 -0
- package/dist/shared/skill-prompts.generated.js.map +1 -0
- package/dist/shared/workflows.generated.d.ts +48 -0
- package/dist/shared/workflows.generated.d.ts.map +1 -0
- package/dist/shared/workflows.generated.js +352 -0
- package/dist/shared/workflows.generated.js.map +1 -0
- package/dist/stdio/index.d.ts +10 -0
- package/dist/stdio/index.d.ts.map +1 -0
- package/dist/stdio/index.js +30 -0
- package/dist/stdio/index.js.map +1 -0
- package/dist/stdio/tools/auth.d.ts.map +1 -0
- package/dist/{tools → stdio/tools}/auth.js +10 -8
- package/dist/stdio/tools/auth.js.map +1 -0
- package/dist/stdio/tools/core.d.ts.map +1 -0
- package/dist/{tools → stdio/tools}/core.js +32 -145
- package/dist/stdio/tools/core.js.map +1 -0
- package/package.json +52 -13
- package/dist/auth/storage.d.ts.map +0 -1
- package/dist/auth/storage.js.map +0 -1
- package/dist/cache/storage.d.ts +0 -47
- package/dist/cache/storage.d.ts.map +0 -1
- package/dist/cache/storage.js +0 -140
- package/dist/cache/storage.js.map +0 -1
- package/dist/cache/summary.d.ts.map +0 -1
- package/dist/cache/summary.js.map +0 -1
- package/dist/cache/types.js.map +0 -1
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js.map +0 -1
- package/dist/discovery.d.ts.map +0 -1
- package/dist/discovery.js.map +0 -1
- package/dist/index.d.ts +0 -18
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -47
- package/dist/index.js.map +0 -1
- package/dist/permissions.d.ts.map +0 -1
- package/dist/permissions.js.map +0 -1
- package/dist/plan-limits.d.ts.map +0 -1
- package/dist/plan-limits.js.map +0 -1
- package/dist/tools/auth.d.ts.map +0 -1
- package/dist/tools/auth.js.map +0 -1
- package/dist/tools/core.d.ts.map +0 -1
- package/dist/tools/core.js.map +0 -1
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js.map +0 -1
- /package/dist/{auth → core/auth}/storage.d.ts +0 -0
- /package/dist/{auth → core/auth}/storage.js +0 -0
- /package/dist/{cache → core/cache}/summary.d.ts +0 -0
- /package/dist/{cache → core/cache}/summary.js +0 -0
- /package/dist/{cache → core/cache}/types.js +0 -0
- /package/dist/{config.d.ts → core/config.d.ts} +0 -0
- /package/dist/{config.js → core/config.js} +0 -0
- /package/dist/{discovery.d.ts → core/discovery.d.ts} +0 -0
- /package/dist/{discovery.js → core/discovery.js} +0 -0
- /package/dist/{plan-limits.d.ts → core/plan-limits.d.ts} +0 -0
- /package/dist/{plan-limits.js → core/plan-limits.js} +0 -0
- /package/dist/{utils.d.ts → core/utils.d.ts} +0 -0
- /package/dist/{tools → stdio/tools}/auth.d.ts +0 -0
- /package/dist/{tools → stdio/tools}/core.d.ts +0 -0
|
@@ -0,0 +1,518 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY
|
|
3
|
+
*
|
|
4
|
+
* Generated by: npm run sync-skills
|
|
5
|
+
* Source: skills/crypto/INTENT_MAP.md
|
|
6
|
+
*/
|
|
7
|
+
// ============================================================================
|
|
8
|
+
// Intent Routing Data (21 intents)
|
|
9
|
+
// ============================================================================
|
|
10
|
+
export const INTENT_ROUTING = {
|
|
11
|
+
"VALUATION": {
|
|
12
|
+
"id": "VALUATION",
|
|
13
|
+
"triggers": [
|
|
14
|
+
"overvalued",
|
|
15
|
+
"undervalued",
|
|
16
|
+
"fair value",
|
|
17
|
+
"price outlook",
|
|
18
|
+
"worth buying",
|
|
19
|
+
"bubble",
|
|
20
|
+
"cheap",
|
|
21
|
+
"expensive",
|
|
22
|
+
"market cap",
|
|
23
|
+
"realized cap"
|
|
24
|
+
],
|
|
25
|
+
"primaryMetric": "mvrv",
|
|
26
|
+
"endpoint": "/v1/btc/market-indicator/mvrv",
|
|
27
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
28
|
+
"additionalMetrics": [
|
|
29
|
+
{
|
|
30
|
+
"metric": "nupl",
|
|
31
|
+
"endpoint": "/v1/btc/network-indicator/nupl",
|
|
32
|
+
"plan": "Professional+",
|
|
33
|
+
"useCase": "Net unrealized profit/loss"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"metric": "nvt",
|
|
37
|
+
"endpoint": "/v1/btc/network-indicator/nvt",
|
|
38
|
+
"plan": "Professional+",
|
|
39
|
+
"useCase": "Network value vs utility"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"metric": "realized-price",
|
|
43
|
+
"endpoint": "/v1/btc/market-indicator/realized-price",
|
|
44
|
+
"plan": "Professional+",
|
|
45
|
+
"useCase": "Average cost basis"
|
|
46
|
+
}
|
|
47
|
+
],
|
|
48
|
+
"definition": "Market Value to Realized Value - compares market cap to average acquisition cost."
|
|
49
|
+
},
|
|
50
|
+
"NETWORK_VALUATION": {
|
|
51
|
+
"id": "NETWORK_VALUATION",
|
|
52
|
+
"triggers": [
|
|
53
|
+
"nvt",
|
|
54
|
+
"network value",
|
|
55
|
+
"p/e ratio",
|
|
56
|
+
"utility",
|
|
57
|
+
"transaction value",
|
|
58
|
+
"on-chain activity"
|
|
59
|
+
],
|
|
60
|
+
"primaryMetric": "nvt",
|
|
61
|
+
"endpoint": "/v1/btc/network-indicator/nvt",
|
|
62
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
63
|
+
"additionalMetrics": [],
|
|
64
|
+
"definition": "Market cap / Transaction volume. Like a P/E ratio for Bitcoin.",
|
|
65
|
+
"interpretation": ""
|
|
66
|
+
},
|
|
67
|
+
"PROFIT_BEHAVIOR": {
|
|
68
|
+
"id": "PROFIT_BEHAVIOR",
|
|
69
|
+
"triggers": [
|
|
70
|
+
"profit taking",
|
|
71
|
+
"selling at loss",
|
|
72
|
+
"realized profit",
|
|
73
|
+
"capitulation",
|
|
74
|
+
"sopr",
|
|
75
|
+
"breakeven"
|
|
76
|
+
],
|
|
77
|
+
"primaryMetric": "sopr",
|
|
78
|
+
"endpoint": "/v1/btc/market-indicator/sopr",
|
|
79
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
80
|
+
"additionalMetrics": [
|
|
81
|
+
{
|
|
82
|
+
"metric": "asopr",
|
|
83
|
+
"endpoint": "/v1/btc/market-indicator/asopr",
|
|
84
|
+
"plan": "Professional+",
|
|
85
|
+
"useCase": "Adjusted (excludes <1hr)"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"metric": "sth-sopr",
|
|
89
|
+
"endpoint": "/v1/btc/market-indicator/sth-sopr",
|
|
90
|
+
"plan": "Professional+",
|
|
91
|
+
"useCase": "Short-term holders (<155d)"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"metric": "lth-sopr",
|
|
95
|
+
"endpoint": "/v1/btc/market-indicator/lth-sopr",
|
|
96
|
+
"plan": "Professional+",
|
|
97
|
+
"useCase": "Long-term holders (>155d)"
|
|
98
|
+
}
|
|
99
|
+
],
|
|
100
|
+
"definition": "Spent Output Profit Ratio - evaluates if coins moved are in profit or loss.",
|
|
101
|
+
"interpretation": ""
|
|
102
|
+
},
|
|
103
|
+
"EXCHANGE_FLOWS": {
|
|
104
|
+
"id": "EXCHANGE_FLOWS",
|
|
105
|
+
"triggers": [
|
|
106
|
+
"exchange inflow",
|
|
107
|
+
"outflow",
|
|
108
|
+
"accumulation",
|
|
109
|
+
"selling pressure",
|
|
110
|
+
"exchange reserve",
|
|
111
|
+
"deposits",
|
|
112
|
+
"withdrawals"
|
|
113
|
+
],
|
|
114
|
+
"primaryMetric": "netflow",
|
|
115
|
+
"endpoint": "/v1/btc/exchange-flows/netflow",
|
|
116
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
117
|
+
"additionalMetrics": [
|
|
118
|
+
{
|
|
119
|
+
"metric": "reserve",
|
|
120
|
+
"endpoint": "/v1/btc/exchange-flows/reserve",
|
|
121
|
+
"plan": "Professional+",
|
|
122
|
+
"useCase": "Total coins on exchanges"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"metric": "inflow",
|
|
126
|
+
"endpoint": "/v1/btc/exchange-flows/inflow",
|
|
127
|
+
"plan": "Professional+",
|
|
128
|
+
"useCase": "Deposits to exchanges"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"metric": "outflow",
|
|
132
|
+
"endpoint": "/v1/btc/exchange-flows/outflow",
|
|
133
|
+
"plan": "Professional+",
|
|
134
|
+
"useCase": "Withdrawals from exchanges"
|
|
135
|
+
}
|
|
136
|
+
],
|
|
137
|
+
"definition": "Exchange Inflow - Outflow. Measures net coin movement.",
|
|
138
|
+
"interpretation": ""
|
|
139
|
+
},
|
|
140
|
+
"EXCHANGE_RESERVE": {
|
|
141
|
+
"id": "EXCHANGE_RESERVE",
|
|
142
|
+
"triggers": [
|
|
143
|
+
"exchange reserve",
|
|
144
|
+
"coins on exchange",
|
|
145
|
+
"supply on exchange",
|
|
146
|
+
"exchange balance"
|
|
147
|
+
],
|
|
148
|
+
"primaryMetric": "reserve",
|
|
149
|
+
"endpoint": "/v1/btc/exchange-flows/reserve",
|
|
150
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
151
|
+
"additionalMetrics": [],
|
|
152
|
+
"definition": "Total amount of coins held in exchange addresses.",
|
|
153
|
+
"interpretation": ""
|
|
154
|
+
},
|
|
155
|
+
"WHALE_ACTIVITY": {
|
|
156
|
+
"id": "WHALE_ACTIVITY",
|
|
157
|
+
"triggers": [
|
|
158
|
+
"whale",
|
|
159
|
+
"large holder",
|
|
160
|
+
"institutional",
|
|
161
|
+
"smart money",
|
|
162
|
+
"big players",
|
|
163
|
+
"top 10 transactions"
|
|
164
|
+
],
|
|
165
|
+
"primaryMetric": "exchange-whale-ratio",
|
|
166
|
+
"endpoint": "/v1/btc/flow-indicator/exchange-whale-ratio",
|
|
167
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
168
|
+
"additionalMetrics": [],
|
|
169
|
+
"definition": "Top 10 transaction volume / Total inflow. Measures large player dominance.",
|
|
170
|
+
"interpretation": ""
|
|
171
|
+
},
|
|
172
|
+
"FUND_FLOW": {
|
|
173
|
+
"id": "FUND_FLOW",
|
|
174
|
+
"triggers": [
|
|
175
|
+
"fund flow ratio",
|
|
176
|
+
"exchange vs network",
|
|
177
|
+
"trading activity ratio"
|
|
178
|
+
],
|
|
179
|
+
"primaryMetric": "fund-flow-ratio",
|
|
180
|
+
"endpoint": "/v1/btc/flow-indicator/fund-flow-ratio",
|
|
181
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
182
|
+
"additionalMetrics": [],
|
|
183
|
+
"definition": "Exchange flow / Total network transfer. Contextualizes exchange activity.",
|
|
184
|
+
"interpretation": ""
|
|
185
|
+
},
|
|
186
|
+
"LEVERAGE_SENTIMENT": {
|
|
187
|
+
"id": "LEVERAGE_SENTIMENT",
|
|
188
|
+
"triggers": [
|
|
189
|
+
"funding rate",
|
|
190
|
+
"leverage",
|
|
191
|
+
"derivatives",
|
|
192
|
+
"futures",
|
|
193
|
+
"perpetual",
|
|
194
|
+
"long",
|
|
195
|
+
"short",
|
|
196
|
+
"sentiment"
|
|
197
|
+
],
|
|
198
|
+
"primaryMetric": "funding-rates",
|
|
199
|
+
"endpoint": "/v1/btc/market-data/funding-rates",
|
|
200
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
201
|
+
"additionalMetrics": [
|
|
202
|
+
{
|
|
203
|
+
"metric": "open-interest",
|
|
204
|
+
"endpoint": "/v1/btc/market-data/open-interest",
|
|
205
|
+
"plan": "Professional+",
|
|
206
|
+
"useCase": "Total positions"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"metric": "liquidations",
|
|
210
|
+
"endpoint": "/v1/btc/market-data/liquidations",
|
|
211
|
+
"plan": "Professional+",
|
|
212
|
+
"useCase": "Liquidation events"
|
|
213
|
+
}
|
|
214
|
+
],
|
|
215
|
+
"definition": "Periodic payments to keep perpetual futures near index price.",
|
|
216
|
+
"interpretation": ""
|
|
217
|
+
},
|
|
218
|
+
"OPEN_INTEREST": {
|
|
219
|
+
"id": "OPEN_INTEREST",
|
|
220
|
+
"triggers": [
|
|
221
|
+
"open interest",
|
|
222
|
+
"oi",
|
|
223
|
+
"positions",
|
|
224
|
+
"derivatives volume",
|
|
225
|
+
"futures positions"
|
|
226
|
+
],
|
|
227
|
+
"primaryMetric": "open-interest",
|
|
228
|
+
"endpoint": "/v1/btc/market-data/open-interest",
|
|
229
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
230
|
+
"additionalMetrics": [],
|
|
231
|
+
"definition": "Total open long and short positions on derivative exchanges.",
|
|
232
|
+
"interpretation": ""
|
|
233
|
+
},
|
|
234
|
+
"COIN_AGE": {
|
|
235
|
+
"id": "COIN_AGE",
|
|
236
|
+
"triggers": [
|
|
237
|
+
"cdd",
|
|
238
|
+
"coin days destroyed",
|
|
239
|
+
"old coins",
|
|
240
|
+
"dormant coins",
|
|
241
|
+
"long-term holder movement",
|
|
242
|
+
"hodl"
|
|
243
|
+
],
|
|
244
|
+
"primaryMetric": "cdd",
|
|
245
|
+
"endpoint": "/v1/btc/network-indicator/cdd",
|
|
246
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
247
|
+
"additionalMetrics": [
|
|
248
|
+
{
|
|
249
|
+
"metric": "mca",
|
|
250
|
+
"endpoint": "/v1/btc/network-indicator/mca",
|
|
251
|
+
"plan": "Professional+",
|
|
252
|
+
"useCase": "Mean coin age"
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
"metric": "dormancy",
|
|
256
|
+
"endpoint": "/v1/btc/network-indicator/dormancy",
|
|
257
|
+
"plan": "Professional+",
|
|
258
|
+
"useCase": "Coin age per volume"
|
|
259
|
+
}
|
|
260
|
+
],
|
|
261
|
+
"definition": "Days held × Amount moved. Measures old coin activity.",
|
|
262
|
+
"interpretation": ""
|
|
263
|
+
},
|
|
264
|
+
"HODL_BEHAVIOR": {
|
|
265
|
+
"id": "HODL_BEHAVIOR",
|
|
266
|
+
"triggers": [
|
|
267
|
+
"hodl",
|
|
268
|
+
"holding",
|
|
269
|
+
"mean coin age",
|
|
270
|
+
"aging coins",
|
|
271
|
+
"accumulation phase"
|
|
272
|
+
],
|
|
273
|
+
"primaryMetric": "mca",
|
|
274
|
+
"endpoint": "/v1/btc/network-indicator/mca",
|
|
275
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
276
|
+
"additionalMetrics": [],
|
|
277
|
+
"definition": "Average age of unspent coins weighted by value.",
|
|
278
|
+
"interpretation": ""
|
|
279
|
+
},
|
|
280
|
+
"STABLECOIN_LIQUIDITY": {
|
|
281
|
+
"id": "STABLECOIN_LIQUIDITY",
|
|
282
|
+
"triggers": [
|
|
283
|
+
"stablecoin",
|
|
284
|
+
"ssr",
|
|
285
|
+
"usdt",
|
|
286
|
+
"usdc",
|
|
287
|
+
"buying power",
|
|
288
|
+
"dry powder",
|
|
289
|
+
"liquidity"
|
|
290
|
+
],
|
|
291
|
+
"primaryMetric": "stablecoin-supply-ratio",
|
|
292
|
+
"endpoint": "/v1/btc/market-indicator/stablecoin-supply-ratio",
|
|
293
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
294
|
+
"additionalMetrics": [],
|
|
295
|
+
"definition": "BTC Market Cap / Stablecoin Market Cap.",
|
|
296
|
+
"interpretation": ""
|
|
297
|
+
},
|
|
298
|
+
"MINER_ACTIVITY": {
|
|
299
|
+
"id": "MINER_ACTIVITY",
|
|
300
|
+
"triggers": [
|
|
301
|
+
"miner",
|
|
302
|
+
"mining",
|
|
303
|
+
"hash rate",
|
|
304
|
+
"miner selling",
|
|
305
|
+
"miner revenue",
|
|
306
|
+
"mpi",
|
|
307
|
+
"puell"
|
|
308
|
+
],
|
|
309
|
+
"primaryMetric": "mpi",
|
|
310
|
+
"endpoint": "/v1/btc/flow-indicator/mpi",
|
|
311
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
312
|
+
"additionalMetrics": [
|
|
313
|
+
{
|
|
314
|
+
"metric": "puell-multiple",
|
|
315
|
+
"endpoint": "/v1/btc/network-indicator/puell-multiple",
|
|
316
|
+
"plan": "Professional+",
|
|
317
|
+
"useCase": "Miner profitability"
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
"metric": "miner-netflow",
|
|
321
|
+
"endpoint": "/v1/btc/miner-flows/netflow",
|
|
322
|
+
"plan": "Professional+",
|
|
323
|
+
"useCase": "Direct flow tracking"
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
"metric": "miner-to-exchange",
|
|
327
|
+
"endpoint": "/v1/btc/inter-entity-flows/miner-to-exchange",
|
|
328
|
+
"plan": "Professional+",
|
|
329
|
+
"useCase": "Direct exchange deposits"
|
|
330
|
+
}
|
|
331
|
+
],
|
|
332
|
+
"definition": "Miners' Position Index - miner outflows vs 365d MA.",
|
|
333
|
+
"interpretation": ""
|
|
334
|
+
},
|
|
335
|
+
"MINER_PROFITABILITY": {
|
|
336
|
+
"id": "MINER_PROFITABILITY",
|
|
337
|
+
"triggers": [
|
|
338
|
+
"puell multiple",
|
|
339
|
+
"miner profit",
|
|
340
|
+
"mining profitability",
|
|
341
|
+
"issuance",
|
|
342
|
+
"block rewards"
|
|
343
|
+
],
|
|
344
|
+
"primaryMetric": "puell-multiple",
|
|
345
|
+
"endpoint": "/v1/btc/network-indicator/puell-multiple",
|
|
346
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
347
|
+
"additionalMetrics": [],
|
|
348
|
+
"definition": "Daily issuance value / 365-day MA.",
|
|
349
|
+
"interpretation": ""
|
|
350
|
+
},
|
|
351
|
+
"COINBASE_PREMIUM": {
|
|
352
|
+
"id": "COINBASE_PREMIUM",
|
|
353
|
+
"triggers": [
|
|
354
|
+
"coinbase premium",
|
|
355
|
+
"us institutional",
|
|
356
|
+
"american buyers",
|
|
357
|
+
"us demand",
|
|
358
|
+
"coinbase price"
|
|
359
|
+
],
|
|
360
|
+
"primaryMetric": "coinbase-premium-index",
|
|
361
|
+
"endpoint": "/v1/btc/market-data/coinbase-premium-index",
|
|
362
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
363
|
+
"additionalMetrics": [],
|
|
364
|
+
"definition": "Price gap between Coinbase (USD) and other exchanges (USDT).",
|
|
365
|
+
"interpretation": ""
|
|
366
|
+
},
|
|
367
|
+
"KIMCHI_PREMIUM": {
|
|
368
|
+
"id": "KIMCHI_PREMIUM",
|
|
369
|
+
"triggers": [
|
|
370
|
+
"kimchi premium",
|
|
371
|
+
"korea premium",
|
|
372
|
+
"korean demand",
|
|
373
|
+
"korean retail",
|
|
374
|
+
"krw premium"
|
|
375
|
+
],
|
|
376
|
+
"primaryMetric": "korea-premium-index",
|
|
377
|
+
"endpoint": "/v1/btc/market-data/korea-premium-index",
|
|
378
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
379
|
+
"additionalMetrics": [],
|
|
380
|
+
"definition": "Price gap between Korean exchanges (KRW) and global exchanges.",
|
|
381
|
+
"interpretation": ""
|
|
382
|
+
},
|
|
383
|
+
"ETF_FLOWS": {
|
|
384
|
+
"id": "ETF_FLOWS",
|
|
385
|
+
"triggers": [
|
|
386
|
+
"etf",
|
|
387
|
+
"etf flow",
|
|
388
|
+
"spot etf",
|
|
389
|
+
"bitcoin etf",
|
|
390
|
+
"blackrock",
|
|
391
|
+
"fidelity",
|
|
392
|
+
"institutional flow",
|
|
393
|
+
"etf inflow",
|
|
394
|
+
"etf outflow"
|
|
395
|
+
],
|
|
396
|
+
"primaryMetric": "digital-asset-holdings",
|
|
397
|
+
"endpoint": "/v1/btc/fund-data/digital-asset-holdings",
|
|
398
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
399
|
+
"additionalMetrics": [
|
|
400
|
+
{
|
|
401
|
+
"metric": "market-premium",
|
|
402
|
+
"endpoint": "/v1/btc/fund-data/market-premium",
|
|
403
|
+
"plan": "Professional+",
|
|
404
|
+
"useCase": "Fund premium/discount"
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
"metric": "market-volume",
|
|
408
|
+
"endpoint": "/v1/btc/fund-data/market-volume",
|
|
409
|
+
"plan": "Professional+",
|
|
410
|
+
"useCase": "ETF trading volume"
|
|
411
|
+
}
|
|
412
|
+
],
|
|
413
|
+
"definition": "BTC holdings in ETFs and institutional funds.",
|
|
414
|
+
"interpretation": ""
|
|
415
|
+
},
|
|
416
|
+
"ETH_VALUATION": {
|
|
417
|
+
"id": "ETH_VALUATION",
|
|
418
|
+
"triggers": [
|
|
419
|
+
"eth price",
|
|
420
|
+
"ethereum outlook",
|
|
421
|
+
"eth valuation",
|
|
422
|
+
"eth overvalued",
|
|
423
|
+
"eth undervalued"
|
|
424
|
+
],
|
|
425
|
+
"primaryMetric": "estimated-leverage-ratio",
|
|
426
|
+
"endpoint": "/v1/eth/market-indicator/estimated-leverage-ratio",
|
|
427
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
428
|
+
"additionalMetrics": []
|
|
429
|
+
},
|
|
430
|
+
"ETH_EXCHANGE_FLOWS": {
|
|
431
|
+
"id": "ETH_EXCHANGE_FLOWS",
|
|
432
|
+
"triggers": [
|
|
433
|
+
"eth exchange",
|
|
434
|
+
"eth accumulation",
|
|
435
|
+
"eth deposit",
|
|
436
|
+
"eth withdrawal"
|
|
437
|
+
],
|
|
438
|
+
"primaryMetric": "netflow",
|
|
439
|
+
"endpoint": "/v1/eth/exchange-flows/netflow",
|
|
440
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
441
|
+
"additionalMetrics": []
|
|
442
|
+
},
|
|
443
|
+
"STAKING": {
|
|
444
|
+
"id": "STAKING",
|
|
445
|
+
"triggers": [
|
|
446
|
+
"staking",
|
|
447
|
+
"validator",
|
|
448
|
+
"staked eth",
|
|
449
|
+
"beacon chain",
|
|
450
|
+
"pos",
|
|
451
|
+
"staking rate"
|
|
452
|
+
],
|
|
453
|
+
"primaryMetric": "staking-rate",
|
|
454
|
+
"endpoint": "/v1/eth/eth2/staking-rate",
|
|
455
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
456
|
+
"additionalMetrics": []
|
|
457
|
+
},
|
|
458
|
+
"DERIVATIVES": {
|
|
459
|
+
"id": "DERIVATIVES",
|
|
460
|
+
"triggers": [
|
|
461
|
+
"eth funding",
|
|
462
|
+
"eth leverage",
|
|
463
|
+
"eth derivatives",
|
|
464
|
+
"eth futures"
|
|
465
|
+
],
|
|
466
|
+
"primaryMetric": "funding-rates",
|
|
467
|
+
"endpoint": "/v1/eth/market-data/funding-rates",
|
|
468
|
+
"plan": "Professional+ (1yr history) / Premium (unlimited)",
|
|
469
|
+
"additionalMetrics": []
|
|
470
|
+
}
|
|
471
|
+
};
|
|
472
|
+
// ============================================================================
|
|
473
|
+
// Helper Functions
|
|
474
|
+
// ============================================================================
|
|
475
|
+
/**
|
|
476
|
+
* Match user question to intent based on trigger keywords
|
|
477
|
+
*/
|
|
478
|
+
export function matchIntent(question) {
|
|
479
|
+
const lowerQuestion = question.toLowerCase();
|
|
480
|
+
for (const config of Object.values(INTENT_ROUTING)) {
|
|
481
|
+
for (const trigger of config.triggers) {
|
|
482
|
+
if (lowerQuestion.includes(trigger)) {
|
|
483
|
+
return config;
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
return null;
|
|
488
|
+
}
|
|
489
|
+
/**
|
|
490
|
+
* Get all endpoints needed for an intent (primary + additional)
|
|
491
|
+
*/
|
|
492
|
+
export function getEndpointsForIntent(intentId) {
|
|
493
|
+
const config = INTENT_ROUTING[intentId];
|
|
494
|
+
if (!config)
|
|
495
|
+
return [];
|
|
496
|
+
return [
|
|
497
|
+
config.endpoint,
|
|
498
|
+
...config.additionalMetrics.map((m) => m.endpoint),
|
|
499
|
+
].filter(Boolean);
|
|
500
|
+
}
|
|
501
|
+
/**
|
|
502
|
+
* Get intent by primary metric ID
|
|
503
|
+
*/
|
|
504
|
+
export function getIntentByMetric(metricId) {
|
|
505
|
+
for (const config of Object.values(INTENT_ROUTING)) {
|
|
506
|
+
if (config.primaryMetric === metricId) {
|
|
507
|
+
return config;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
return null;
|
|
511
|
+
}
|
|
512
|
+
/**
|
|
513
|
+
* Get all available intent IDs
|
|
514
|
+
*/
|
|
515
|
+
export function getAvailableIntents() {
|
|
516
|
+
return Object.keys(INTENT_ROUTING);
|
|
517
|
+
}
|
|
518
|
+
//# sourceMappingURL=intent-routing.generated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intent-routing.generated.js","sourceRoot":"","sources":["../../src/shared/intent-routing.generated.ts"],"names":[],"mappings":"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"}
|