kaito-mcp-server 0.1.9 → 0.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 +25 -8
- package/build/__tests__/smoke.test.d.ts +2 -0
- package/build/__tests__/smoke.test.d.ts.map +1 -0
- package/build/__tests__/smoke.test.js +94 -0
- package/build/__tests__/smoke.test.js.map +1 -0
- package/build/prompts/workflows.d.ts.map +1 -1
- package/build/prompts/workflows.js +9 -3
- package/build/prompts/workflows.js.map +1 -1
- package/build/server.js +1 -1
- package/build/tools/rankings.d.ts.map +1 -1
- package/build/tools/rankings.js +25 -0
- package/build/tools/rankings.js.map +1 -1
- package/build/tools/social.d.ts.map +1 -1
- package/build/tools/social.js +82 -0
- package/build/tools/social.js.map +1 -1
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# kaito-mcp-server
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://www.npmjs.com/package/kaito-mcp-server)
|
|
4
|
+
|
|
5
|
+
MCP server for [Kaito AI](https://kaito.ai) crypto market intelligence API. Provides 16 tools, 2 resources, and 2 prompt templates for accessing Kaito's sentiment analysis, mindshare tracking, social intelligence, and more.
|
|
4
6
|
|
|
5
7
|
## Getting Started
|
|
6
8
|
|
|
@@ -15,7 +17,7 @@ The following config works across most MCP clients (Claude Desktop, Cursor, Wind
|
|
|
15
17
|
"mcpServers": {
|
|
16
18
|
"kaito": {
|
|
17
19
|
"command": "npx",
|
|
18
|
-
"args": ["-y", "kaito-mcp-server"],
|
|
20
|
+
"args": ["-y", "kaito-mcp-server@latest"],
|
|
19
21
|
"env": {
|
|
20
22
|
"KAITO_API_KEY": "your-api-key"
|
|
21
23
|
}
|
|
@@ -38,7 +40,7 @@ Add the [standard config](#standard-configuration) to your `claude_desktop_confi
|
|
|
38
40
|
### Claude Code
|
|
39
41
|
|
|
40
42
|
```bash
|
|
41
|
-
claude mcp add kaito -e KAITO_API_KEY=your-api-key -- npx -y kaito-mcp-server
|
|
43
|
+
claude mcp add kaito -e KAITO_API_KEY=your-api-key -- npx -y kaito-mcp-server@latest
|
|
42
44
|
```
|
|
43
45
|
|
|
44
46
|
### VS Code
|
|
@@ -51,7 +53,7 @@ Add the following to your User Settings (JSON) or `.vscode/settings.json`:
|
|
|
51
53
|
"servers": {
|
|
52
54
|
"kaito": {
|
|
53
55
|
"command": "npx",
|
|
54
|
-
"args": ["-y", "kaito-mcp-server"],
|
|
56
|
+
"args": ["-y", "kaito-mcp-server@latest"],
|
|
55
57
|
"env": {
|
|
56
58
|
"KAITO_API_KEY": "your-api-key"
|
|
57
59
|
}
|
|
@@ -70,7 +72,7 @@ Go to **Cursor Settings → MCP → Add new MCP Server**, and paste the [standar
|
|
|
70
72
|
For any MCP-compatible client, the server can be started with:
|
|
71
73
|
|
|
72
74
|
```bash
|
|
73
|
-
KAITO_API_KEY=your-api-key npx -y kaito-mcp-server
|
|
75
|
+
KAITO_API_KEY=your-api-key npx -y kaito-mcp-server@latest
|
|
74
76
|
```
|
|
75
77
|
|
|
76
78
|
The transport is **stdio**. Use this command in your client's MCP server configuration.
|
|
@@ -99,12 +101,15 @@ The transport is **stdio**. Use this command in your client's MCP server configu
|
|
|
99
101
|
|------|-------------|
|
|
100
102
|
| `kaito_smart_followers` | Smart follower count or list for a user |
|
|
101
103
|
| `kaito_smart_following` | Latest 100 smart accounts followed by a user |
|
|
104
|
+
| `kaito_kol_token_mindshare` | Top KOLs ranked by mindshare for a token |
|
|
105
|
+
| `kaito_market_smart_following` | Accounts that smart followers have recently followed |
|
|
102
106
|
|
|
103
107
|
### Rankings
|
|
104
108
|
|
|
105
109
|
| Tool | Description |
|
|
106
110
|
|------|-------------|
|
|
107
111
|
| `kaito_mindshare_arena` | Project rankings by mindshare (use `pre_tge=true` for Pre-TGE rankings) |
|
|
112
|
+
| `kaito_mindshare_delta` | Top gainers and losers by mindshare change |
|
|
108
113
|
|
|
109
114
|
### Events
|
|
110
115
|
|
|
@@ -124,8 +129,8 @@ The transport is **stdio**. Use this command in your client's MCP server configu
|
|
|
124
129
|
|
|
125
130
|
| Prompt | Description |
|
|
126
131
|
|--------|-------------|
|
|
127
|
-
| `analyze_token` | Comprehensive token analysis workflow (sentiment → mindshare → mentions → engagement → events → search) |
|
|
128
|
-
| `discover_trending` | Trending discovery workflow (mindshare arena → search) |
|
|
132
|
+
| `analyze_token` | Comprehensive token analysis workflow (sentiment → mindshare → mentions → engagement → events → KOL mindshare → search) |
|
|
133
|
+
| `discover_trending` | Trending discovery workflow (mindshare arena → delta movers → smart money signals → search) |
|
|
129
134
|
|
|
130
135
|
## Development
|
|
131
136
|
|
|
@@ -136,7 +141,19 @@ npm install
|
|
|
136
141
|
npm run build
|
|
137
142
|
```
|
|
138
143
|
|
|
139
|
-
|
|
144
|
+
### Testing
|
|
145
|
+
|
|
146
|
+
Smoke tests hit the real Kaito API to verify all endpoints are reachable:
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
KAITO_API_KEY=your-key npm test # run all 18 smoke tests
|
|
150
|
+
KAITO_API_KEY=your-key npm test -- -t "sentiment" # run a single test
|
|
151
|
+
KAITO_API_KEY=your-key npm test -- -t "Social" # run a describe group
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
Resource tests (`tokens`, `narratives`) run without an API key; all others are skipped if `KAITO_API_KEY` is not set.
|
|
155
|
+
|
|
156
|
+
### MCP Inspector
|
|
140
157
|
|
|
141
158
|
```bash
|
|
142
159
|
KAITO_API_KEY=your-key npx @modelcontextprotocol/inspector node build/index.js
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smoke.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/smoke.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { describe, it, expect, beforeEach } from "vitest";
|
|
2
|
+
import { KaitoClient } from "../client.js";
|
|
3
|
+
const SKIP_REASON = "KAITO_API_KEY not set";
|
|
4
|
+
const hasApiKey = !!process.env.KAITO_API_KEY;
|
|
5
|
+
const client = new KaitoClient();
|
|
6
|
+
// Rate limit protection: 100ms between each test (API limit: 5 req/s)
|
|
7
|
+
beforeEach(() => new Promise((r) => setTimeout(r, 100)));
|
|
8
|
+
describe.skipIf(!hasApiKey)("Market Data", () => {
|
|
9
|
+
it("sentiment", async () => {
|
|
10
|
+
const result = await client.request("sentiment", { token: "BTC" });
|
|
11
|
+
expect(result).toBeDefined();
|
|
12
|
+
});
|
|
13
|
+
it("mindshare", async () => {
|
|
14
|
+
const result = await client.request("mindshare", { token: "BTC" });
|
|
15
|
+
expect(result).toBeDefined();
|
|
16
|
+
});
|
|
17
|
+
it("narrative_mindshare", async () => {
|
|
18
|
+
const result = await client.request("narrative_mindshare", {
|
|
19
|
+
narrative: "AI",
|
|
20
|
+
});
|
|
21
|
+
expect(result).toBeDefined();
|
|
22
|
+
});
|
|
23
|
+
it("mentions", async () => {
|
|
24
|
+
const result = await client.request("mentions", { token: "BTC" });
|
|
25
|
+
expect(result).toBeDefined();
|
|
26
|
+
});
|
|
27
|
+
it("engagement", async () => {
|
|
28
|
+
const result = await client.request("engagement", { token: "BTC" });
|
|
29
|
+
expect(result).toBeDefined();
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
describe.skipIf(!hasApiKey)("Search", () => {
|
|
33
|
+
it("advanced_search", async () => {
|
|
34
|
+
const result = await client.request("advanced_search", { tokens: "BTC" });
|
|
35
|
+
expect(result).toBeDefined();
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
describe.skipIf(!hasApiKey)("Social", () => {
|
|
39
|
+
it("smart_followers", async () => {
|
|
40
|
+
const result = await client.request("smart_followers", {
|
|
41
|
+
username: "VitalikButerin",
|
|
42
|
+
});
|
|
43
|
+
expect(result).toBeDefined();
|
|
44
|
+
});
|
|
45
|
+
it("smart_following", async () => {
|
|
46
|
+
const result = await client.request("smart_following", {
|
|
47
|
+
username: "VitalikButerin",
|
|
48
|
+
});
|
|
49
|
+
expect(result).toBeDefined();
|
|
50
|
+
});
|
|
51
|
+
it("kol_token_mindshare", async () => {
|
|
52
|
+
const result = await client.request("kol_token_mindshare", {
|
|
53
|
+
token: "BTC",
|
|
54
|
+
});
|
|
55
|
+
expect(result).toBeDefined();
|
|
56
|
+
});
|
|
57
|
+
it("market_smart_following", async () => {
|
|
58
|
+
const result = await client.request("market_smart_following", {});
|
|
59
|
+
expect(result).toBeDefined();
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
describe.skipIf(!hasApiKey)("Rankings", () => {
|
|
63
|
+
it("mindshare_arena", async () => {
|
|
64
|
+
const result = await client.request("mindshare_arena", {});
|
|
65
|
+
expect(result).toBeDefined();
|
|
66
|
+
});
|
|
67
|
+
it("mindshare_delta", async () => {
|
|
68
|
+
const result = await client.request("mindshare_delta", {});
|
|
69
|
+
expect(result).toBeDefined();
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
describe.skipIf(!hasApiKey)("Events", () => {
|
|
73
|
+
it("events", async () => {
|
|
74
|
+
const result = await client.request("events", { token: "BTC" });
|
|
75
|
+
expect(result).toBeDefined();
|
|
76
|
+
});
|
|
77
|
+
it("tweet_engagement_info", async () => {
|
|
78
|
+
const result = await client.request("tweet_engagement_info", {
|
|
79
|
+
tweet_id: "2029089398625845359",
|
|
80
|
+
});
|
|
81
|
+
expect(result).toBeDefined();
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
describe("Resources (no auth)", () => {
|
|
85
|
+
it("tokens", async () => {
|
|
86
|
+
const result = await client.request("tokens", {}, { requireAuth: false });
|
|
87
|
+
expect(result).toBeDefined();
|
|
88
|
+
});
|
|
89
|
+
it("narratives", async () => {
|
|
90
|
+
const result = await client.request("narratives", {}, { requireAuth: false });
|
|
91
|
+
expect(result).toBeDefined();
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
//# sourceMappingURL=smoke.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smoke.test.js","sourceRoot":"","sources":["../../src/__tests__/smoke.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.d.ts","sourceRoot":"","sources":["../../src/prompts/workflows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"workflows.d.ts","sourceRoot":"","sources":["../../src/prompts/workflows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,QAwFhD"}
|
|
@@ -24,11 +24,13 @@ export function registerPrompts(server) {
|
|
|
24
24
|
3. **Mentions**: Call kaito_mentions for ${token} to track mention volume across sources.
|
|
25
25
|
4. **Engagement**: Call kaito_engagement for ${token} to measure total and smart engagement.
|
|
26
26
|
5. **Events**: Call kaito_events for ${token} to find upcoming catalysts.
|
|
27
|
-
6. **
|
|
27
|
+
6. **KOL Mindshare**: Call kaito_kol_token_mindshare for ${token} to see which KOLs are driving the conversation.
|
|
28
|
+
7. **News & Discussion**: Call kaito_advanced_search with tokens=${token} to find the most relevant recent content.
|
|
28
29
|
|
|
29
30
|
After gathering all data, provide a structured analysis covering:
|
|
30
31
|
- Overall sentiment trend (bullish/bearish/neutral)
|
|
31
32
|
- Mindshare trajectory (growing/declining/stable)
|
|
33
|
+
- Top KOLs and their influence on the token's narrative
|
|
32
34
|
- Key events and catalysts ahead
|
|
33
35
|
- Notable discussions and news
|
|
34
36
|
- Summary assessment with key takeaways`,
|
|
@@ -38,7 +40,7 @@ After gathering all data, provide a structured analysis covering:
|
|
|
38
40
|
};
|
|
39
41
|
});
|
|
40
42
|
server.registerPrompt("discover_trending", {
|
|
41
|
-
description: "Discover trending crypto projects and narratives using mindshare rankings and recent content.",
|
|
43
|
+
description: "Discover trending crypto projects and narratives using mindshare rankings, delta movers, smart money signals, and recent content.",
|
|
42
44
|
argsSchema: {
|
|
43
45
|
duration: z
|
|
44
46
|
.string()
|
|
@@ -57,10 +59,14 @@ After gathering all data, provide a structured analysis covering:
|
|
|
57
59
|
|
|
58
60
|
1. **Mindshare Arena**: Call kaito_mindshare_arena with duration=${window} to see top projects by mindshare.
|
|
59
61
|
2. **Pre-TGE Arena**: Call kaito_mindshare_arena with duration=${window}, pre_tge=true to find trending pre-token projects.
|
|
60
|
-
3. **
|
|
62
|
+
3. **Mindshare Movers**: Call kaito_mindshare_delta with duration=${window} to find biggest gainers and losers.
|
|
63
|
+
4. **Smart Money Signal**: Call kaito_market_smart_following with duration=${window} to see who smart followers are newly following.
|
|
64
|
+
5. **Trending Content**: Call kaito_advanced_search in discovery mode (no tokens/keyword) to see what's trending.
|
|
61
65
|
|
|
62
66
|
After gathering all data, provide:
|
|
63
67
|
- Top 10 projects by mindshare with their scores
|
|
68
|
+
- Biggest mindshare gainers and losers
|
|
69
|
+
- Accounts attracting smart follower attention
|
|
64
70
|
- Notable Pre-TGE projects gaining attention
|
|
65
71
|
- Key trending topics and discussions
|
|
66
72
|
- Any emerging narratives or themes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.js","sourceRoot":"","sources":["../../src/prompts/workflows.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,MAAM,CAAC,cAAc,CACnB,eAAe,EACf;QACE,WAAW,EACT,gHAAgH;QAClH,UAAU,EAAE;YACV,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YAC1D,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,2CAA2C,CAAC;SACzD;KACF,EACD,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;QAClB,MAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,CAAC;QAC9B,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,yDAAyD,KAAK,mBAAmB,QAAQ;;6CAEhE,KAAK;6CACL,KAAK;2CACP,KAAK;+CACD,KAAK;uCACb,KAAK;
|
|
1
|
+
{"version":3,"file":"workflows.js","sourceRoot":"","sources":["../../src/prompts/workflows.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,MAAM,CAAC,cAAc,CACnB,eAAe,EACf;QACE,WAAW,EACT,gHAAgH;QAClH,UAAU,EAAE;YACV,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YAC1D,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,2CAA2C,CAAC;SACzD;KACF,EACD,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;QAClB,MAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,CAAC;QAC9B,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,yDAAyD,KAAK,mBAAmB,QAAQ;;6CAEhE,KAAK;6CACL,KAAK;2CACP,KAAK;+CACD,KAAK;uCACb,KAAK;2DACe,KAAK;mEACG,KAAK;;;;;;;;wCAQhC;qBAC3B;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,cAAc,CACnB,mBAAmB,EACnB;QACE,WAAW,EACT,mIAAmI;QACrI,UAAU,EAAE;YACV,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,uDAAuD,CAAC;SACrE;KACF,EACD,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,QAAQ,IAAI,KAAK,CAAC;QACjC,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,wDAAwD,MAAM;;mEAEf,MAAM;iEACR,MAAM;oEACH,MAAM;6EACG,MAAM;;;;;;;;;;qCAU9C;qBACxB;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
|
package/build/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rankings.d.ts","sourceRoot":"","sources":["../../src/tools/rankings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"rankings.d.ts","sourceRoot":"","sources":["../../src/tools/rankings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,QAkF3E"}
|
package/build/tools/rankings.js
CHANGED
|
@@ -45,5 +45,30 @@ export function registerRankingsTools(server, client) {
|
|
|
45
45
|
});
|
|
46
46
|
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
|
|
47
47
|
});
|
|
48
|
+
server.registerTool("kaito_mindshare_delta", {
|
|
49
|
+
description: "Get top gainers and losers by mindshare change over a time window. Use sort_type='desc' for biggest gainers, 'asc' for biggest losers.",
|
|
50
|
+
inputSchema: {
|
|
51
|
+
duration: z
|
|
52
|
+
.enum(["24h", "48h", "7d", "30d", "3m", "6m", "12m", "all"])
|
|
53
|
+
.optional()
|
|
54
|
+
.describe("Time window (default: 24h)"),
|
|
55
|
+
sort_type: z
|
|
56
|
+
.enum(["desc", "asc"])
|
|
57
|
+
.optional()
|
|
58
|
+
.describe("'desc' for gainers, 'asc' for losers (default: desc)"),
|
|
59
|
+
limit: z
|
|
60
|
+
.number()
|
|
61
|
+
.optional()
|
|
62
|
+
.describe("Number of results to return"),
|
|
63
|
+
},
|
|
64
|
+
annotations: { readOnlyHint: true, openWorldHint: true },
|
|
65
|
+
}, async ({ duration, sort_type, limit }) => {
|
|
66
|
+
const data = await client.request("mindshare_delta", {
|
|
67
|
+
duration,
|
|
68
|
+
sort_type,
|
|
69
|
+
limit: limit?.toString(),
|
|
70
|
+
});
|
|
71
|
+
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
|
|
72
|
+
});
|
|
48
73
|
}
|
|
49
74
|
//# sourceMappingURL=rankings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rankings.js","sourceRoot":"","sources":["../../src/tools/rankings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,MAAmB;IAC1E,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EACT,uSAAuS;QACzS,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;iBAC3D,QAAQ,EAAE;iBACV,QAAQ,CAAC,4BAA4B,CAAC;YACzC,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;iBACzC,QAAQ,EAAE;iBACV,QAAQ,CAAC,gCAAgC,CAAC;YAC7C,UAAU,EAAE,CAAC;iBACV,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;iBAC7B,QAAQ,EAAE;iBACV,QAAQ,CAAC,sCAAsC,CAAC;YACnD,OAAO,EAAE,CAAC;iBACP,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,CAAC;iBACX,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,oDAAoD,CAAC;YACjE,QAAQ,EAAE,CAAC;iBACR,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,4CAA4C,CAAC;YACzD,GAAG,EAAE,CAAC;iBACH,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,uCAAuC,CAAC;SACrD;QACD,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;KACzD,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACnD,QAAQ;YACR,QAAQ;YACR,UAAU;YACV,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE;YAC5B,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE;YACpC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;YAC9B,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE;SACrB,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9E,CAAC,CACF,CAAC;
|
|
1
|
+
{"version":3,"file":"rankings.js","sourceRoot":"","sources":["../../src/tools/rankings.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social.d.ts","sourceRoot":"","sources":["../../src/tools/social.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"social.d.ts","sourceRoot":"","sources":["../../src/tools/social.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,QAiKzE"}
|
package/build/tools/social.js
CHANGED
|
@@ -55,5 +55,87 @@ export function registerSocialTools(server, client) {
|
|
|
55
55
|
});
|
|
56
56
|
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
|
|
57
57
|
});
|
|
58
|
+
server.registerTool("kaito_kol_token_mindshare", {
|
|
59
|
+
description: "Get top KOLs ranked by mindshare for a given token. Shows which key opinion leaders are driving the conversation around a specific project.",
|
|
60
|
+
inputSchema: {
|
|
61
|
+
token: z.string().describe("Token ticker (e.g. BTC, ETH)"),
|
|
62
|
+
duration: z
|
|
63
|
+
.enum(["24h", "48h", "7d", "30d", "3m", "6m", "12m", "all"])
|
|
64
|
+
.optional()
|
|
65
|
+
.describe("Time window (default: 24h)"),
|
|
66
|
+
top_n: z
|
|
67
|
+
.number()
|
|
68
|
+
.optional()
|
|
69
|
+
.describe("Number of top KOLs to return"),
|
|
70
|
+
},
|
|
71
|
+
annotations: { readOnlyHint: true, openWorldHint: true },
|
|
72
|
+
}, async ({ token, duration, top_n }) => {
|
|
73
|
+
const data = await client.request("kol_token_mindshare", {
|
|
74
|
+
token,
|
|
75
|
+
duration,
|
|
76
|
+
top_n: top_n?.toString(),
|
|
77
|
+
});
|
|
78
|
+
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
|
|
79
|
+
});
|
|
80
|
+
server.registerTool("kaito_market_smart_following", {
|
|
81
|
+
description: "Get accounts that smart followers have recently followed — a market-level social signal showing where smart money attention is flowing.",
|
|
82
|
+
inputSchema: {
|
|
83
|
+
duration: z
|
|
84
|
+
.enum(["24h", "48h", "7d", "30d", "all_dates"])
|
|
85
|
+
.optional()
|
|
86
|
+
.describe("Time window (default: 30d)"),
|
|
87
|
+
from: z
|
|
88
|
+
.number()
|
|
89
|
+
.optional()
|
|
90
|
+
.describe("Pagination offset"),
|
|
91
|
+
sort_by: z
|
|
92
|
+
.enum(["earliest_time", "smart_followers", "followers_change", "change_ratio"])
|
|
93
|
+
.optional()
|
|
94
|
+
.describe("Sort field"),
|
|
95
|
+
sort_order: z
|
|
96
|
+
.enum(["asc", "desc"])
|
|
97
|
+
.optional()
|
|
98
|
+
.describe("Sort direction"),
|
|
99
|
+
filter_smart_followers_operator: z
|
|
100
|
+
.enum(["gte", "lte"])
|
|
101
|
+
.optional()
|
|
102
|
+
.describe("Smart followers filter operator"),
|
|
103
|
+
filter_smart_followers_value: z
|
|
104
|
+
.number()
|
|
105
|
+
.optional()
|
|
106
|
+
.describe("Smart followers filter threshold"),
|
|
107
|
+
user_status: z
|
|
108
|
+
.enum(["new", "existing", "all"])
|
|
109
|
+
.optional()
|
|
110
|
+
.describe("Filter by user status"),
|
|
111
|
+
user_tag_individual_or_organization: z
|
|
112
|
+
.enum(["Individual", "Organization", "all"])
|
|
113
|
+
.optional()
|
|
114
|
+
.describe("Filter by account type"),
|
|
115
|
+
user_type: z
|
|
116
|
+
.enum(["kkol", "non_kkol", "all"])
|
|
117
|
+
.optional()
|
|
118
|
+
.describe("Filter by KOL status"),
|
|
119
|
+
user_web3_relevance: z
|
|
120
|
+
.enum(["relevant", "irrelevant"])
|
|
121
|
+
.optional()
|
|
122
|
+
.describe("Filter by web3 relevance"),
|
|
123
|
+
},
|
|
124
|
+
annotations: { readOnlyHint: true, openWorldHint: true },
|
|
125
|
+
}, async ({ duration, from, sort_by, sort_order, filter_smart_followers_operator, filter_smart_followers_value, user_status, user_tag_individual_or_organization, user_type, user_web3_relevance }) => {
|
|
126
|
+
const data = await client.request("market_smart_following", {
|
|
127
|
+
duration,
|
|
128
|
+
from: from?.toString(),
|
|
129
|
+
sort_by,
|
|
130
|
+
sort_order,
|
|
131
|
+
filter_smart_followers_operator,
|
|
132
|
+
filter_smart_followers_value: filter_smart_followers_value?.toString(),
|
|
133
|
+
user_status,
|
|
134
|
+
user_tag_individual_or_organization,
|
|
135
|
+
user_type,
|
|
136
|
+
user_web3_relevance,
|
|
137
|
+
});
|
|
138
|
+
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
|
|
139
|
+
});
|
|
58
140
|
}
|
|
59
141
|
//# sourceMappingURL=social.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/tools/social.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAmB;IACxE,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EACT,+KAA+K;QACjL,WAAW,EAAE;YACX,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0DAA0D,CAAC;YACvE,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,2DAA2D,CAAC;YACxE,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,6DAA6D,CAAC;YAC1E,IAAI,EAAE,CAAC;iBACJ,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;iBACxB,QAAQ,EAAE;iBACV,QAAQ,CAAC,0EAA0E,CAAC;SACxF;QACD,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;KACzD,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACnD,OAAO;YACP,QAAQ;YACR,IAAI;YACJ,IAAI;SACL,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9E,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EACT,+FAA+F;QACjG,WAAW,EAAE;YACX,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0DAA0D,CAAC;YACvE,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,2DAA2D,CAAC;YACxE,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,KAAK,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;iBAC3C,QAAQ,EAAE;iBACV,QAAQ,CAAC,wBAAwB,CAAC;SACtC;QACD,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;KACzD,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;QACxC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACnD,OAAO;YACP,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9E,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/tools/social.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kaito-mcp-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "MCP server for Kaito AI crypto market intelligence API",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"build": "tsc",
|
|
15
15
|
"dev": "tsc --watch",
|
|
16
16
|
"start": "node build/index.js",
|
|
17
|
+
"test": "vitest run",
|
|
17
18
|
"preversion": "npm run build",
|
|
18
19
|
"postversion": "node scripts/sync-manifest-version.js && git add manifest.json && git commit --amend --no-edit && git push"
|
|
19
20
|
},
|
|
@@ -23,6 +24,7 @@
|
|
|
23
24
|
},
|
|
24
25
|
"devDependencies": {
|
|
25
26
|
"@types/node": "^22",
|
|
26
|
-
"typescript": "^5.7.0"
|
|
27
|
+
"typescript": "^5.7.0",
|
|
28
|
+
"vitest": "^4.0.18"
|
|
27
29
|
}
|
|
28
30
|
}
|