nodebench-mcp 3.1.3 → 3.1.5
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 +1 -1
- package/dist/analytics/schema.d.ts +24 -10
- package/dist/analytics/schema.js +44 -1
- package/dist/analytics/schema.js.map +1 -1
- package/dist/analytics/smartPreset.d.ts +2 -2
- package/dist/analytics/smartPreset.js.map +1 -1
- package/dist/analytics/toolTracker.d.ts +3 -3
- package/dist/analytics/toolTracker.js.map +1 -1
- package/dist/analytics/usageStats.d.ts +10 -10
- package/dist/analytics/usageStats.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +40 -18
- package/dist/index.js.map +1 -1
- package/dist/tools/metaTools.js +2 -2
- package/dist/tools/metaTools.js.map +1 -1
- package/package.json +4 -3
- package/server.json +2 -2
package/README.md
CHANGED
|
@@ -372,7 +372,7 @@ TOON (Token-Oriented Object Notation) is on by default. Every tool response is T
|
|
|
372
372
|
|
|
373
373
|
NodeBench MCP runs locally on your machine.
|
|
374
374
|
|
|
375
|
-
-
|
|
375
|
+
- Local runtime data lives under `~/.nodebench/`. Native SQLite is used when the addon is available; lightweight mode skips the native persistence layer. No data is sent to external servers unless you provide API keys and use tools that call external APIs.
|
|
376
376
|
- Analytics data never leaves your machine.
|
|
377
377
|
- The `local_file` toolset can read files anywhere your Node.js process has permission. Use the `default` preset to keep local-file tools off the hot path.
|
|
378
378
|
- All API keys read from environment variables — never hardcoded or logged.
|
|
@@ -4,7 +4,21 @@
|
|
|
4
4
|
* Tracks tool usage, project context, and generates smart preset recommendations.
|
|
5
5
|
* All data stored locally in SQLite at ~/.nodebench/analytics.db
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
export type AnalyticsStatementResult = {
|
|
8
|
+
changes: number;
|
|
9
|
+
lastInsertRowid: number;
|
|
10
|
+
};
|
|
11
|
+
export interface AnalyticsStatement {
|
|
12
|
+
get: (...args: unknown[]) => Record<string, unknown> | undefined;
|
|
13
|
+
all: (...args: unknown[]) => unknown[];
|
|
14
|
+
run: (...args: unknown[]) => AnalyticsStatementResult;
|
|
15
|
+
}
|
|
16
|
+
export interface AnalyticsDb {
|
|
17
|
+
prepare: (sql: string) => AnalyticsStatement;
|
|
18
|
+
exec: (sql: string) => void;
|
|
19
|
+
pragma: (sql: string) => void;
|
|
20
|
+
close: () => void;
|
|
21
|
+
}
|
|
8
22
|
export interface ToolUsageRecord {
|
|
9
23
|
id?: number;
|
|
10
24
|
toolName: string;
|
|
@@ -46,12 +60,12 @@ export interface UsageStatsCacheRecord {
|
|
|
46
60
|
computedAt: number;
|
|
47
61
|
ttl: number;
|
|
48
62
|
}
|
|
49
|
-
export declare function initAnalyticsDb():
|
|
50
|
-
export declare function getAnalyticsDb():
|
|
51
|
-
export declare function closeAnalyticsDb(db:
|
|
52
|
-
export declare function recordToolUsage(db:
|
|
53
|
-
export declare function updateProjectContext(db:
|
|
54
|
-
export declare function recordPresetSelection(db:
|
|
55
|
-
export declare function getCachedStats(db:
|
|
56
|
-
export declare function setCachedStats(db:
|
|
57
|
-
export declare function clearOldRecords(db:
|
|
63
|
+
export declare function initAnalyticsDb(): AnalyticsDb;
|
|
64
|
+
export declare function getAnalyticsDb(): AnalyticsDb;
|
|
65
|
+
export declare function closeAnalyticsDb(db: AnalyticsDb): void;
|
|
66
|
+
export declare function recordToolUsage(db: AnalyticsDb, record: Omit<ToolUsageRecord, 'id'>): void;
|
|
67
|
+
export declare function updateProjectContext(db: AnalyticsDb, context: Omit<ProjectContextRecord, 'id'>): void;
|
|
68
|
+
export declare function recordPresetSelection(db: AnalyticsDb, record: Omit<PresetHistoryRecord, 'id'>): void;
|
|
69
|
+
export declare function getCachedStats(db: AnalyticsDb, projectPath: string, cacheKey: string): string | null;
|
|
70
|
+
export declare function setCachedStats(db: AnalyticsDb, record: Omit<UsageStatsCacheRecord, 'id'>): void;
|
|
71
|
+
export declare function clearOldRecords(db: AnalyticsDb, daysToKeep?: number): void;
|
package/dist/analytics/schema.js
CHANGED
|
@@ -4,14 +4,57 @@
|
|
|
4
4
|
* Tracks tool usage, project context, and generates smart preset recommendations.
|
|
5
5
|
* All data stored locally in SQLite at ~/.nodebench/analytics.db
|
|
6
6
|
*/
|
|
7
|
-
import
|
|
7
|
+
import { createRequire } from "node:module";
|
|
8
8
|
import path from 'path';
|
|
9
9
|
import os from 'os';
|
|
10
10
|
import fs from 'fs';
|
|
11
|
+
const require = createRequire(import.meta.url);
|
|
11
12
|
const DB_DIR = path.join(os.homedir(), '.nodebench');
|
|
12
13
|
const DB_PATH = path.join(DB_DIR, 'analytics.db');
|
|
13
14
|
let _analyticsDb = null;
|
|
15
|
+
let _databaseCtor;
|
|
16
|
+
function loadDatabaseCtor() {
|
|
17
|
+
if (_databaseCtor !== undefined)
|
|
18
|
+
return _databaseCtor;
|
|
19
|
+
try {
|
|
20
|
+
_databaseCtor = require("better-sqlite3");
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
_databaseCtor = null;
|
|
24
|
+
}
|
|
25
|
+
return _databaseCtor;
|
|
26
|
+
}
|
|
27
|
+
function createNoopStatement(sql) {
|
|
28
|
+
const normalized = sql.toLowerCase();
|
|
29
|
+
return {
|
|
30
|
+
get: () => {
|
|
31
|
+
if (normalized.includes("count("))
|
|
32
|
+
return { count: 0, cnt: 0, c: 0 };
|
|
33
|
+
if (normalized.includes("sum("))
|
|
34
|
+
return { total: 0, count: 0, cnt: 0 };
|
|
35
|
+
if (normalized.includes("avg("))
|
|
36
|
+
return { avg: 0, avgDuration: 0, avg_dur: 0 };
|
|
37
|
+
return undefined;
|
|
38
|
+
},
|
|
39
|
+
all: () => [],
|
|
40
|
+
run: () => ({ changes: 0, lastInsertRowid: 0 }),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
function createNoopAnalyticsDb() {
|
|
44
|
+
return {
|
|
45
|
+
prepare(sql) {
|
|
46
|
+
return createNoopStatement(sql);
|
|
47
|
+
},
|
|
48
|
+
exec() { },
|
|
49
|
+
pragma() { },
|
|
50
|
+
close() { },
|
|
51
|
+
};
|
|
52
|
+
}
|
|
14
53
|
export function initAnalyticsDb() {
|
|
54
|
+
const Database = loadDatabaseCtor();
|
|
55
|
+
if (!Database) {
|
|
56
|
+
return createNoopAnalyticsDb();
|
|
57
|
+
}
|
|
15
58
|
fs.mkdirSync(DB_DIR, { recursive: true });
|
|
16
59
|
const db = new Database(DB_PATH);
|
|
17
60
|
// Enable WAL mode for better concurrency
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/analytics/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/analytics/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
* score <= 0.55 → recommend default
|
|
16
16
|
* confidence = f(history_weight, failure_penalty)
|
|
17
17
|
*/
|
|
18
|
-
import Database from 'better-sqlite3';
|
|
19
18
|
import { type ProjectContext } from './projectDetector.js';
|
|
19
|
+
import type { AnalyticsDb } from './schema.js';
|
|
20
20
|
import type { McpTool } from '../types.js';
|
|
21
21
|
export interface PresetRecommendation {
|
|
22
22
|
preset: 'default' | 'full';
|
|
@@ -52,7 +52,7 @@ export interface PresetConfig {
|
|
|
52
52
|
toolsets: string[];
|
|
53
53
|
toolCount: number;
|
|
54
54
|
}
|
|
55
|
-
export declare function generateSmartPreset(db:
|
|
55
|
+
export declare function generateSmartPreset(db: AnalyticsDb, toolsetMap: Record<string, McpTool[]>, projectPath?: string): PresetRecommendation;
|
|
56
56
|
export declare function getPresetConfig(preset: 'default' | 'full', toolsetMap: Record<string, McpTool[]>): PresetConfig;
|
|
57
57
|
export declare function listPresets(toolsetMap: Record<string, McpTool[]>): Array<{
|
|
58
58
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartPreset.js","sourceRoot":"","sources":["../../src/analytics/smartPreset.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"smartPreset.js","sourceRoot":"","sources":["../../src/analytics/smartPreset.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* session stats, retention cleanup, and graceful shutdown.
|
|
6
6
|
* index.ts calls tracker.record() instead of inline SQL.
|
|
7
7
|
*/
|
|
8
|
-
import
|
|
8
|
+
import type { AnalyticsDb } from './schema.js';
|
|
9
9
|
export interface TrackerConfig {
|
|
10
10
|
projectPath: string;
|
|
11
11
|
preset: string;
|
|
@@ -44,7 +44,7 @@ export declare class AnalyticsTracker {
|
|
|
44
44
|
/** Get existing instance (returns null if not initialized) */
|
|
45
45
|
static get(): AnalyticsTracker | null;
|
|
46
46
|
/** Underlying DB handle (for stats queries that need it) */
|
|
47
|
-
getDb():
|
|
47
|
+
getDb(): AnalyticsDb;
|
|
48
48
|
/**
|
|
49
49
|
* Record a tool call outcome. Called from the CallToolRequestSchema handler.
|
|
50
50
|
* Returns silently on any error — analytics must never break tool dispatch.
|
|
@@ -56,4 +56,4 @@ export declare class AnalyticsTracker {
|
|
|
56
56
|
private _initProjectContext;
|
|
57
57
|
}
|
|
58
58
|
/** @deprecated Use AnalyticsTracker.init() instead */
|
|
59
|
-
export declare function initializeProjectContext(db:
|
|
59
|
+
export declare function initializeProjectContext(db: AnalyticsDb, projectPath: string | undefined, preset: string, toolCount?: number): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolTracker.js","sourceRoot":"","sources":["../../src/analytics/toolTracker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"toolTracker.js","sourceRoot":"","sources":["../../src/analytics/toolTracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Aggregates tool usage data to generate insights and recommendations.
|
|
5
5
|
*/
|
|
6
|
-
import
|
|
6
|
+
import type { AnalyticsDb } from './schema.js';
|
|
7
7
|
export interface ToolUsageStats {
|
|
8
8
|
toolName: string;
|
|
9
9
|
toolset: string;
|
|
@@ -45,20 +45,20 @@ export interface UsageTrend {
|
|
|
45
45
|
uniqueTools: number;
|
|
46
46
|
avgDuration: number;
|
|
47
47
|
}
|
|
48
|
-
export declare function getToolUsageStats(db:
|
|
49
|
-
export declare function getToolsetUsageStats(db:
|
|
50
|
-
export declare function getProjectUsageSummary(db:
|
|
51
|
-
export declare function getUsageTrend(db:
|
|
52
|
-
export declare function getUnusedTools(db:
|
|
53
|
-
export declare function getFrequentlyFailingTools(db:
|
|
48
|
+
export declare function getToolUsageStats(db: AnalyticsDb, projectPath: string, days?: number): ToolUsageStats[];
|
|
49
|
+
export declare function getToolsetUsageStats(db: AnalyticsDb, projectPath: string, days?: number): ToolsetUsageStats[];
|
|
50
|
+
export declare function getProjectUsageSummary(db: AnalyticsDb, projectPath: string, days?: number): ProjectUsageSummary | null;
|
|
51
|
+
export declare function getUsageTrend(db: AnalyticsDb, projectPath: string, days?: number): UsageTrend[];
|
|
52
|
+
export declare function getUnusedTools(db: AnalyticsDb, projectPath: string, availableTools: string[], days?: number): string[];
|
|
53
|
+
export declare function getFrequentlyFailingTools(db: AnalyticsDb, projectPath: string, days?: number, minFailures?: number): Array<{
|
|
54
54
|
toolName: string;
|
|
55
55
|
failureCount: number;
|
|
56
56
|
lastError: string | null;
|
|
57
57
|
}>;
|
|
58
|
-
export declare function getAllProjects(db:
|
|
58
|
+
export declare function getAllProjects(db: AnalyticsDb): Array<{
|
|
59
59
|
projectPath: string;
|
|
60
60
|
lastSeen: number;
|
|
61
61
|
}>;
|
|
62
|
-
export declare function exportUsageStats(db:
|
|
63
|
-
export declare function getCachedProjectSummary(db:
|
|
62
|
+
export declare function exportUsageStats(db: AnalyticsDb, projectPath: string, days?: number): string;
|
|
63
|
+
export declare function getCachedProjectSummary(db: AnalyticsDb, projectPath: string, days?: number): ProjectUsageSummary | null;
|
|
64
64
|
export declare function formatStatsDisplay(summary: ProjectUsageSummary, projectPath: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usageStats.js","sourceRoot":"","sources":["../../src/analytics/usageStats.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"usageStats.js","sourceRoot":"","sources":["../../src/analytics/usageStats.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* NodeBench MCP — Development Methodology Edition
|
|
4
4
|
*
|
|
5
|
-
* Zero-config, fully local MCP server
|
|
5
|
+
* Zero-config, fully local MCP server. Uses native SQLite when available and
|
|
6
|
+
* falls back to a lightweight local mode when the native addon is absent.
|
|
6
7
|
* Packages the 6-Phase Verification, Eval-Driven Development, AI Flywheel,
|
|
7
8
|
* Quality Gates, and Learnings methodologies as MCP tools that guide agents
|
|
8
9
|
* to work more rigorously.
|
|
9
10
|
*
|
|
10
|
-
*
|
|
11
|
+
* Local runtime data lives under ~/.nodebench/
|
|
11
12
|
*
|
|
12
13
|
* Uses the low-level Server class to register tools with raw JSON Schema
|
|
13
14
|
* (the high-level McpServer.tool() requires Zod schemas in SDK >=1.17).
|
package/dist/index.js
CHANGED
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* NodeBench MCP — Development Methodology Edition
|
|
4
4
|
*
|
|
5
|
-
* Zero-config, fully local MCP server
|
|
5
|
+
* Zero-config, fully local MCP server. Uses native SQLite when available and
|
|
6
|
+
* falls back to a lightweight local mode when the native addon is absent.
|
|
6
7
|
* Packages the 6-Phase Verification, Eval-Driven Development, AI Flywheel,
|
|
7
8
|
* Quality Gates, and Learnings methodologies as MCP tools that guide agents
|
|
8
9
|
* to work more rigorously.
|
|
9
10
|
*
|
|
10
|
-
*
|
|
11
|
+
* Local runtime data lives under ~/.nodebench/
|
|
11
12
|
*
|
|
12
13
|
* Uses the low-level Server class to register tools with raw JSON Schema
|
|
13
14
|
* (the high-level McpServer.tool() requires Zod schemas in SDK >=1.17).
|
|
@@ -66,6 +67,15 @@ const engineSecret = (() => {
|
|
|
66
67
|
const idx = cliArgs.indexOf("--engine-secret");
|
|
67
68
|
return idx >= 0 && idx + 1 < cliArgs.length ? cliArgs[idx + 1] : process.env.ENGINE_SECRET;
|
|
68
69
|
})();
|
|
70
|
+
async function openOptionalSqlite(dbPath, options) {
|
|
71
|
+
try {
|
|
72
|
+
const Database = (await import("better-sqlite3")).default;
|
|
73
|
+
return new Database(dbPath, options);
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
69
79
|
export { TOOLSET_MAP };
|
|
70
80
|
// Starter/default: v3 core workflow facade only. Discovery/meta/dynamic tools are added separately.
|
|
71
81
|
const STARTER_TOOLSETS = ["core_workflow"];
|
|
@@ -553,17 +563,31 @@ if (healthFlag) {
|
|
|
553
563
|
const fs = await import("node:fs");
|
|
554
564
|
const dbDir = path.join(os.homedir(), ".nodebench");
|
|
555
565
|
const dbPath = path.join(dbDir, "nodebench.db");
|
|
566
|
+
const { createRequire } = await import("node:module");
|
|
567
|
+
const _require = createRequire(import.meta.url);
|
|
568
|
+
const _isInstalled = (pkg) => { try {
|
|
569
|
+
_require.resolve(pkg);
|
|
570
|
+
return true;
|
|
571
|
+
}
|
|
572
|
+
catch {
|
|
573
|
+
return false;
|
|
574
|
+
} };
|
|
575
|
+
const sqliteInstalled = _isInstalled("better-sqlite3");
|
|
556
576
|
const dbExists = fs.existsSync(dbPath);
|
|
557
577
|
let dbSize = "";
|
|
558
578
|
if (dbExists) {
|
|
559
579
|
const stat = fs.statSync(dbPath);
|
|
560
580
|
dbSize = ` (${(stat.size / 1024).toFixed(0)} KB)`;
|
|
561
581
|
}
|
|
562
|
-
lines.push(`${C}Database${X} ${
|
|
582
|
+
lines.push(`${C}Database${X} ${sqliteInstalled
|
|
583
|
+
? (dbExists ? `${ok}${dbSize}` : `${warn} not initialized (will create on first run)`)
|
|
584
|
+
: `${warn} lightweight mode (native SQLite addon not installed)`}`);
|
|
563
585
|
// 4. Analytics DB
|
|
564
586
|
const analyticsPath = path.join(dbDir, "analytics.db");
|
|
565
587
|
const analyticsExists = fs.existsSync(analyticsPath);
|
|
566
|
-
lines.push(`${C}Analytics${X} ${
|
|
588
|
+
lines.push(`${C}Analytics${X} ${sqliteInstalled
|
|
589
|
+
? (analyticsExists ? ok : `${warn} no usage data yet`)
|
|
590
|
+
: `${warn} ephemeral analytics mode`}`);
|
|
567
591
|
// 5. Embedding cache
|
|
568
592
|
const cachePath = path.join(dbDir, "embedding_cache.json");
|
|
569
593
|
const cacheExists = fs.existsSync(cachePath);
|
|
@@ -592,15 +616,6 @@ if (healthFlag) {
|
|
|
592
616
|
lines.push(` ${set ? ok : `${Y}--${X}`} ${key.padEnd(22)} ${desc}${set ? ` ${C}${val}${X}` : ""}`);
|
|
593
617
|
}
|
|
594
618
|
// 7. Optional npm packages
|
|
595
|
-
const { createRequire } = await import("node:module");
|
|
596
|
-
const _require = createRequire(import.meta.url);
|
|
597
|
-
const _isInstalled = (pkg) => { try {
|
|
598
|
-
_require.resolve(pkg);
|
|
599
|
-
return true;
|
|
600
|
-
}
|
|
601
|
-
catch {
|
|
602
|
-
return false;
|
|
603
|
-
} };
|
|
604
619
|
const packageCheckSpecs = [
|
|
605
620
|
{
|
|
606
621
|
pkg: "playwright",
|
|
@@ -712,7 +727,8 @@ if (healthFlag) {
|
|
|
712
727
|
const packageSummary = pkgChecks.length > 0
|
|
713
728
|
? `${allPkgSet}/${pkgChecks.length} packages`
|
|
714
729
|
: "no preset-specific package deps";
|
|
715
|
-
|
|
730
|
+
const dbSummary = sqliteInstalled ? (dbExists ? "DB ready" : "DB pending") : "lightweight DB mode";
|
|
731
|
+
lines.push(`${B}Summary${X} ${allEnvSet}/${envChecks.length} env vars | ${packageSummary} | ${dbSummary}`);
|
|
716
732
|
console.log(lines.join("\n"));
|
|
717
733
|
process.exit(0);
|
|
718
734
|
}
|
|
@@ -735,8 +751,11 @@ if (statusFlag) {
|
|
|
735
751
|
process.exit(1);
|
|
736
752
|
}
|
|
737
753
|
// Open DB directly for status query
|
|
738
|
-
const
|
|
739
|
-
|
|
754
|
+
const db = await openOptionalSqlite(dbPath, { readonly: true });
|
|
755
|
+
if (!db) {
|
|
756
|
+
console.error("SQLite inspection backend is unavailable in this lightweight install.");
|
|
757
|
+
process.exit(1);
|
|
758
|
+
}
|
|
740
759
|
const lines = [];
|
|
741
760
|
lines.push(`${B}${DISPLAY_NAME} - System Status${X}`);
|
|
742
761
|
lines.push("");
|
|
@@ -802,8 +821,11 @@ if (diagnoseFlag) {
|
|
|
802
821
|
console.error("No database found. Run the MCP server first to initialize.");
|
|
803
822
|
process.exit(1);
|
|
804
823
|
}
|
|
805
|
-
const
|
|
806
|
-
|
|
824
|
+
const db = await openOptionalSqlite(dbPath);
|
|
825
|
+
if (!db) {
|
|
826
|
+
console.error("SQLite repair backend is unavailable in this lightweight install.");
|
|
827
|
+
process.exit(1);
|
|
828
|
+
}
|
|
807
829
|
const lines = [];
|
|
808
830
|
lines.push(`${B}${DISPLAY_NAME} - Diagnose & Heal${X}`);
|
|
809
831
|
lines.push("");
|