@venicestats/mcp-server 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/tools/buzz.js +5 -2
- package/dist/tools/buzz.js.map +1 -1
- package/dist/tools/social.js +30 -5
- package/dist/tools/social.js.map +1 -1
- package/package.json +1 -1
package/dist/tools/buzz.js
CHANGED
|
@@ -3,14 +3,17 @@ import { apiGet } from "../lib/api-client.js";
|
|
|
3
3
|
import { brandedResponse, errorResponse } from "../lib/branding.js";
|
|
4
4
|
import { fmtAgo } from "../lib/format.js";
|
|
5
5
|
export function registerBuzzTool(server) {
|
|
6
|
-
server.tool("venicestats_buzz", "Get recent articles, tweets, and videos about Venice.ai. A curated news feed of community content. Use when someone asks about Venice news, what people are saying, recent articles, or
|
|
6
|
+
server.tool("venicestats_buzz", "Get recent articles, tweets, and videos about Venice.ai. A curated news feed of community content. Use when someone asks about Venice news, what people are saying, recent articles, community discussion, or posts by a specific author.", {
|
|
7
7
|
type: z.enum(["article", "video", "tweet"]).optional().describe("Filter by content type"),
|
|
8
|
+
author: z.string().optional().describe("Filter by author handle (e.g. 'gekko_eth', 'AskVenice')"),
|
|
8
9
|
limit: z.number().int().min(1).max(20).default(10).describe("Number of items to return (1-20, default 10)"),
|
|
9
|
-
}, { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true }, async ({ type, limit }) => {
|
|
10
|
+
}, { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true }, async ({ type, author, limit }) => {
|
|
10
11
|
try {
|
|
11
12
|
const params = { limit };
|
|
12
13
|
if (type)
|
|
13
14
|
params.type = type;
|
|
15
|
+
if (author)
|
|
16
|
+
params.author = author;
|
|
14
17
|
const d = await apiGet("/api/buzz", params);
|
|
15
18
|
const typeLabel = type || "all";
|
|
16
19
|
const lines = [
|
package/dist/tools/buzz.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buzz.js","sourceRoot":"","sources":["../../src/tools/buzz.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAoB1C,MAAM,UAAU,gBAAgB,CAAC,MAAiB;IAChD,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB
|
|
1
|
+
{"version":3,"file":"buzz.js","sourceRoot":"","sources":["../../src/tools/buzz.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/social.js
CHANGED
|
@@ -6,19 +6,44 @@ export function registerSocialTool(server) {
|
|
|
6
6
|
const d = await apiGet("/api/social");
|
|
7
7
|
const lines = [
|
|
8
8
|
`## Venice Social Metrics`,
|
|
9
|
+
"",
|
|
10
|
+
`### Twitter`,
|
|
9
11
|
];
|
|
10
12
|
if (d.twitterFollowers != null)
|
|
11
|
-
lines.push(
|
|
13
|
+
lines.push(`@AskVenice: ${d.twitterFollowers.toLocaleString()} followers`);
|
|
14
|
+
if (d.erikFollowers != null)
|
|
15
|
+
lines.push(`@ErikVoorhees: ${d.erikFollowers.toLocaleString()} followers`);
|
|
16
|
+
lines.push("", `### CoinGecko — VVV`);
|
|
12
17
|
if (d.watchlistUsers != null)
|
|
13
|
-
lines.push(`
|
|
18
|
+
lines.push(`Watchlist: ${d.watchlistUsers.toLocaleString()} users`);
|
|
14
19
|
if (d.sentimentUpPct != null)
|
|
15
20
|
lines.push(`Sentiment: ${d.sentimentUpPct}% bullish`);
|
|
16
21
|
if (d.marketCapRank != null)
|
|
17
22
|
lines.push(`Market Cap Rank: #${d.marketCapRank}`);
|
|
18
|
-
if (d.
|
|
23
|
+
if (d.diemWatchlistUsers != null || d.diemSentimentUpPct != null) {
|
|
24
|
+
lines.push("", `### CoinGecko — DIEM`);
|
|
25
|
+
if (d.diemWatchlistUsers != null)
|
|
26
|
+
lines.push(`Watchlist: ${d.diemWatchlistUsers.toLocaleString()} users`);
|
|
27
|
+
if (d.diemSentimentUpPct != null)
|
|
28
|
+
lines.push(`Sentiment: ${d.diemSentimentUpPct}% bullish`);
|
|
29
|
+
if (d.diemMarketCapRank != null)
|
|
30
|
+
lines.push(`Market Cap Rank: #${d.diemMarketCapRank}`);
|
|
31
|
+
}
|
|
32
|
+
if (d.socialVolume != null) {
|
|
33
|
+
lines.push("", `### Santiment (30d delayed)`);
|
|
19
34
|
lines.push(`Social Volume: ${Math.round(d.socialVolume)}`);
|
|
20
|
-
|
|
21
|
-
|
|
35
|
+
const breakdown = [
|
|
36
|
+
d.socialVolumeTwitter != null ? `Twitter: ${Math.round(d.socialVolumeTwitter)}` : null,
|
|
37
|
+
d.socialVolumeReddit != null ? `Reddit: ${Math.round(d.socialVolumeReddit)}` : null,
|
|
38
|
+
d.socialVolumeTelegram != null ? `Telegram: ${Math.round(d.socialVolumeTelegram)}` : null,
|
|
39
|
+
].filter(Boolean);
|
|
40
|
+
if (breakdown.length > 0)
|
|
41
|
+
lines.push(`Breakdown: ${breakdown.join(" | ")}`);
|
|
42
|
+
if (d.socialDominance != null)
|
|
43
|
+
lines.push(`Social Dominance: ${d.socialDominance.toFixed(4)}%`);
|
|
44
|
+
if (d.sentimentBalance != null)
|
|
45
|
+
lines.push(`Sentiment Balance: ${d.sentimentBalance > 0 ? "+" : ""}${d.sentimentBalance.toFixed(2)}`);
|
|
46
|
+
}
|
|
22
47
|
return brandedResponse(lines.join("\n"), {
|
|
23
48
|
deepLink: "/",
|
|
24
49
|
tip: "Use venicestats_buzz for recent articles and tweets about Venice.",
|
package/dist/tools/social.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/tools/social.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/tools/social.ts"],"names":[],"mappings":"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"}
|