hive-intelligence 1.11.2 → 1.13.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 +3 -5
- package/agent-skills/.claude-plugin/plugin.json +1 -1
- package/agent-skills/packs/hive-build/SKILL.md +1 -1
- package/agent-skills/packs/hive-query/references/root-mcp-workflow.md +1 -1
- package/agent-skills/packs/hive-solana-analysis/SKILL.md +6 -5
- package/agent-skills/packs/hive-wallet-investigation/SKILL.md +7 -6
- package/build/{chunk-FQNW6SZ6.js → chunk-5J4CWTI5.js} +1 -1
- package/build/{chunk-LBJL66AC.js → chunk-CBFOVPLB.js} +11 -32
- package/build/{chunk-4QDGA6GP.js → chunk-QYK3EWTE.js} +1 -1
- package/build/{chunk-5MSFC2HD.js → chunk-V7TBL47R.js} +1 -1
- package/build/{chunk-FZ77S2XY.js → chunk-ZRAW5MXW.js} +1188 -9005
- package/build/cli.js +15 -15
- package/build/{completion-LFOLLOPU.js → completion-DCZIPROK.js} +1 -1
- package/build/{doctor-ZKIR44V4.js → doctor-DUXJWV3F.js} +1 -1
- package/build/{init-all-SPEWION5.js → init-all-UDWHV2ER.js} +2 -2
- package/build/{mcpServer-466JRLWK.js → mcpServer-NWKQ4LCN.js} +2 -2
- package/build/monitor-worker.js +3 -3
- package/build/{namespace-EU47MWAP.js → namespace-E4EPVXJ3.js} +1 -1
- package/build/release.json +4 -4
- package/build/{serve-623KMREW.js → serve-47QIM7OD.js} +2 -2
- package/build/server.js +17 -27
- package/build/stdio.js +2 -2
- package/build/{tools-CCMIU3SO.js → tools-K2P77L4T.js} +1 -1
- package/build/{uninstall-4TJ4SZLU.js → uninstall-I6ERJ2ED.js} +2 -2
- package/package.json +1 -2
package/build/cli.js
CHANGED
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
import "./chunk-XN3T6YOG.js";
|
|
7
7
|
import {
|
|
8
8
|
NAMESPACE
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-CBFOVPLB.js";
|
|
10
10
|
import "./chunk-RNVZIPNY.js";
|
|
11
11
|
import "./chunk-RU6QOFHH.js";
|
|
12
12
|
import {
|
|
@@ -3453,7 +3453,7 @@ program2.hook("preAction", (thisCommand) => {
|
|
|
3453
3453
|
setCliFlags({ apiKey: opts.apiKey, noRetry: opts.retry === false });
|
|
3454
3454
|
});
|
|
3455
3455
|
program2.action(async () => {
|
|
3456
|
-
const { startStdio } = await import("./serve-
|
|
3456
|
+
const { startStdio } = await import("./serve-47QIM7OD.js");
|
|
3457
3457
|
await startStdio(program2.opts().envFile);
|
|
3458
3458
|
});
|
|
3459
3459
|
program2.command("serve").description(
|
|
@@ -3471,10 +3471,10 @@ program2.command("serve").description(
|
|
|
3471
3471
|
);
|
|
3472
3472
|
process.exit(ExitCode.INVALID_ARGS);
|
|
3473
3473
|
}
|
|
3474
|
-
const { startHttp } = await import("./serve-
|
|
3474
|
+
const { startHttp } = await import("./serve-47QIM7OD.js");
|
|
3475
3475
|
await startHttp(port, program2.opts().envFile);
|
|
3476
3476
|
} else {
|
|
3477
|
-
const { startStdio } = await import("./serve-
|
|
3477
|
+
const { startStdio } = await import("./serve-47QIM7OD.js");
|
|
3478
3478
|
await startStdio(program2.opts().envFile, { local: opts.local });
|
|
3479
3479
|
}
|
|
3480
3480
|
});
|
|
@@ -3561,15 +3561,15 @@ for (const domain of NAMESPACE) {
|
|
|
3561
3561
|
}
|
|
3562
3562
|
var toolsCmd = program2.command("tools").description("Discover and execute tools");
|
|
3563
3563
|
toolsCmd.command("list").description("List all registered tools").option("--category <name>", "Filter by category").option("--provider <name>", "Filter by provider prefix").option("--limit <n>", "Max tools to show", "50").option("--offset <n>", "Skip first N tools", "0").action(async (opts) => {
|
|
3564
|
-
const { listTools } = await import("./tools-
|
|
3564
|
+
const { listTools } = await import("./tools-K2P77L4T.js");
|
|
3565
3565
|
await listTools(opts);
|
|
3566
3566
|
});
|
|
3567
3567
|
toolsCmd.command("search <query>").description("Search tools by name or description").action(async (query) => {
|
|
3568
|
-
const { searchTools } = await import("./tools-
|
|
3568
|
+
const { searchTools } = await import("./tools-K2P77L4T.js");
|
|
3569
3569
|
await searchTools(query);
|
|
3570
3570
|
});
|
|
3571
3571
|
toolsCmd.command("info <name>").description("Show a tool's parameters, response schema, and description").action(async (name) => {
|
|
3572
|
-
const { toolInfo } = await import("./tools-
|
|
3572
|
+
const { toolInfo } = await import("./tools-K2P77L4T.js");
|
|
3573
3573
|
await toolInfo(name, RESERVED_OPTION_NAMES);
|
|
3574
3574
|
});
|
|
3575
3575
|
toolsCmd.command("call <name>").description("Execute a tool by name").option("--args <json>", "Tool arguments as JSON (or pipe JSON via stdin)").allowUnknownOption(true).allowExcessArguments(true).addHelpText(
|
|
@@ -3609,7 +3609,7 @@ Examples:
|
|
|
3609
3609
|
stdinJson,
|
|
3610
3610
|
reservedNames: RESERVED_OPTION_NAMES,
|
|
3611
3611
|
lookupSchema: async (toolName) => {
|
|
3612
|
-
const { loadToolCatalog } = await import("./tools-
|
|
3612
|
+
const { loadToolCatalog } = await import("./tools-K2P77L4T.js");
|
|
3613
3613
|
const catalog = await loadToolCatalog();
|
|
3614
3614
|
return catalog.find((t) => t.name === toolName)?.inputSchema;
|
|
3615
3615
|
}
|
|
@@ -3627,7 +3627,7 @@ Examples:
|
|
|
3627
3627
|
await executeTool(plan.toolName, plan.args, timeout);
|
|
3628
3628
|
});
|
|
3629
3629
|
toolsCmd.command("refresh").description("Force-refresh the tool catalog cache").action(async () => {
|
|
3630
|
-
const { refreshTools } = await import("./tools-
|
|
3630
|
+
const { refreshTools } = await import("./tools-K2P77L4T.js");
|
|
3631
3631
|
await refreshTools();
|
|
3632
3632
|
});
|
|
3633
3633
|
var configCmd = program2.command("config").description("Generate configuration for MCP clients");
|
|
@@ -3686,7 +3686,7 @@ program2.command("init").description(
|
|
|
3686
3686
|
await runSetup();
|
|
3687
3687
|
return;
|
|
3688
3688
|
}
|
|
3689
|
-
const { runInitAll } = await import("./init-all-
|
|
3689
|
+
const { runInitAll } = await import("./init-all-UDWHV2ER.js");
|
|
3690
3690
|
const exitCode = await runInitAll({
|
|
3691
3691
|
all: Boolean(opts.all),
|
|
3692
3692
|
browser: Boolean(opts.browser),
|
|
@@ -3704,7 +3704,7 @@ program2.command("uninstall").description(
|
|
|
3704
3704
|
"--all",
|
|
3705
3705
|
"Clean every known client (default; explicit flag for symmetry with `init --all`)"
|
|
3706
3706
|
).option("--dry-run", "Preview removals without changing anything").action(async (opts) => {
|
|
3707
|
-
const { runUninstall } = await import("./uninstall-
|
|
3707
|
+
const { runUninstall } = await import("./uninstall-I6ERJ2ED.js");
|
|
3708
3708
|
const exitCode = await runUninstall({
|
|
3709
3709
|
all: opts.all !== false,
|
|
3710
3710
|
dryRun: Boolean(opts.dryRun),
|
|
@@ -3742,7 +3742,7 @@ program2.command("doctor").description("Diagnose environment and server connecti
|
|
|
3742
3742
|
"--fix",
|
|
3743
3743
|
"Rewrite stale Hive entries in MCP client configs (backs each file up first)"
|
|
3744
3744
|
).action(async (opts) => {
|
|
3745
|
-
const { runDoctor } = await import("./doctor-
|
|
3745
|
+
const { runDoctor } = await import("./doctor-DUXJWV3F.js");
|
|
3746
3746
|
await runDoctor(opts);
|
|
3747
3747
|
});
|
|
3748
3748
|
program2.command("upgrade").description("Update Hive to the latest published version").action(async () => {
|
|
@@ -3751,10 +3751,10 @@ program2.command("upgrade").description("Update Hive to the latest published ver
|
|
|
3751
3751
|
});
|
|
3752
3752
|
program2.command("completion <shell>").description("Generate shell completion script (bash, zsh, fish, powershell)").option("--install", "Auto-install to shell rc file").action(async (shell, opts) => {
|
|
3753
3753
|
if (opts.install) {
|
|
3754
|
-
const { installCompletion } = await import("./completion-
|
|
3754
|
+
const { installCompletion } = await import("./completion-DCZIPROK.js");
|
|
3755
3755
|
await installCompletion(shell);
|
|
3756
3756
|
} else {
|
|
3757
|
-
const { generateCompletion } = await import("./completion-
|
|
3757
|
+
const { generateCompletion } = await import("./completion-DCZIPROK.js");
|
|
3758
3758
|
await generateCompletion(shell);
|
|
3759
3759
|
}
|
|
3760
3760
|
});
|
|
@@ -3790,7 +3790,7 @@ program2.command("usage").description("Show your API usage and plan limits").act
|
|
|
3790
3790
|
await runUsage();
|
|
3791
3791
|
});
|
|
3792
3792
|
program2.command("status").description("Quick health and version check").action(async () => {
|
|
3793
|
-
const { runStatus } = await import("./doctor-
|
|
3793
|
+
const { runStatus } = await import("./doctor-DUXJWV3F.js");
|
|
3794
3794
|
await runStatus();
|
|
3795
3795
|
});
|
|
3796
3796
|
program2.command("open [target]").description("Open Hive dashboard, docs, status, or GitHub in browser").action(async (target) => {
|
|
@@ -296,7 +296,7 @@ ${fails === 0 ? "All checks passed" : `${fails} issues found`}${warns ? ` (${war
|
|
|
296
296
|
if (fails > 0) process.exit(1);
|
|
297
297
|
}
|
|
298
298
|
async function runStatus() {
|
|
299
|
-
const { SERVER_VERSION } = await import("./mcpServer-
|
|
299
|
+
const { SERVER_VERSION } = await import("./mcpServer-NWKQ4LCN.js");
|
|
300
300
|
const { resolveApiKey, resolveApiUrl } = await import("./config-dir-2QLA5PXD.js");
|
|
301
301
|
const { getActiveProfile, maskKey } = await import("./auth-6XVL5CE3.js");
|
|
302
302
|
const apiUrl = resolveApiUrl();
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
detectClients,
|
|
7
7
|
installSkillsForClients
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-5J4CWTI5.js";
|
|
9
9
|
import {
|
|
10
10
|
browserLogin
|
|
11
11
|
} from "./chunk-BDO27NIP.js";
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
writeWindsurfConfig
|
|
28
28
|
} from "./chunk-QDZ7MAVN.js";
|
|
29
29
|
import "./chunk-M6REON2I.js";
|
|
30
|
-
import "./chunk-
|
|
30
|
+
import "./chunk-QYK3EWTE.js";
|
|
31
31
|
import "./chunk-ZXKFJQDE.js";
|
|
32
32
|
import {
|
|
33
33
|
bold,
|
|
@@ -9,8 +9,8 @@ import {
|
|
|
9
9
|
getToolsForScope,
|
|
10
10
|
memoizedJsonSchemaToZodInputSchema,
|
|
11
11
|
memoizedJsonSchemaToZodOutputSchema
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-ZRAW5MXW.js";
|
|
13
|
+
import "./chunk-QYK3EWTE.js";
|
|
14
14
|
import "./chunk-EPF36Q3Z.js";
|
|
15
15
|
import {
|
|
16
16
|
PUBLIC_MCP_REGISTRY_ID,
|
package/build/monitor-worker.js
CHANGED
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
executeToolByName,
|
|
5
5
|
refundCredits,
|
|
6
6
|
refundSettled
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-V7TBL47R.js";
|
|
8
8
|
import {
|
|
9
9
|
HyperliquidAPI,
|
|
10
10
|
MIN_MONITOR_CADENCE_MS,
|
|
@@ -17,8 +17,8 @@ import {
|
|
|
17
17
|
monitorCadenceIntervalMs,
|
|
18
18
|
runScheduledHealthCanaries,
|
|
19
19
|
secureLogger
|
|
20
|
-
} from "./chunk-
|
|
21
|
-
import "./chunk-
|
|
20
|
+
} from "./chunk-ZRAW5MXW.js";
|
|
21
|
+
import "./chunk-QYK3EWTE.js";
|
|
22
22
|
import "./chunk-EPF36Q3Z.js";
|
|
23
23
|
import "./chunk-ZXKFJQDE.js";
|
|
24
24
|
import "./chunk-OMO7XLC5.js";
|
package/build/release.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"package": "hive-intelligence",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"buildSha": "
|
|
5
|
-
"imageDigest": "sha256:
|
|
3
|
+
"version": "1.13.0",
|
|
4
|
+
"buildSha": "97bb981841e65ba3c48c31bf14ae02fdecd7b502",
|
|
5
|
+
"imageDigest": "sha256:17ebc81537ba98c83bb68acbf974e0a4d2c96990cbf70a7632a4fd9d78f5b657",
|
|
6
6
|
"deployedUrl": "https://mcp.hiveintelligence.xyz",
|
|
7
|
-
"manifest": "https://raw.githubusercontent.com/hive-intel/hive-sdk/v1.
|
|
7
|
+
"manifest": "https://raw.githubusercontent.com/hive-intel/hive-sdk/v1.13.0/releases/v1.13.0.json"
|
|
8
8
|
}
|
|
@@ -49,7 +49,7 @@ async function startStdio(envFile, opts = {}) {
|
|
|
49
49
|
console.log = (...args) => console.error("[LOG]", ...args);
|
|
50
50
|
if (resolveStdioMode(opts) === "proxy") return startStdioProxy();
|
|
51
51
|
const { StdioServerTransport } = await import("@modelcontextprotocol/sdk/server/stdio.js");
|
|
52
|
-
const { createHiveMcpServer, SERVER_NAME, SERVER_VERSION } = await import("./mcpServer-
|
|
52
|
+
const { createHiveMcpServer, SERVER_NAME, SERVER_VERSION } = await import("./mcpServer-NWKQ4LCN.js");
|
|
53
53
|
const { getPendingUpdateVersion } = await import("./update-check-36QU6PKA.js");
|
|
54
54
|
const transport = new StdioServerTransport();
|
|
55
55
|
const pendingUpdate = getPendingUpdateVersion();
|
|
@@ -98,7 +98,7 @@ async function startStdioProxy() {
|
|
|
98
98
|
notice: () => updateNotice(getPendingUpdateVersion(), SERVER_VERSION)
|
|
99
99
|
});
|
|
100
100
|
if (Object.keys(process.env).some(
|
|
101
|
-
(k) => /^(COINGECKO|ALCHEMY|GOPLUS|HELIUS|
|
|
101
|
+
(k) => /^(COINGECKO|ALCHEMY|GOPLUS|HELIUS|TENDERLY)_/.test(k)
|
|
102
102
|
)) {
|
|
103
103
|
console.error(
|
|
104
104
|
"Hive: provider keys found in env but ignored; hosted Hive serves every provider. Set HIVE_STDIO_MODE=local to run providers with your own keys."
|
package/build/server.js
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
getWalletStatus,
|
|
9
9
|
refundCredits,
|
|
10
10
|
refundSettled
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-V7TBL47R.js";
|
|
12
12
|
import {
|
|
13
13
|
CategoryEndpoints,
|
|
14
14
|
HERO_TOOL_NAMES,
|
|
@@ -62,6 +62,7 @@ import {
|
|
|
62
62
|
getSupabaseAdmin,
|
|
63
63
|
getTaskCanaryCatalog,
|
|
64
64
|
getTaskCanaryHistory,
|
|
65
|
+
getUserPlanId,
|
|
65
66
|
getWorkflowRegressionCatalog,
|
|
66
67
|
getWorkflowRegressionHistory,
|
|
67
68
|
hasSubjectSigningSecret,
|
|
@@ -104,10 +105,10 @@ import {
|
|
|
104
105
|
validateEndpointArgs,
|
|
105
106
|
verifyApiKey,
|
|
106
107
|
waitForRedisAvailability
|
|
107
|
-
} from "./chunk-
|
|
108
|
+
} from "./chunk-ZRAW5MXW.js";
|
|
108
109
|
import {
|
|
109
110
|
HIVE_AGENT_SKILLS
|
|
110
|
-
} from "./chunk-
|
|
111
|
+
} from "./chunk-QYK3EWTE.js";
|
|
111
112
|
import "./chunk-EPF36Q3Z.js";
|
|
112
113
|
import {
|
|
113
114
|
PUBLIC_MCP_REGISTRY_ID,
|
|
@@ -2572,10 +2573,9 @@ function attachVerifiedContext(req, res, key, result, quotaRemaining, rateDecisi
|
|
|
2572
2573
|
authReq.apiKey = key;
|
|
2573
2574
|
authReq.apiKeyEnvironment = getKeyEnvironment(key);
|
|
2574
2575
|
authReq.userId = result.userId;
|
|
2575
|
-
authReq.planId = result.planId;
|
|
2576
2576
|
authReq.unkeyKeyId = result.keyId;
|
|
2577
2577
|
authReq.quotaRemaining = quotaRemaining ?? void 0;
|
|
2578
|
-
authReq.ratelimitRemaining = rateDecision
|
|
2578
|
+
authReq.ratelimitRemaining = rateDecision.remaining;
|
|
2579
2579
|
authReq.unkeyResult = result;
|
|
2580
2580
|
if (quotaRemaining !== void 0) {
|
|
2581
2581
|
res.setHeader(
|
|
@@ -2583,12 +2583,8 @@ function attachVerifiedContext(req, res, key, result, quotaRemaining, rateDecisi
|
|
|
2583
2583
|
quotaRemaining === null ? "unlimited" : String(quotaRemaining)
|
|
2584
2584
|
);
|
|
2585
2585
|
}
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
if (limit !== void 0 && remaining !== void 0) {
|
|
2589
|
-
res.setHeader("X-RateLimit-Remaining", String(remaining));
|
|
2590
|
-
res.setHeader("X-RateLimit-Limit", String(limit));
|
|
2591
|
-
}
|
|
2586
|
+
res.setHeader("X-RateLimit-Remaining", String(rateDecision.remaining));
|
|
2587
|
+
res.setHeader("X-RateLimit-Limit", String(rateDecision.limit));
|
|
2592
2588
|
}
|
|
2593
2589
|
function deferApiKeyCreditDebit(req, _res, next) {
|
|
2594
2590
|
req.deferCreditDebit = true;
|
|
@@ -3427,7 +3423,6 @@ router4.get(
|
|
|
3427
3423
|
"/",
|
|
3428
3424
|
asyncHandler(async (req, res) => {
|
|
3429
3425
|
let userId;
|
|
3430
|
-
let planId;
|
|
3431
3426
|
let credentialRejected = false;
|
|
3432
3427
|
const authHeader = req.headers.authorization;
|
|
3433
3428
|
if (authHeader?.startsWith("Bearer ")) {
|
|
@@ -3436,7 +3431,6 @@ router4.get(
|
|
|
3436
3431
|
const result = await verifyApiKey(token);
|
|
3437
3432
|
if (result.valid) {
|
|
3438
3433
|
userId = result.userId;
|
|
3439
|
-
planId = result.planId;
|
|
3440
3434
|
} else {
|
|
3441
3435
|
credentialRejected = true;
|
|
3442
3436
|
}
|
|
@@ -3454,7 +3448,6 @@ router4.get(
|
|
|
3454
3448
|
const result = await verifyApiKey(apiKeyHeader);
|
|
3455
3449
|
if (result.valid) {
|
|
3456
3450
|
userId = result.userId;
|
|
3457
|
-
planId = result.planId;
|
|
3458
3451
|
credentialRejected = false;
|
|
3459
3452
|
} else {
|
|
3460
3453
|
credentialRejected = true;
|
|
@@ -3475,11 +3468,7 @@ router4.get(
|
|
|
3475
3468
|
)
|
|
3476
3469
|
);
|
|
3477
3470
|
}
|
|
3478
|
-
|
|
3479
|
-
const { data: profile } = await getSupabaseAdmin().from("user_profiles").select("plan_id").eq("id", userId).single();
|
|
3480
|
-
planId = profile?.plan_id ?? "demo";
|
|
3481
|
-
}
|
|
3482
|
-
const resolvedPlanId = planId ?? "demo";
|
|
3471
|
+
const resolvedPlanId = await getUserPlanId(userId);
|
|
3483
3472
|
const { data: plan } = await getSupabaseAdmin().from("plans").select("*").eq("id", resolvedPlanId).single();
|
|
3484
3473
|
await ensureWallet(userId, resolvedPlanId);
|
|
3485
3474
|
const wallet = await getWalletStatus(userId);
|
|
@@ -3563,11 +3552,10 @@ function buildB2BReadinessPayload(args) {
|
|
|
3563
3552
|
valid: true,
|
|
3564
3553
|
...args.verifyResult?.keyId ? { key_id: args.verifyResult.keyId } : {},
|
|
3565
3554
|
...args.verifyResult?.userId ? { owner_user_id: args.verifyResult.userId } : {},
|
|
3566
|
-
...args.
|
|
3555
|
+
...args.planId ? { plan_id: args.planId } : {},
|
|
3567
3556
|
...args.verifyResult?.name ? { name: args.verifyResult.name } : {},
|
|
3568
3557
|
b2b_subjects_enabled: b2bEnabled,
|
|
3569
|
-
subject_signing_secret_configured: secretConfigured
|
|
3570
|
-
...args.verifyResult?.ratelimit ? { ratelimit_remaining: args.verifyResult.ratelimit.remaining } : {}
|
|
3558
|
+
subject_signing_secret_configured: secretConfigured
|
|
3571
3559
|
},
|
|
3572
3560
|
state: {
|
|
3573
3561
|
stateful_tools_supported: args.authBackend === "unkey",
|
|
@@ -3665,7 +3653,10 @@ router5.get(
|
|
|
3665
3653
|
ok: true,
|
|
3666
3654
|
data: buildB2BReadinessPayload({
|
|
3667
3655
|
authBackend: "unkey",
|
|
3668
|
-
verifyResult: result
|
|
3656
|
+
verifyResult: result,
|
|
3657
|
+
// Optional in the payload: a plan lookup failure must not fail the
|
|
3658
|
+
// readiness check, so it omits plan_id instead.
|
|
3659
|
+
planId: await getUserPlanId(result.userId).catch(() => void 0)
|
|
3669
3660
|
})
|
|
3670
3661
|
});
|
|
3671
3662
|
}
|
|
@@ -6962,8 +6953,9 @@ async function debitMcpCredits(args) {
|
|
|
6962
6953
|
};
|
|
6963
6954
|
}
|
|
6964
6955
|
if (debit.code === "insufficient") {
|
|
6956
|
+
const planId = await getUserPlanId(args.userId).catch(() => void 0);
|
|
6965
6957
|
const copy = buildMcpQuotaExhaustedCopy({
|
|
6966
|
-
planId
|
|
6958
|
+
planId,
|
|
6967
6959
|
cycleEnd: debit.cycleEnd
|
|
6968
6960
|
});
|
|
6969
6961
|
return {
|
|
@@ -7754,8 +7746,7 @@ function createStatelessMcpHandler(scope) {
|
|
|
7754
7746
|
const debit = await debitMcpCredits({
|
|
7755
7747
|
userId: keyedAuth.userId,
|
|
7756
7748
|
keyId: keyedAuth.keyId,
|
|
7757
|
-
requestId: req.requestId
|
|
7758
|
-
planId: typeof keyedAuth.keyMeta?.plan === "string" ? keyedAuth.keyMeta.plan : void 0
|
|
7749
|
+
requestId: req.requestId
|
|
7759
7750
|
});
|
|
7760
7751
|
if (!debit.ok) {
|
|
7761
7752
|
if (debit.noWallet) {
|
|
@@ -8775,7 +8766,6 @@ async function setupServer() {
|
|
|
8775
8766
|
"GOPLUS_APP_KEY",
|
|
8776
8767
|
"GOPLUS_APP_SECRET",
|
|
8777
8768
|
"ALCHEMY_API_KEY",
|
|
8778
|
-
"MORALIS_API_KEY",
|
|
8779
8769
|
"TENDERLY_API_KEY",
|
|
8780
8770
|
"HELIUS_API_KEY"
|
|
8781
8771
|
];
|
package/build/stdio.js
CHANGED
|
@@ -42,7 +42,7 @@ async function listTools(opts) {
|
|
|
42
42
|
tools = tools.filter((t) => t.name.toLowerCase().startsWith(prefix + "_"));
|
|
43
43
|
}
|
|
44
44
|
if (opts.category) {
|
|
45
|
-
const { NAMESPACE } = await import("./namespace-
|
|
45
|
+
const { NAMESPACE } = await import("./namespace-E4EPVXJ3.js");
|
|
46
46
|
const cat = opts.category.toLowerCase();
|
|
47
47
|
const ns = NAMESPACE.find(
|
|
48
48
|
(d) => d.name === cat || d.description.toLowerCase().includes(cat)
|
|
@@ -2,7 +2,7 @@ import { createRequire } from 'node:module'; const require = createRequire(impor
|
|
|
2
2
|
import {
|
|
3
3
|
detectClients,
|
|
4
4
|
removeSkillsForClients
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-5J4CWTI5.js";
|
|
6
6
|
import {
|
|
7
7
|
removeRecordedRoutingBlocks
|
|
8
8
|
} from "./chunk-APBLB62S.js";
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
removeWindsurfConfig
|
|
17
17
|
} from "./chunk-QDZ7MAVN.js";
|
|
18
18
|
import "./chunk-ZSPPJW4G.js";
|
|
19
|
-
import "./chunk-
|
|
19
|
+
import "./chunk-QYK3EWTE.js";
|
|
20
20
|
import {
|
|
21
21
|
bold,
|
|
22
22
|
dim,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hive-intelligence",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.13.0",
|
|
4
4
|
"description": "Evidence-backed crypto due diligence for AI agents, with sources, freshness, and a runtime receipt on every call.",
|
|
5
5
|
"mcpName": "xyz.hiveintelligence/mcp",
|
|
6
6
|
"type": "module",
|
|
@@ -96,7 +96,6 @@
|
|
|
96
96
|
"solana",
|
|
97
97
|
"coingecko",
|
|
98
98
|
"defillama",
|
|
99
|
-
"moralis",
|
|
100
99
|
"helius",
|
|
101
100
|
"goplus",
|
|
102
101
|
"tenderly",
|