@romandp/context-memory-mcp 1.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.
Files changed (91) hide show
  1. package/README.md +454 -0
  2. package/bin/mcp-memory.js +306 -0
  3. package/dist/config/paths.d.ts +10 -0
  4. package/dist/config/paths.d.ts.map +1 -0
  5. package/dist/config/paths.js +41 -0
  6. package/dist/config/paths.js.map +1 -0
  7. package/dist/db/init.d.ts +6 -0
  8. package/dist/db/init.d.ts.map +1 -0
  9. package/dist/db/init.js +37 -0
  10. package/dist/db/init.js.map +1 -0
  11. package/dist/db/migrations/runner.d.ts +9 -0
  12. package/dist/db/migrations/runner.d.ts.map +1 -0
  13. package/dist/db/migrations/runner.js +285 -0
  14. package/dist/db/migrations/runner.js.map +1 -0
  15. package/dist/db/schema.d.ts +51 -0
  16. package/dist/db/schema.d.ts.map +1 -0
  17. package/dist/db/schema.js +496 -0
  18. package/dist/db/schema.js.map +1 -0
  19. package/dist/http/routes.d.ts +3 -0
  20. package/dist/http/routes.d.ts.map +1 -0
  21. package/dist/http/routes.js +968 -0
  22. package/dist/http/routes.js.map +1 -0
  23. package/dist/http/server.d.ts +5 -0
  24. package/dist/http/server.d.ts.map +1 -0
  25. package/dist/http/server.js +45 -0
  26. package/dist/http/server.js.map +1 -0
  27. package/dist/http/swagger.d.ts +2 -0
  28. package/dist/http/swagger.d.ts.map +1 -0
  29. package/dist/http/swagger.js +101 -0
  30. package/dist/http/swagger.js.map +1 -0
  31. package/dist/index.d.ts +2 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +139 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/memory/budget.d.ts +22 -0
  36. package/dist/memory/budget.d.ts.map +1 -0
  37. package/dist/memory/budget.js +51 -0
  38. package/dist/memory/budget.js.map +1 -0
  39. package/dist/memory/facts.d.ts +3 -0
  40. package/dist/memory/facts.d.ts.map +1 -0
  41. package/dist/memory/facts.js +63 -0
  42. package/dist/memory/facts.js.map +1 -0
  43. package/dist/memory/rebuild.d.ts +4 -0
  44. package/dist/memory/rebuild.d.ts.map +1 -0
  45. package/dist/memory/rebuild.js +31 -0
  46. package/dist/memory/rebuild.js.map +1 -0
  47. package/dist/memory/response.d.ts +11 -0
  48. package/dist/memory/response.d.ts.map +1 -0
  49. package/dist/memory/response.js +20 -0
  50. package/dist/memory/response.js.map +1 -0
  51. package/dist/memory/summary.d.ts +3 -0
  52. package/dist/memory/summary.d.ts.map +1 -0
  53. package/dist/memory/summary.js +67 -0
  54. package/dist/memory/summary.js.map +1 -0
  55. package/dist/memory/toon.d.ts +20 -0
  56. package/dist/memory/toon.d.ts.map +1 -0
  57. package/dist/memory/toon.js +102 -0
  58. package/dist/memory/toon.js.map +1 -0
  59. package/dist/memory/view.d.ts +4 -0
  60. package/dist/memory/view.d.ts.map +1 -0
  61. package/dist/memory/view.js +7 -0
  62. package/dist/memory/view.js.map +1 -0
  63. package/dist/server/setup.d.ts +9 -0
  64. package/dist/server/setup.d.ts.map +1 -0
  65. package/dist/server/setup.js +291 -0
  66. package/dist/server/setup.js.map +1 -0
  67. package/dist/tools/audit.d.ts +2 -0
  68. package/dist/tools/audit.d.ts.map +1 -0
  69. package/dist/tools/audit.js +22 -0
  70. package/dist/tools/audit.js.map +1 -0
  71. package/dist/tools/context.d.ts +5 -0
  72. package/dist/tools/context.d.ts.map +1 -0
  73. package/dist/tools/context.js +104 -0
  74. package/dist/tools/context.js.map +1 -0
  75. package/dist/tools/entry.d.ts +9 -0
  76. package/dist/tools/entry.d.ts.map +1 -0
  77. package/dist/tools/entry.js +214 -0
  78. package/dist/tools/entry.js.map +1 -0
  79. package/dist/tools/project.d.ts +4 -0
  80. package/dist/tools/project.d.ts.map +1 -0
  81. package/dist/tools/project.js +54 -0
  82. package/dist/tools/project.js.map +1 -0
  83. package/dist/tools/task.d.ts +4 -0
  84. package/dist/tools/task.d.ts.map +1 -0
  85. package/dist/tools/task.js +49 -0
  86. package/dist/tools/task.js.map +1 -0
  87. package/dist/types/context.d.ts +139 -0
  88. package/dist/types/context.d.ts.map +1 -0
  89. package/dist/types/context.js +2 -0
  90. package/dist/types/context.js.map +1 -0
  91. package/package.json +68 -0
@@ -0,0 +1,11 @@
1
+ export interface ResponseMetrics {
2
+ bytes: number;
3
+ chars: number;
4
+ estimated_tokens: number;
5
+ }
6
+ export declare function estimateTokens(chars: number): number;
7
+ export declare function buildResponseMetrics(payload: unknown): ResponseMetrics;
8
+ export declare function withMetrics<T extends Record<string, unknown>>(payload: T): T & {
9
+ metrics: ResponseMetrics;
10
+ };
11
+ //# sourceMappingURL=response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/memory/response.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe,CAStE;AAED,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG;IAAE,OAAO,EAAE,eAAe,CAAA;CAAE,CAK3G"}
@@ -0,0 +1,20 @@
1
+ export function estimateTokens(chars) {
2
+ return Math.ceil(chars / 4);
3
+ }
4
+ export function buildResponseMetrics(payload) {
5
+ const text = JSON.stringify(payload);
6
+ const bytes = Buffer.byteLength(text, 'utf8');
7
+ const chars = text.length;
8
+ return {
9
+ bytes,
10
+ chars,
11
+ estimated_tokens: estimateTokens(chars),
12
+ };
13
+ }
14
+ export function withMetrics(payload) {
15
+ return {
16
+ ...payload,
17
+ metrics: buildResponseMetrics(payload),
18
+ };
19
+ }
20
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../src/memory/response.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;IAC1B,OAAO;QACL,KAAK;QACL,KAAK;QACL,gBAAgB,EAAE,cAAc,CAAC,KAAK,CAAC;KACxC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAoC,OAAU;IACvE,OAAO;QACL,GAAG,OAAO;QACV,OAAO,EAAE,oBAAoB,CAAC,OAAO,CAAC;KACvC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { DesignDecision, EntryRelationship, EntrySummary, SddEntry } from '../types/context.js';
2
+ export declare function buildEntrySummary(entry: SddEntry, decisions: DesignDecision[], relationships: EntryRelationship[], now?: string): EntrySummary;
3
+ //# sourceMappingURL=summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary.d.ts","sourceRoot":"","sources":["../../src/memory/summary.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAmChG,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,GAAG,SAA2B,GAAG,YAAY,CAmChK"}
@@ -0,0 +1,67 @@
1
+ import { createHash } from 'crypto';
2
+ const STOP_WORDS = new Set([
3
+ 'a', 'an', 'and', 'as', 'at', 'by', 'con', 'de', 'del', 'el', 'en', 'for', 'in', 'la', 'las', 'los',
4
+ 'of', 'on', 'or', 'para', 'por', 'the', 'to', 'un', 'una', 'y',
5
+ ]);
6
+ function normalizeWhitespace(value) {
7
+ return value.replace(/\s+/g, ' ').trim();
8
+ }
9
+ function clamp(value, maxLength) {
10
+ if (value.length <= maxLength)
11
+ return value;
12
+ return `${value.slice(0, maxLength - 1)}…`;
13
+ }
14
+ function extractKeywords(entry, decisions) {
15
+ const source = `${entry.title} ${entry.content} ${decisions.map(d => d.decision).join(' ')}`.toLowerCase();
16
+ const counts = new Map();
17
+ for (const token of source.match(/[a-z0-9_:-]{3,}/g) || []) {
18
+ if (STOP_WORDS.has(token))
19
+ continue;
20
+ counts.set(token, (counts.get(token) || 0) + 1);
21
+ }
22
+ return [...counts.entries()]
23
+ .sort((a, b) => b[1] - a[1] || a[0].localeCompare(b[0]))
24
+ .slice(0, 8)
25
+ .map(([token]) => token);
26
+ }
27
+ function buildRelationHints(relationships) {
28
+ return relationships.slice(0, 6).map(rel => `${rel.relationship_type}:${rel.target_entry_id === rel.source_entry_id ? rel.source_entry_id : rel.target_entry_id}`);
29
+ }
30
+ export function buildEntrySummary(entry, decisions, relationships, now = new Date().toISOString()) {
31
+ const keywords = extractKeywords(entry, decisions);
32
+ const contentPreview = clamp(normalizeWhitespace(entry.content), 140);
33
+ const summaryShort = clamp(normalizeWhitespace([entry.title, contentPreview].filter(Boolean).join(' :: ')) || entry.title, 220);
34
+ const denseParts = [
35
+ `sec:${entry.section}`,
36
+ `st:${entry.status}`,
37
+ `title:${clamp(normalizeWhitespace(entry.title), 80)}`,
38
+ ];
39
+ if (contentPreview)
40
+ denseParts.push(`body:${contentPreview}`);
41
+ if (decisions.length > 0)
42
+ denseParts.push(`decisions:[${decisions.slice(0, 5).map(d => clamp(normalizeWhitespace(d.decision), 60)).join('|')}]`);
43
+ if (relationships.length > 0)
44
+ denseParts.push(`relations:[${buildRelationHints(relationships).join('|')}]`);
45
+ if (keywords.length > 0)
46
+ denseParts.push(`kw:[${keywords.join('|')}]`);
47
+ const sourceHash = createHash('sha256')
48
+ .update(JSON.stringify({
49
+ title: entry.title,
50
+ content: entry.content,
51
+ section: entry.section,
52
+ status: entry.status,
53
+ decisions: decisions.map(d => [d.decision, d.rationale, d.alternatives_considered]),
54
+ relationships: relationships.map(r => [r.source_entry_id, r.target_entry_id, r.relationship_type]),
55
+ }))
56
+ .digest('hex');
57
+ return {
58
+ entry_id: entry.id,
59
+ summary_short: summaryShort,
60
+ summary_dense: denseParts.join('\n'),
61
+ keywords,
62
+ source_hash: sourceHash,
63
+ version: 1,
64
+ updated_at: now,
65
+ };
66
+ }
67
+ //# sourceMappingURL=summary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary.js","sourceRoot":"","sources":["../../src/memory/summary.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { CompactEntry, CompactEntryContext, MemoryFact, ProjectCompact, ResponseFormat } from '../types/context.js';
2
+ export declare function wrapToon(type: string, data: unknown, format: ResponseFormat, meta?: {
3
+ truncated?: boolean;
4
+ count?: number;
5
+ next?: string | null;
6
+ }): unknown;
7
+ export declare function toToonEntrySummary(entry: CompactEntry, format: ResponseFormat): unknown;
8
+ export declare function toToonEntryContext(context: CompactEntryContext, format: ResponseFormat): unknown;
9
+ export declare function toToonSearchResults(entries: CompactEntry[], format: ResponseFormat, meta?: {
10
+ truncated?: boolean;
11
+ next?: string | null;
12
+ }): unknown;
13
+ export declare function toToonProjectCompact(projectCompact: ProjectCompact, format: ResponseFormat): unknown;
14
+ export declare function toToonFacts(facts: MemoryFact[], format: ResponseFormat): unknown;
15
+ export declare function setToonMeta(payload: any, meta: {
16
+ truncated?: boolean;
17
+ next?: string | null;
18
+ count?: number;
19
+ }): any;
20
+ //# sourceMappingURL=toon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toon.d.ts","sourceRoot":"","sources":["../../src/memory/toon.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EAInB,UAAU,EACV,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAC;AA0D7B,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAU3J;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAEvF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAOhG;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAElJ;AAED,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAWpG;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAEhF;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,GAAG,CASlH"}
@@ -0,0 +1,102 @@
1
+ function encodeSection(section) {
2
+ return { plan: 'p', design: 'd', tasks: 't', general: 'g' }[section] || section;
3
+ }
4
+ function encodeEntryStatus(status) {
5
+ return { draft: 'dr', review: 'rv', done: 'dn' }[status] || status;
6
+ }
7
+ function encodeTaskStatus(status) {
8
+ return { pending: 'pd', in_progress: 'ip', completed: 'cp', cancelled: 'cx' }[status] || status;
9
+ }
10
+ function encodePriority(priority) {
11
+ return { low: 'l', medium: 'm', high: 'h', critical: 'c' }[priority] || priority;
12
+ }
13
+ function encodeRelationship(type) {
14
+ return { depends_on: 'dep', implements: 'imp', related_to: 'rel', supersedes: 'sup' }[type] || type;
15
+ }
16
+ function encodeEntry(entry, format) {
17
+ if (format === 'toon-d') {
18
+ return [entry.id, entry.project_id, encodeSection(entry.section), encodeEntryStatus(entry.status), entry.title, entry.summary_short, entry.keywords];
19
+ }
20
+ return {
21
+ id: entry.id,
22
+ p: entry.project_id,
23
+ sec: encodeSection(entry.section),
24
+ st: encodeEntryStatus(entry.status),
25
+ ttl: entry.title,
26
+ sum: entry.summary_short,
27
+ kw: entry.keywords,
28
+ };
29
+ }
30
+ function encodeDecision(decision, format) {
31
+ if (format === 'toon-d')
32
+ return [decision.id, decision.decision, decision.rationale];
33
+ return { id: decision.id, d: decision.decision, r: decision.rationale };
34
+ }
35
+ function encodeRelationshipEntry(relationship, format) {
36
+ if (format === 'toon-d')
37
+ return [relationship.source_entry_id, relationship.target_entry_id, encodeRelationship(relationship.relationship_type)];
38
+ return { s: relationship.source_entry_id, t: relationship.target_entry_id, rt: encodeRelationship(relationship.relationship_type) };
39
+ }
40
+ function encodeFact(fact, format) {
41
+ if (format === 'toon-d')
42
+ return [fact.kind, fact.subject, fact.predicate, fact.object, fact.weight];
43
+ return { k: fact.kind, s: fact.subject, p: fact.predicate, o: fact.object, w: fact.weight };
44
+ }
45
+ function encodeTask(task, format) {
46
+ if (format === 'toon-d')
47
+ return [task.id, task.project_id, task.sdd_entry_id || null, task.title, encodeTaskStatus(task.status), encodePriority(task.priority)];
48
+ return { id: task.id, p: task.project_id, e: task.sdd_entry_id || null, ttl: task.title, st: encodeTaskStatus(task.status), pr: encodePriority(task.priority) };
49
+ }
50
+ export function wrapToon(type, data, format, meta) {
51
+ if (format === 'json')
52
+ return data;
53
+ return {
54
+ v: 1,
55
+ fmt: format,
56
+ t: type,
57
+ ok: 1,
58
+ d: data,
59
+ m: { tr: meta?.truncated ? 1 : 0, n: meta?.count || 0, next: meta?.next || null },
60
+ };
61
+ }
62
+ export function toToonEntrySummary(entry, format) {
63
+ return wrapToon('entry_summary', encodeEntry(entry, format), format, { count: 1 });
64
+ }
65
+ export function toToonEntryContext(context, format) {
66
+ return wrapToon('entry_ctx', {
67
+ e: encodeEntry(context.entry, format),
68
+ ds: context.decisions.map(decision => encodeDecision(decision, format)),
69
+ rs: context.relationships.map(relationship => encodeRelationshipEntry(relationship, format)),
70
+ fs: context.facts.map(fact => encodeFact(fact, format)),
71
+ }, format, { count: 1 });
72
+ }
73
+ export function toToonSearchResults(entries, format, meta) {
74
+ return wrapToon('entry_search', { es: entries.map(entry => encodeEntry(entry, format)) }, format, { count: entries.length, truncated: meta?.truncated, next: meta?.next || null });
75
+ }
76
+ export function toToonProjectCompact(projectCompact, format) {
77
+ return wrapToon('project_compact', {
78
+ p: format === 'toon-d'
79
+ ? [projectCompact.project.id, projectCompact.project.name, projectCompact.project.status]
80
+ : { id: projectCompact.project.id, n: projectCompact.project.name, st: projectCompact.project.status },
81
+ es: projectCompact.entries.map(entry => encodeEntry(entry, format)),
82
+ ts: projectCompact.tasks.map(task => encodeTask(task, format)),
83
+ cs: projectCompact.classifications.map(classification => format === 'toon-d'
84
+ ? [classification.id, classification.tag, classification.confidence]
85
+ : { id: classification.id, t: classification.tag, c: classification.confidence }),
86
+ }, format, { count: projectCompact.entries.length + projectCompact.tasks.length });
87
+ }
88
+ export function toToonFacts(facts, format) {
89
+ return wrapToon('facts', { fs: facts.map(fact => encodeFact(fact, format)) }, format, { count: facts.length });
90
+ }
91
+ export function setToonMeta(payload, meta) {
92
+ if (!payload || typeof payload !== 'object' || !('m' in payload))
93
+ return payload;
94
+ payload.m = {
95
+ ...payload.m,
96
+ tr: meta.truncated ? 1 : payload.m.tr,
97
+ next: meta.next !== undefined ? meta.next : payload.m.next,
98
+ n: meta.count !== undefined ? meta.count : payload.m.n,
99
+ };
100
+ return payload;
101
+ }
102
+ //# sourceMappingURL=toon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toon.js","sourceRoot":"","sources":["../../src/memory/toon.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { ResponseFormat, ResponseView } from '../types/context.js';
2
+ export declare function parseView(value: unknown): ResponseView;
3
+ export declare function parseFormat(value: unknown): ResponseFormat;
4
+ //# sourceMappingURL=view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/memory/view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnE,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAEtD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,CAE1D"}
@@ -0,0 +1,7 @@
1
+ export function parseView(value) {
2
+ return value === 'summary' || value === 'compact' ? value : 'full';
3
+ }
4
+ export function parseFormat(value) {
5
+ return value === 'toon-r' || value === 'toon-d' ? value : 'json';
6
+ }
7
+ //# sourceMappingURL=view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/memory/view.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AACnE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
4
+ export declare function createMcpServer(): {
5
+ server: McpServer;
6
+ transport: StdioServerTransport;
7
+ };
8
+ export declare function getTools(): Tool[];
9
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/server/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D,wBAAgB,eAAe,IAAI;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,oBAAoB,CAAA;CAAE,CAYxF;AAED,wBAAgB,QAAQ,IAAI,IAAI,EAAE,CAmRjC"}
@@ -0,0 +1,291 @@
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
+ export function createMcpServer() {
4
+ const server = new McpServer({
5
+ name: '@romandp/context-memory-mcp',
6
+ version: '1.0.0',
7
+ }, {
8
+ capabilities: {
9
+ tools: {},
10
+ },
11
+ });
12
+ const transport = new StdioServerTransport();
13
+ return { server, transport };
14
+ }
15
+ export function getTools() {
16
+ return [
17
+ {
18
+ name: 'project-create',
19
+ description: 'Creates a new project',
20
+ inputSchema: {
21
+ type: 'object',
22
+ properties: {
23
+ name: { type: 'string', description: 'Project name' },
24
+ description: { type: 'string', description: 'Optional description' },
25
+ },
26
+ required: ['name'],
27
+ },
28
+ },
29
+ {
30
+ name: 'project-list',
31
+ description: 'Lists all projects',
32
+ inputSchema: {
33
+ type: 'object',
34
+ properties: {
35
+ page: { type: 'number', description: 'Page number (1-based)' },
36
+ limit: { type: 'number', description: 'Items per page (max 200)' },
37
+ },
38
+ },
39
+ },
40
+ {
41
+ name: 'project-get',
42
+ description: 'Gets a project by ID with its entries and tasks',
43
+ inputSchema: {
44
+ type: 'object',
45
+ properties: {
46
+ id: { type: 'string', description: 'Project ID' },
47
+ view: { type: 'string', enum: ['full', 'summary', 'compact'], description: 'Response view' },
48
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
49
+ entry_limit: { type: 'number', description: 'Compact entries limit' },
50
+ task_limit: { type: 'number', description: 'Compact tasks limit' },
51
+ },
52
+ required: ['id'],
53
+ },
54
+ },
55
+ {
56
+ name: 'entry-create',
57
+ description: 'Creates an SDD entry (plan, design, tasks, or general) under a project',
58
+ inputSchema: {
59
+ type: 'object',
60
+ properties: {
61
+ project_id: { type: 'string', description: 'Project ID' },
62
+ section: { type: 'string', enum: ['plan', 'design', 'tasks', 'general'], description: 'SDD section' },
63
+ title: { type: 'string', description: 'Entry title' },
64
+ content: { type: 'string', description: 'Entry content' },
65
+ status: { type: 'string', enum: ['draft', 'review', 'done'], description: 'Entry status' },
66
+ parent_id: { type: 'string', description: 'Optional parent entry ID for nesting' },
67
+ },
68
+ required: ['project_id', 'section', 'title'],
69
+ },
70
+ },
71
+ {
72
+ name: 'entry-get',
73
+ description: 'Gets entries for a project, optionally filtered by section',
74
+ inputSchema: {
75
+ type: 'object',
76
+ properties: {
77
+ project_id: { type: 'string', description: 'Project ID' },
78
+ section: { type: 'string', enum: ['plan', 'design', 'tasks', 'general'], description: 'Optional section filter' },
79
+ page: { type: 'number', description: 'Page number (1-based)' },
80
+ limit: { type: 'number', description: 'Items per page (max 200)' },
81
+ view: { type: 'string', enum: ['full', 'summary', 'compact'], description: 'Response view' },
82
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
83
+ max_items: { type: 'number', description: 'Compact result item budget' },
84
+ max_chars: { type: 'number', description: 'Compact result char budget' },
85
+ },
86
+ required: ['project_id'],
87
+ },
88
+ },
89
+ {
90
+ name: 'entry-search',
91
+ description: 'Searches entries within a project by text',
92
+ inputSchema: {
93
+ type: 'object',
94
+ properties: {
95
+ project_id: { type: 'string', description: 'Project ID' },
96
+ query: { type: 'string', description: 'Search text' },
97
+ page: { type: 'number', description: 'Page number (1-based)' },
98
+ limit: { type: 'number', description: 'Items per page (max 200)' },
99
+ view: { type: 'string', enum: ['full', 'summary', 'compact'], description: 'Response view' },
100
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
101
+ max_items: { type: 'number', description: 'Compact result item budget' },
102
+ max_chars: { type: 'number', description: 'Compact result char budget' },
103
+ },
104
+ required: ['project_id', 'query'],
105
+ },
106
+ },
107
+ {
108
+ name: 'entry-search-global',
109
+ description: 'Searches entries across all projects by text',
110
+ inputSchema: {
111
+ type: 'object',
112
+ properties: {
113
+ query: { type: 'string', description: 'Search text' },
114
+ page: { type: 'number', description: 'Page number (1-based)' },
115
+ limit: { type: 'number', description: 'Items per page (max 200)' },
116
+ view: { type: 'string', enum: ['full', 'summary', 'compact'], description: 'Response view' },
117
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
118
+ max_items: { type: 'number', description: 'Compact result item budget' },
119
+ max_chars: { type: 'number', description: 'Compact result char budget' },
120
+ },
121
+ required: ['query'],
122
+ },
123
+ },
124
+ {
125
+ name: 'entry-batch-get',
126
+ description: 'Gets multiple derived compact entries by ID',
127
+ inputSchema: {
128
+ type: 'object',
129
+ properties: {
130
+ entry_ids: { type: 'array', items: { type: 'string' }, description: 'Entry IDs' },
131
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
132
+ max_items: { type: 'number', description: 'Compact result item budget' },
133
+ max_chars: { type: 'number', description: 'Compact result char budget' },
134
+ },
135
+ required: ['entry_ids'],
136
+ },
137
+ },
138
+ {
139
+ name: 'entry-get-summary',
140
+ description: 'Gets derived compact summary for an SDD entry',
141
+ inputSchema: {
142
+ type: 'object',
143
+ properties: {
144
+ entry_id: { type: 'string', description: 'Entry ID' },
145
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
146
+ },
147
+ required: ['entry_id'],
148
+ },
149
+ },
150
+ {
151
+ name: 'entry-add-decision',
152
+ description: 'Records a design decision for an SDD entry',
153
+ inputSchema: {
154
+ type: 'object',
155
+ properties: {
156
+ entry_id: { type: 'string', description: 'Entry ID' },
157
+ decision: { type: 'string', description: 'The decision made' },
158
+ rationale: { type: 'string', description: 'Why this decision was made' },
159
+ alternatives_considered: { type: 'string', description: 'Alternatives considered (optional)' },
160
+ },
161
+ required: ['entry_id', 'decision', 'rationale'],
162
+ },
163
+ },
164
+ {
165
+ name: 'entry-add-relationship',
166
+ description: 'Creates a relationship between two SDD entries',
167
+ inputSchema: {
168
+ type: 'object',
169
+ properties: {
170
+ source_entry_id: { type: 'string', description: 'Source entry ID' },
171
+ target_entry_id: { type: 'string', description: 'Target entry ID' },
172
+ relationship_type: { type: 'string', enum: ['depends_on', 'implements', 'related_to', 'supersedes'], description: 'Type of relationship' },
173
+ },
174
+ required: ['source_entry_id', 'target_entry_id', 'relationship_type'],
175
+ },
176
+ },
177
+ {
178
+ name: 'entry-get-context',
179
+ description: 'Gets full context for an entry (entry + decisions + relationships)',
180
+ inputSchema: {
181
+ type: 'object',
182
+ properties: {
183
+ entry_id: { type: 'string', description: 'Entry ID' },
184
+ view: { type: 'string', enum: ['full', 'summary', 'compact'], description: 'Response view' },
185
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
186
+ max_items: { type: 'number', description: 'Compact result item budget' },
187
+ max_chars: { type: 'number', description: 'Compact result char budget' },
188
+ },
189
+ required: ['entry_id'],
190
+ },
191
+ },
192
+ {
193
+ name: 'memory-facts-get',
194
+ description: 'Gets derived compact memory facts',
195
+ inputSchema: {
196
+ type: 'object',
197
+ properties: {
198
+ project_id: { type: 'string', description: 'Filter by project ID' },
199
+ entry_id: { type: 'string', description: 'Filter by entry ID' },
200
+ kind: { type: 'string', description: 'Filter by fact kind' },
201
+ page: { type: 'number', description: 'Page number (1-based)' },
202
+ limit: { type: 'number', description: 'Items per page (max 200)' },
203
+ format: { type: 'string', enum: ['json', 'toon-r', 'toon-d'], description: 'Response format' },
204
+ },
205
+ },
206
+ },
207
+ {
208
+ name: 'entry-update',
209
+ description: 'Updates an SDD entry',
210
+ inputSchema: {
211
+ type: 'object',
212
+ properties: {
213
+ id: { type: 'string', description: 'Entry ID' },
214
+ title: { type: 'string', description: 'New title' },
215
+ content: { type: 'string', description: 'New content' },
216
+ status: { type: 'string', enum: ['draft', 'review', 'done'], description: 'New status' },
217
+ section: { type: 'string', enum: ['plan', 'design', 'tasks', 'general'], description: 'New section' },
218
+ parent_id: { type: 'string', description: 'New parent entry ID (null to clear)' },
219
+ },
220
+ required: ['id'],
221
+ },
222
+ },
223
+ {
224
+ name: 'entry-delete',
225
+ description: 'Deletes an SDD entry',
226
+ inputSchema: {
227
+ type: 'object',
228
+ properties: {
229
+ id: { type: 'string', description: 'Entry ID' },
230
+ },
231
+ required: ['id'],
232
+ },
233
+ },
234
+ {
235
+ name: 'task-create',
236
+ description: 'Creates a task under a project, optionally linked to an SDD entry',
237
+ inputSchema: {
238
+ type: 'object',
239
+ properties: {
240
+ project_id: { type: 'string', description: 'Project ID' },
241
+ sdd_entry_id: { type: 'string', description: 'Optional SDD entry ID' },
242
+ title: { type: 'string', description: 'Task title' },
243
+ description: { type: 'string', description: 'Optional description' },
244
+ priority: { type: 'string', enum: ['low', 'medium', 'high', 'critical'], description: 'Task priority' },
245
+ },
246
+ required: ['project_id', 'title'],
247
+ },
248
+ },
249
+ {
250
+ name: 'task-list',
251
+ description: 'Lists tasks for a project, optionally filtered by entry',
252
+ inputSchema: {
253
+ type: 'object',
254
+ properties: {
255
+ project_id: { type: 'string', description: 'Project ID' },
256
+ sdd_entry_id: { type: 'string', description: 'Optional entry ID to filter tasks' },
257
+ page: { type: 'number', description: 'Page number (1-based)' },
258
+ limit: { type: 'number', description: 'Items per page (max 200)' },
259
+ },
260
+ required: ['project_id'],
261
+ },
262
+ },
263
+ {
264
+ name: 'task-update',
265
+ description: 'Updates a task status',
266
+ inputSchema: {
267
+ type: 'object',
268
+ properties: {
269
+ id: { type: 'string', description: 'Task ID' },
270
+ status: { type: 'string', enum: ['pending', 'in_progress', 'completed', 'cancelled'], description: 'New status' },
271
+ },
272
+ required: ['id', 'status'],
273
+ },
274
+ },
275
+ {
276
+ name: 'audit-get',
277
+ description: 'Gets audit log entries for an entity or project',
278
+ inputSchema: {
279
+ type: 'object',
280
+ properties: {
281
+ entity_type: { type: 'string', enum: ['entry', 'task'], description: 'Filter by entity type' },
282
+ entity_id: { type: 'string', description: 'Filter by entity ID' },
283
+ project_id: { type: 'string', description: 'Filter by project ID' },
284
+ page: { type: 'number', description: 'Page number (1-based)' },
285
+ limit: { type: 'number', description: 'Items per page (max 200)' },
286
+ },
287
+ },
288
+ },
289
+ ];
290
+ }
291
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/server/setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function handleAuditGet(input: unknown): Promise<any>;
2
+ //# sourceMappingURL=audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/tools/audit.ts"],"names":[],"mappings":"AAWA,wBAAsB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAcjE"}