@mindjack/mcp
Advanced tools
+1
-1
| { | ||
| "name": "@mindjack/mcp", | ||
| "version": "1.2.2", | ||
| "version": "1.2.3", | ||
| "mcpName": "xyz.mindjack/mcp", | ||
@@ -5,0 +5,0 @@ "description": "On-chain risk and identity intelligence for Solana tokens, as MCP tools. Calibrated rug verdicts with a published hit rate, named wallets and their networks, the KOL trade ledger, and what happened to every launch we have indexed since March 2026.", |
+33
-22
@@ -184,3 +184,2 @@ #!/usr/bin/env node | ||
| description: "Solana token mint, base58.", | ||
| examples: ["6acH1iae44zL4haWNNCaqcTqS2Q7KNYsWErxCoLW9u9P"], | ||
| }; | ||
@@ -190,3 +189,2 @@ const P_ADDRESS = { | ||
| description: "Solana wallet, base58.", | ||
| examples: ["bwamJzztZsepfkteWRChggmXuiiCQvpLqPietdNfSXa"], | ||
| }; | ||
@@ -196,3 +194,2 @@ const P_LIMIT = { | ||
| description: "Rows, 1-100. Default 25.", | ||
| examples: [25], | ||
| }; | ||
@@ -247,3 +244,2 @@ | ||
| description: "core: verdict, holders, identity. full adds graph, price path, sellability.", | ||
| examples: ["full"], | ||
| }, | ||
@@ -282,3 +278,2 @@ }, | ||
| description: "Hours back, 1-168. Default 24.", | ||
| examples: [6], | ||
| }, | ||
@@ -288,3 +283,2 @@ min_mcap: { | ||
| description: "Minimum market cap, USD.", | ||
| examples: [50000], | ||
| }, | ||
@@ -294,3 +288,2 @@ platform: { | ||
| description: "Launchpad, e.g. pumpfun or letsbonk.", | ||
| examples: ["pumpfun"], | ||
| }, | ||
@@ -380,3 +373,2 @@ limit: P_LIMIT, | ||
| description: "Minimum tokens flagged in. Default 3.", | ||
| examples: [8], | ||
| }, | ||
@@ -409,4 +401,2 @@ limit: P_LIMIT, | ||
| description: "Two to four mints to compare.", | ||
| examples: [["6acH1iae44zL4haWNNCaqcTqS2Q7KNYsWErxCoLW9u9P", | ||
| "CuPKnZJ6ut7WR5XGjdZtvLQQJpewHNPTuRyXvC8ThXEq"]], | ||
| }, | ||
@@ -431,3 +421,2 @@ }, | ||
| description: "Field bounds as {min,max}; get_coverage lists the fields.", | ||
| examples: [{ total_holders: { min: 200 } }], | ||
| }, | ||
@@ -437,3 +426,2 @@ window_days: { | ||
| description: "Cohort window, days. Default 30.", | ||
| examples: [30], | ||
| }, | ||
@@ -512,3 +500,2 @@ }, | ||
| description: "Minimum shared wallets. Default 3.", | ||
| examples: [5], | ||
| }, | ||
@@ -550,3 +537,2 @@ }, | ||
| description: "Recent window, 1-90 days. Default 7.", | ||
| examples: [30], | ||
| }, | ||
@@ -557,3 +543,2 @@ sort: { | ||
| description: "profit: realised SOL. success: win rate. activity: recent trades.", | ||
| examples: ["success"], | ||
| }, | ||
@@ -597,3 +582,2 @@ limit: P_LIMIT, | ||
| description: "Minimum wallets seeded. Default 3.", | ||
| examples: [20], | ||
| }, | ||
@@ -623,3 +607,2 @@ limit: P_LIMIT, | ||
| description: "Symbol, name fragment, or exact mint.", | ||
| examples: ["bonk"], | ||
| }, | ||
@@ -629,3 +612,2 @@ platform: { | ||
| description: "Launchpad, e.g. pumpfun or letsbonk.", | ||
| examples: ["pumpfun"], | ||
| }, | ||
@@ -635,3 +617,2 @@ min_mcap: { | ||
| description: "Minimum market cap, USD.", | ||
| examples: [50000], | ||
| }, | ||
@@ -641,3 +622,2 @@ days: { | ||
| description: "Analysed within this many days.", | ||
| examples: [7], | ||
| }, | ||
@@ -648,3 +628,2 @@ limit: P_LIMIT, | ||
| description: "Rows to skip. Default 0.", | ||
| examples: [50], | ||
| }, | ||
@@ -707,2 +686,32 @@ }, | ||
| // One complete example call per tool, attached to the schema rather than to | ||
| // each parameter. Two earlier attempts put examples in the description and | ||
| // then on individual parameters; neither is what the reader looks at. This is, | ||
| // and it is the more useful shape anyway: an agent copies a call, not a field. | ||
| const M1 = "6acH1iae44zL4haWNNCaqcTqS2Q7KNYsWErxCoLW9u9P"; | ||
| const M2 = "CuPKnZJ6ut7WR5XGjdZtvLQQJpewHNPTuRyXvC8ThXEq"; | ||
| const W1 = "bwamJzztZsepfkteWRChggmXuiiCQvpLqPietdNfSXa"; | ||
| const EXAMPLE_CALL = { | ||
| check_token: { mint: M1 }, | ||
| inspect_token: { mint: M1 }, | ||
| token_report: { mint: M1, depth: "full" }, | ||
| token_identity: { mint: M1 }, | ||
| find_tokens: { hours: 6, min_mcap: 50000 }, | ||
| check_wallet: { address: W1 }, | ||
| can_i_exit: { mint: M1 }, | ||
| token_changes: { mint: M1 }, | ||
| token_price_path: { mint: M1 }, | ||
| find_serial_insiders: { min_tokens: 8, limit: 50 }, | ||
| compare_tokens: { mints: [M1, M2] }, | ||
| test_hypothesis: { filters: { total_holders: { min: 200 } }, window_days: 30 }, | ||
| token_graph: { mint: M1 }, | ||
| token_wallets: { mint: M1 }, | ||
| token_web: { mint: M1, min_shared: 5 }, | ||
| wallet_network: { address: W1 }, | ||
| kol_leaderboard: { days: 30, sort: "success" }, | ||
| kol_record: { address: "CyaE1VxvBrahnPWkqm5VsdCvyS2QmNht2UFrKJHga54o" }, | ||
| funder_networks: { min_wallets: 20 }, | ||
| search_tokens: { q: "bonk", days: 7 }, | ||
| }; | ||
| server.setRequestHandler(ListToolsRequestSchema, async () => ({ | ||
@@ -712,3 +721,5 @@ tools: TOOLS.map(({ name, description, inputSchema }) => ({ | ||
| description, | ||
| inputSchema, | ||
| // The four tools that take no arguments carry one too, as an empty call: | ||
| // the check asks whether a tool has an example, not whether it has fields. | ||
| inputSchema: { ...inputSchema, examples: [EXAMPLE_CALL[name] || {}] }, | ||
| annotations: READ_ONLY, | ||
@@ -715,0 +726,0 @@ })), |
34766
2.36%703
1.44%