memory-journal-mcp 6.3.0 → 7.0.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 +91 -74
- package/dist/{chunk-VH4SRTLB.js → chunk-2BJHLTYP.js} +1237 -97
- package/dist/{chunk-K2SCUSN4.js → chunk-ARLH46WS.js} +34 -3
- package/dist/{chunk-QQ2ZY3CH.js → chunk-SBNQ7MXZ.js} +412 -365
- package/dist/cli.js +26 -4
- package/dist/github-integration-PDRLXKGM.js +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.js +3 -3
- package/dist/tools-FFFGXIKN.js +3 -0
- package/package.json +14 -13
- package/dist/github-integration-DTNYAKVJ.js +0 -1
- package/dist/tools-P4XXHO3Z.js +0 -3
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { VERSION, createServer } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
import { VERSION, createServer } from './chunk-SBNQ7MXZ.js';
|
|
2
|
+
import { DEFAULT_AUDIT_LOG_MAX_SIZE_BYTES } from './chunk-2BJHLTYP.js';
|
|
3
3
|
import './chunk-OKOVZ5QE.js';
|
|
4
|
-
import { logger } from './chunk-
|
|
4
|
+
import { logger } from './chunk-ARLH46WS.js';
|
|
5
5
|
import { Command } from 'commander';
|
|
6
6
|
import * as fs from 'fs';
|
|
7
7
|
|
|
@@ -43,6 +43,16 @@ program.name("memory-journal-mcp").description("Project context management for A
|
|
|
43
43
|
"--oauth-clock-tolerance <seconds>",
|
|
44
44
|
"OAuth clock tolerance in seconds (default: 60)",
|
|
45
45
|
"60"
|
|
46
|
+
).option(
|
|
47
|
+
"--audit-log <path>",
|
|
48
|
+
'Enable audit logging to the specified JSONL file path, or "stderr" for container mode (env: AUDIT_LOG_PATH)'
|
|
49
|
+
).option("--audit-redact", "Redact tool arguments from audit entries (env: AUDIT_REDACT)").option(
|
|
50
|
+
"--audit-reads",
|
|
51
|
+
"Enable audit logging for read-scoped tool calls (default: off, env: AUDIT_READS)"
|
|
52
|
+
).option(
|
|
53
|
+
"--audit-log-max-size <bytes>",
|
|
54
|
+
"Maximum audit log file size in bytes before rotation (default: 10485760 / 10MB, env: AUDIT_LOG_MAX_SIZE)",
|
|
55
|
+
String(DEFAULT_AUDIT_LOG_MAX_SIZE_BYTES)
|
|
46
56
|
).option(
|
|
47
57
|
"--instruction-level <level>",
|
|
48
58
|
"Briefing depth: essential, standard, full (env: INSTRUCTION_LEVEL)",
|
|
@@ -97,6 +107,17 @@ program.name("memory-journal-mcp").description("Project context management for A
|
|
|
97
107
|
...host ? { host } : {}
|
|
98
108
|
});
|
|
99
109
|
try {
|
|
110
|
+
const auditLogPath = options.auditLog ?? process.env["AUDIT_LOG_PATH"];
|
|
111
|
+
const auditConfig = auditLogPath ? {
|
|
112
|
+
enabled: true,
|
|
113
|
+
logPath: auditLogPath,
|
|
114
|
+
redact: options.auditRedact ?? process.env["AUDIT_REDACT"] === "true",
|
|
115
|
+
auditReads: options.auditReads ?? process.env["AUDIT_READS"] === "true",
|
|
116
|
+
maxSizeBytes: parseInt(
|
|
117
|
+
process.env["AUDIT_LOG_MAX_SIZE"] ?? options.auditLogMaxSize,
|
|
118
|
+
10
|
|
119
|
+
)
|
|
120
|
+
} : void 0;
|
|
100
121
|
await createServer({
|
|
101
122
|
transport: options.transport,
|
|
102
123
|
port: parseInt(options.port, 10),
|
|
@@ -164,7 +185,8 @@ program.name("memory-journal-mcp").description("Project context management for A
|
|
|
164
185
|
workflowSummary: options.workflowSummary ?? process.env["MEMORY_JOURNAL_WORKFLOW_SUMMARY"] ?? void 0,
|
|
165
186
|
defaultProjectNumber: options.defaultProject ? parseInt(options.defaultProject, 10) : process.env["DEFAULT_PROJECT_NUMBER"] ? parseInt(process.env["DEFAULT_PROJECT_NUMBER"], 10) : void 0
|
|
166
187
|
},
|
|
167
|
-
instructionLevel: options.instructionLevel !== "standard" ? options.instructionLevel : process.env["INSTRUCTION_LEVEL"] ?? "standard"
|
|
188
|
+
instructionLevel: options.instructionLevel !== "standard" ? options.instructionLevel : process.env["INSTRUCTION_LEVEL"] ?? "standard",
|
|
189
|
+
auditConfig
|
|
168
190
|
});
|
|
169
191
|
} catch (error) {
|
|
170
192
|
logger.error("Failed to start server", {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { GitHubIntegration } from './chunk-ARLH46WS.js';
|
package/dist/index.d.ts
CHANGED
|
@@ -401,6 +401,10 @@ interface IDatabaseAdapter {
|
|
|
401
401
|
prNumber?: number;
|
|
402
402
|
prStatus?: string;
|
|
403
403
|
workflowRunId?: number;
|
|
404
|
+
tags?: string[];
|
|
405
|
+
entryType?: EntryType;
|
|
406
|
+
startDate?: string;
|
|
407
|
+
endDate?: string;
|
|
404
408
|
}): JournalEntry[];
|
|
405
409
|
searchByDateRange(startDate: string, endDate: string, options?: {
|
|
406
410
|
entryType?: EntryType;
|
|
@@ -597,6 +601,20 @@ interface BriefingConfig {
|
|
|
597
601
|
projectRegistry?: Record<string, ProjectRegistryEntry>;
|
|
598
602
|
}
|
|
599
603
|
|
|
604
|
+
/** Audit log configuration */
|
|
605
|
+
interface AuditConfig {
|
|
606
|
+
/** Master switch — false means no interceptor is created */
|
|
607
|
+
enabled: boolean;
|
|
608
|
+
/** Absolute path to the JSONL output file, or "stderr" for container mode */
|
|
609
|
+
logPath: string;
|
|
610
|
+
/** When true, tool arguments are omitted from entries */
|
|
611
|
+
redact: boolean;
|
|
612
|
+
/** When true, read-scoped tools are also logged (default: false) */
|
|
613
|
+
auditReads: boolean;
|
|
614
|
+
/** Maximum log file size in bytes before rotation (default: 10MB). 0 = no rotation. */
|
|
615
|
+
maxSizeBytes: number;
|
|
616
|
+
}
|
|
617
|
+
|
|
600
618
|
/**
|
|
601
619
|
* Memory Journal MCP Server - Main Server
|
|
602
620
|
*
|
|
@@ -626,6 +644,7 @@ interface ServerOptions {
|
|
|
626
644
|
briefingConfig?: BriefingConfig;
|
|
627
645
|
projectRegistry?: Record<string, ProjectRegistryEntry>;
|
|
628
646
|
instructionLevel?: 'essential' | 'standard' | 'full';
|
|
647
|
+
auditConfig?: AuditConfig;
|
|
629
648
|
}
|
|
630
649
|
/**
|
|
631
650
|
* Create and start the MCP server
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export {
|
|
2
|
-
|
|
1
|
+
export { VERSION, createServer } from './chunk-SBNQ7MXZ.js';
|
|
2
|
+
export { META_GROUPS, TOOL_GROUPS, calculateTokenSavings, filterTools, getAllToolNames, getFilterSummary, getToolFilterFromEnv, getToolGroup, isToolEnabled, parseToolFilter } from './chunk-2BJHLTYP.js';
|
|
3
3
|
import './chunk-OKOVZ5QE.js';
|
|
4
|
-
export { logger } from './chunk-
|
|
4
|
+
export { logger } from './chunk-ARLH46WS.js';
|
|
5
5
|
|
|
6
6
|
// src/types/index.ts
|
|
7
7
|
var DEFAULT_CONFIG = {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "memory-journal-mcp",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "7.0.0",
|
|
4
4
|
"description": "Project context management for AI-assisted development - Persistent knowledge graphs and intelligent context recall across fragmented AI threads",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"check": "npm run lint && npm run typecheck",
|
|
24
24
|
"test": "vitest run",
|
|
25
25
|
"test:watch": "vitest",
|
|
26
|
-
"test:coverage": "vitest run --coverage",
|
|
26
|
+
"test:coverage": "vitest run --coverage && npx tsx scripts/update-badges.ts",
|
|
27
27
|
"bench": "vitest bench --run",
|
|
28
28
|
"test:e2e": "playwright test",
|
|
29
29
|
"generate:instructions": "node scripts/generate-server-instructions.ts"
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"node": ">=24.0.0"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
|
-
"@huggingface/transformers": "^
|
|
61
|
+
"@huggingface/transformers": "^4.0.1",
|
|
62
62
|
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
63
63
|
"@octokit/graphql": "^9.0.3",
|
|
64
64
|
"@octokit/rest": "^22.0.1",
|
|
@@ -66,24 +66,24 @@
|
|
|
66
66
|
"commander": "^14.0.3",
|
|
67
67
|
"express": "^5.2.1",
|
|
68
68
|
"jose": "^6.2.1",
|
|
69
|
-
"simple-git": "^3.
|
|
69
|
+
"simple-git": "^3.35.2",
|
|
70
70
|
"sqlite-vec": "^0.1.7-alpha.2",
|
|
71
71
|
"zod": "^4.3.6"
|
|
72
72
|
},
|
|
73
73
|
"devDependencies": {
|
|
74
74
|
"@eslint/js": "^10.0.1",
|
|
75
|
-
"esbuild": "^0.
|
|
76
|
-
"@playwright/test": "^1.
|
|
75
|
+
"esbuild": "^0.28.0",
|
|
76
|
+
"@playwright/test": "^1.59.1",
|
|
77
77
|
"@types/better-sqlite3": "^7.6.13",
|
|
78
78
|
"@types/express": "^5.0.6",
|
|
79
|
-
"@types/node": "^25.
|
|
80
|
-
"@vitest/coverage-v8": "^4.
|
|
81
|
-
"eslint": "^10.0
|
|
79
|
+
"@types/node": "^25.5.2",
|
|
80
|
+
"@vitest/coverage-v8": "^4.1.3",
|
|
81
|
+
"eslint": "^10.2.0",
|
|
82
82
|
"globals": "^17.4.0",
|
|
83
83
|
"tsup": "^8.5.1",
|
|
84
|
-
"typescript": "^
|
|
84
|
+
"typescript": "^6.0.2",
|
|
85
85
|
"typescript-eslint": "^8.57.0",
|
|
86
|
-
"vitest": "^4.
|
|
86
|
+
"vitest": "^4.1.3"
|
|
87
87
|
},
|
|
88
88
|
"overrides": {
|
|
89
89
|
"axios": "^1.13.6",
|
|
@@ -92,8 +92,9 @@
|
|
|
92
92
|
"onnxruntime-web": "npm:empty-npm-package@1.0.0",
|
|
93
93
|
"sharp": "npm:empty-npm-package@1.0.0",
|
|
94
94
|
"zod": "$zod",
|
|
95
|
-
"minimatch": "10.2.
|
|
95
|
+
"minimatch": "10.2.5",
|
|
96
96
|
"tar": "7.5.13",
|
|
97
|
-
"tmp": "^0.2.5"
|
|
97
|
+
"tmp": "^0.2.5",
|
|
98
|
+
"vite": "^8.0.5"
|
|
98
99
|
}
|
|
99
100
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { GitHubIntegration } from './chunk-K2SCUSN4.js';
|
package/dist/tools-P4XXHO3Z.js
DELETED