@cartisien/engram-mcp 0.3.1 → 0.3.3
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.
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Lightweight regex-based NER — no LLM required.
|
|
3
3
|
* Extracts entities with type classification and confidence scores.
|
|
4
|
+
*
|
|
5
|
+
* Rewritten 2026-07-09 to fix three recall/precision bugs in the previous
|
|
6
|
+
* heuristic:
|
|
7
|
+
* 1. Sentence-initial proper nouns were always skipped, so a name that
|
|
8
|
+
* started a sentence ("Jeff prefers…", "Sarah mentioned…") was never
|
|
9
|
+
* extracted. The token walk now includes index 0 and relies on an
|
|
10
|
+
* expanded STOP_WORDS list to filter common sentence-initial non-entities.
|
|
11
|
+
* 2. Type classification used a fuzzy ±20-char context window, so a
|
|
12
|
+
* person-verb sitting elsewhere in the sentence leaked onto an unrelated
|
|
13
|
+
* capitalized word ("Jeff said he uses React" tagged React as a person).
|
|
14
|
+
* Classification now looks only at the IMMEDIATELY adjacent tokens.
|
|
15
|
+
* 3. Single proper nouns whose type could not be determined were dropped
|
|
16
|
+
* entirely ("Cartisien" vanished). They are now kept as type 'unknown'
|
|
17
|
+
* with lower confidence so the graph still gets the node.
|
|
18
|
+
* A small technology gazetteer also stops well-known tech from being
|
|
19
|
+
* misclassified as people/locations.
|
|
4
20
|
*/
|
|
5
21
|
export interface ExtractedEntity {
|
|
6
22
|
name: string;
|
|
@@ -1,8 +1,26 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Lightweight regex-based NER — no LLM required.
|
|
3
3
|
* Extracts entities with type classification and confidence scores.
|
|
4
|
+
*
|
|
5
|
+
* Rewritten 2026-07-09 to fix three recall/precision bugs in the previous
|
|
6
|
+
* heuristic:
|
|
7
|
+
* 1. Sentence-initial proper nouns were always skipped, so a name that
|
|
8
|
+
* started a sentence ("Jeff prefers…", "Sarah mentioned…") was never
|
|
9
|
+
* extracted. The token walk now includes index 0 and relies on an
|
|
10
|
+
* expanded STOP_WORDS list to filter common sentence-initial non-entities.
|
|
11
|
+
* 2. Type classification used a fuzzy ±20-char context window, so a
|
|
12
|
+
* person-verb sitting elsewhere in the sentence leaked onto an unrelated
|
|
13
|
+
* capitalized word ("Jeff said he uses React" tagged React as a person).
|
|
14
|
+
* Classification now looks only at the IMMEDIATELY adjacent tokens.
|
|
15
|
+
* 3. Single proper nouns whose type could not be determined were dropped
|
|
16
|
+
* entirely ("Cartisien" vanished). They are now kept as type 'unknown'
|
|
17
|
+
* with lower confidence so the graph still gets the node.
|
|
18
|
+
* A small technology gazetteer also stops well-known tech from being
|
|
19
|
+
* misclassified as people/locations.
|
|
4
20
|
*/
|
|
5
|
-
//
|
|
21
|
+
// Capitalized tokens that are never entities. Includes common sentence-initial
|
|
22
|
+
// words so that walking from index 0 (to catch sentence-initial names) does not
|
|
23
|
+
// flood the graph with false positives.
|
|
6
24
|
const STOP_WORDS = new Set([
|
|
7
25
|
'I', 'The', 'A', 'An', 'It', 'This', 'That', 'These', 'Those', 'My', 'Your',
|
|
8
26
|
'His', 'Her', 'Our', 'Their', 'We', 'You', 'He', 'She', 'They', 'Is', 'Are',
|
|
@@ -14,75 +32,116 @@ const STOP_WORDS = new Set([
|
|
|
14
32
|
'Too', 'Very', 'With', 'As', 'At', 'By', 'For', 'From', 'In', 'Of', 'On',
|
|
15
33
|
'To', 'Up', 'After', 'Before', 'Between', 'Into', 'Through', 'During', 'Above',
|
|
16
34
|
'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday',
|
|
17
|
-
'January', 'February', 'March', 'April', '
|
|
35
|
+
'January', 'February', 'March', 'April', 'June', 'July', 'August',
|
|
18
36
|
'September', 'October', 'November', 'December',
|
|
37
|
+
// common sentence-initial / filler words that are not entities
|
|
38
|
+
'Yesterday', 'Today', 'Tomorrow', 'Tonight', 'Recently', 'Currently', 'Meanwhile',
|
|
39
|
+
'However', 'Therefore', 'Maybe', 'Perhaps', 'Please', 'Thanks', 'Thank', 'Hello',
|
|
40
|
+
'Hi', 'Hey', 'Let', 'Lets', 'Sure', 'Actually', 'Basically', 'Overall', 'Finally',
|
|
41
|
+
'First', 'Second', 'Third', 'Next', 'Last', 'Here', 'There', 'Once', 'Every', 'All',
|
|
42
|
+
'Any', 'Since', 'Because', 'While', 'Although', 'Though', 'Well', 'Still', 'Even',
|
|
43
|
+
'Only', 'Again', 'Soon', 'Later', 'Never', 'Always', 'Us', 'Me', 'Him', 'Them',
|
|
44
|
+
]);
|
|
45
|
+
// Verbs whose subject (the token right before) is a person: "Jeff said", "Sarah prefers".
|
|
46
|
+
const PERSON_VERBS = new Set([
|
|
47
|
+
'said', 'says', 'say', 'told', 'tells', 'asked', 'asks', 'mentioned', 'mentions',
|
|
48
|
+
'wants', 'want', 'needs', 'need', 'thinks', 'think', 'believes', 'believe', 'loves',
|
|
49
|
+
'love', 'hates', 'hate', 'created', 'wrote', 'writes', 'emailed', 'emails', 'called',
|
|
50
|
+
'calls', 'texted', 'messaged', 'messages', 'prefers', 'prefer', 'likes', 'dislikes',
|
|
51
|
+
'noted', 'notes', 'replied', 'suggested', 'suggests', 'decided', 'agreed', 'met',
|
|
52
|
+
'meets', 'joined', 'left', 'reported', 'added', 'adds', 'owns', 'manages', 'leads',
|
|
53
|
+
'runs', 'sent', 'sends', 'recommended', 'recommends', 'confirmed', 'requested', 'built',
|
|
54
|
+
]);
|
|
55
|
+
// Verbs/objects where the token right AFTER is a person: "emailed Jeff", "met Sarah".
|
|
56
|
+
const PERSON_VERBS_BEFORE = new Set([
|
|
57
|
+
'told', 'asked', 'emailed', 'called', 'texted', 'messaged', 'met', 'thanked',
|
|
58
|
+
'invited', 'hired', 'mentioned',
|
|
59
|
+
]);
|
|
60
|
+
// Prepositions that, when they immediately precede a proper noun, signal a place.
|
|
61
|
+
const LOCATION_PREPS = new Set(['in', 'at', 'from', 'near']);
|
|
62
|
+
// Tokens that, when they immediately follow a proper noun, signal an organization.
|
|
63
|
+
const ORG_SUFFIXES = new Set([
|
|
64
|
+
'team', 'group', 'inc', 'corp', 'llc', 'co', 'company', 'labs', 'systems', 'ltd',
|
|
65
|
+
]);
|
|
66
|
+
// Well-known technologies. Checked first so tech is never mislabeled as a person
|
|
67
|
+
// just because a person-verb sits nearby.
|
|
68
|
+
const TECH_GAZETTEER = new Set([
|
|
69
|
+
'react', 'vue', 'angular', 'svelte', 'sqlite', 'postgres', 'postgresql', 'mysql',
|
|
70
|
+
'mongodb', 'redis', 'docker', 'kubernetes', 'k8s', 'python', 'typescript', 'javascript',
|
|
71
|
+
'node', 'nodejs', 'deno', 'bun', 'claude', 'openai', 'anthropic', 'ollama', 'qdrant',
|
|
72
|
+
'pinecone', 'llama', 'gpt', 'rust', 'golang', 'java', 'kotlin', 'swift', 'ruby', 'php',
|
|
73
|
+
'nginx', 'apache', 'git', 'github', 'gitlab', 'vite', 'webpack', 'next', 'nextjs', 'nuxt',
|
|
74
|
+
'tailwind', 'stripe', 'vercel', 'netlify', 'aws', 'gcp', 'azure', 'linux', 'ubuntu',
|
|
75
|
+
'drizzle', 'prisma', 'fastify', 'express', 'hono', 'vitest', 'jest', 'playwright',
|
|
19
76
|
]);
|
|
20
|
-
// Heuristics for person names: common English name patterns
|
|
21
|
-
const PERSON_CONTEXT_WORDS = ['said', 'told', 'asked', 'mentioned', 'wants', 'needs',
|
|
22
|
-
'thinks', 'believes', 'loves', 'hates', 'created', 'built', 'wrote', 'emailed',
|
|
23
|
-
'called', 'texted', 'messaged'];
|
|
24
|
-
// Tech/project signal words
|
|
25
77
|
const TECH_SUFFIXES = ['js', 'ts', 'py', 'db', 'ai', 'ml', 'ui', 'api', 'sdk', 'cli',
|
|
26
78
|
'mcp', 'gpt', 'llm'];
|
|
27
79
|
const TECH_CONTEXT_WORDS = ['using', 'built with', 'runs on', 'framework', 'library',
|
|
28
80
|
'package', 'repo', 'github', 'npm', 'deployed', 'version', 'model'];
|
|
29
|
-
// Location signals
|
|
30
|
-
const LOCATION_CONTEXT = ['in', 'at', 'from', 'near', 'to', 'city', 'state', 'country'];
|
|
31
81
|
export function extractEntities(text) {
|
|
32
82
|
const entities = new Map();
|
|
33
83
|
const lower = text.toLowerCase();
|
|
34
|
-
// --- Pass 1: CamelCase identifiers (GovScout,
|
|
84
|
+
// --- Pass 1: CamelCase identifiers (GovScout, OpenAI, MemoryDB) ---
|
|
35
85
|
const camelPattern = /\b([A-Z][a-z]+(?:[A-Z][a-z0-9]+)+)\b/g;
|
|
36
86
|
let m;
|
|
37
87
|
while ((m = camelPattern.exec(text)) !== null) {
|
|
38
88
|
const name = m[1];
|
|
39
|
-
if (!STOP_WORDS.has(name))
|
|
40
|
-
|
|
41
|
-
upsert(entities, name, type, 0.90);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
// --- Pass 2: Multi-word proper nouns (Jeff Smith, New York, Federal Aviation) ---
|
|
45
|
-
const multiWordPattern = /\b([A-Z][a-z]{1,20}(?:\s[A-Z][a-z]{1,20}){1,3})\b/g;
|
|
46
|
-
while ((m = multiWordPattern.exec(text)) !== null) {
|
|
47
|
-
const name = m[1];
|
|
48
|
-
const words = name.split(' ');
|
|
49
|
-
if (words.every(w => !STOP_WORDS.has(w))) {
|
|
50
|
-
const type = classifyMultiWord(name, lower);
|
|
51
|
-
upsert(entities, name, type, 0.88);
|
|
52
|
-
}
|
|
89
|
+
if (!STOP_WORDS.has(name))
|
|
90
|
+
upsert(entities, name, classifyCamel(name, lower), 0.90);
|
|
53
91
|
}
|
|
54
|
-
// --- Pass 3:
|
|
55
|
-
|
|
56
|
-
//
|
|
92
|
+
// --- Pass 2 + 3: token walk per sentence for single & multi-word proper nouns.
|
|
93
|
+
// Walks from index 0 so sentence-initial names are captured; classification
|
|
94
|
+
// uses only the immediately adjacent tokens. ---
|
|
57
95
|
const sentences = text.split(/(?<=[.!?])\s+/);
|
|
58
96
|
for (const sentence of sentences) {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
97
|
+
const toks = sentence
|
|
98
|
+
.trim()
|
|
99
|
+
.split(/\s+/)
|
|
100
|
+
.map(w => w.replace(/^[^A-Za-z0-9]+|[^A-Za-z0-9]+$/g, ''));
|
|
101
|
+
for (let i = 0; i < toks.length; i++) {
|
|
102
|
+
const word = toks[i];
|
|
103
|
+
// single-token candidate: Title case, 3+ chars (excludes ALL-CAPS acronyms)
|
|
104
|
+
if (!/^[A-Z][a-z]{2,20}$/.test(word))
|
|
105
|
+
continue;
|
|
106
|
+
if (STOP_WORDS.has(word))
|
|
107
|
+
continue;
|
|
108
|
+
// Extend into a multi-word run of Title-case tokens (Jeff Witters, New York).
|
|
109
|
+
let j = i;
|
|
110
|
+
while (j + 1 < toks.length &&
|
|
111
|
+
/^[A-Z][a-z]{1,20}$/.test(toks[j + 1]) &&
|
|
112
|
+
!STOP_WORDS.has(toks[j + 1])) {
|
|
113
|
+
j++;
|
|
114
|
+
}
|
|
115
|
+
const prev = (toks[i - 1] ?? '').toLowerCase();
|
|
116
|
+
if (j > i) {
|
|
117
|
+
const phrase = toks.slice(i, j + 1).join(' ');
|
|
118
|
+
const next = (toks[j + 1] ?? '').toLowerCase();
|
|
119
|
+
if (!entities.has(phrase)) {
|
|
120
|
+
upsert(entities, phrase, classifyPhrase(toks.slice(i, j + 1), prev, next), 0.86);
|
|
67
121
|
}
|
|
122
|
+
i = j; // consume the run
|
|
123
|
+
continue;
|
|
68
124
|
}
|
|
125
|
+
if (entities.has(word))
|
|
126
|
+
continue; // already captured (camel / earlier pass)
|
|
127
|
+
const next = (toks[i + 1] ?? '').toLowerCase();
|
|
128
|
+
const { type, confidence } = classifySingle(word, prev, next, lower);
|
|
129
|
+
upsert(entities, word, type, confidence);
|
|
69
130
|
}
|
|
70
131
|
}
|
|
71
132
|
// --- Pass 4: @mentions and #tags ---
|
|
72
133
|
const mentionPattern = /@([A-Za-z][A-Za-z0-9_-]{1,30})/g;
|
|
73
|
-
while ((m = mentionPattern.exec(text)) !== null)
|
|
134
|
+
while ((m = mentionPattern.exec(text)) !== null)
|
|
74
135
|
upsert(entities, m[1], 'person', 0.92);
|
|
75
|
-
}
|
|
76
136
|
const tagPattern = /#([A-Za-z][A-Za-z0-9_-]{1,30})/g;
|
|
77
|
-
while ((m = tagPattern.exec(text)) !== null)
|
|
137
|
+
while ((m = tagPattern.exec(text)) !== null)
|
|
78
138
|
upsert(entities, m[1], 'concept', 0.85);
|
|
79
|
-
|
|
80
|
-
// --- Pass 5: Version strings (v1.2.3, v0.7.0-alpha) ---
|
|
139
|
+
// --- Pass 5: version strings (v1.2.3) ---
|
|
81
140
|
const versionPattern = /\b(v\d+\.\d+(?:\.\d+)?(?:-[a-z]+)?)\b/gi;
|
|
82
141
|
while ((m = versionPattern.exec(text)) !== null) {
|
|
83
142
|
upsert(entities, m[1].toLowerCase(), 'technology', 0.80);
|
|
84
143
|
}
|
|
85
|
-
// Boost confidence for entities that appear multiple times
|
|
144
|
+
// Boost confidence for entities that appear multiple times.
|
|
86
145
|
for (const [name, entity] of entities) {
|
|
87
146
|
const count = countOccurrences(lower, name.toLowerCase());
|
|
88
147
|
if (count > 1) {
|
|
@@ -91,7 +150,7 @@ export function extractEntities(text) {
|
|
|
91
150
|
}
|
|
92
151
|
return Array.from(entities.values())
|
|
93
152
|
.sort((a, b) => b.confidence - a.confidence)
|
|
94
|
-
.slice(0, 20);
|
|
153
|
+
.slice(0, 20);
|
|
95
154
|
}
|
|
96
155
|
function upsert(map, name, type, confidence) {
|
|
97
156
|
const existing = map.get(name);
|
|
@@ -101,61 +160,58 @@ function upsert(map, name, type, confidence) {
|
|
|
101
160
|
}
|
|
102
161
|
function classifyCamel(name, context) {
|
|
103
162
|
const lower = name.toLowerCase();
|
|
104
|
-
// Common tech suffixes
|
|
105
163
|
if (TECH_SUFFIXES.some(s => lower.endsWith(s)) || lower.includes('db') || lower.includes('api')) {
|
|
106
164
|
return 'technology';
|
|
107
165
|
}
|
|
108
|
-
// Common project patterns
|
|
109
166
|
if (lower.includes('scout') || lower.includes('nexus') || lower.includes('gram') ||
|
|
110
167
|
lower.includes('claw') || lower.includes('brain') || lower.includes('hub')) {
|
|
111
168
|
return 'project';
|
|
112
169
|
}
|
|
113
|
-
// If mentioned near tech context words
|
|
114
170
|
if (TECH_CONTEXT_WORDS.some(w => context.includes(w)))
|
|
115
171
|
return 'technology';
|
|
116
|
-
return 'project';
|
|
117
|
-
}
|
|
118
|
-
function classifyMultiWord(name, context) {
|
|
119
|
-
const lower = name.toLowerCase();
|
|
120
|
-
const idx = context.indexOf(lower);
|
|
121
|
-
if (idx === -1)
|
|
122
|
-
return 'unknown';
|
|
123
|
-
const before = context.slice(Math.max(0, idx - 30), idx);
|
|
124
|
-
const after = context.slice(idx + lower.length, idx + lower.length + 30);
|
|
125
|
-
const window = before + ' ' + after;
|
|
126
|
-
if (PERSON_CONTEXT_WORDS.some(w => window.includes(w)))
|
|
127
|
-
return 'person';
|
|
128
|
-
if (LOCATION_CONTEXT.some(w => before.trim().endsWith(w)))
|
|
129
|
-
return 'location';
|
|
130
|
-
if (TECH_CONTEXT_WORDS.some(w => window.includes(w)))
|
|
131
|
-
return 'technology';
|
|
132
|
-
// Two capitalized words with common first names = person
|
|
133
|
-
const words = name.split(' ');
|
|
134
|
-
if (words.length === 2 && isLikelyFirstName(words[0]))
|
|
135
|
-
return 'person';
|
|
136
|
-
return 'concept';
|
|
172
|
+
return 'project';
|
|
137
173
|
}
|
|
138
|
-
|
|
174
|
+
// Classify a single Title-case token using only its immediate neighbours.
|
|
175
|
+
function classifySingle(word, prev, next, context) {
|
|
139
176
|
const lower = word.toLowerCase();
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
if (
|
|
149
|
-
return '
|
|
150
|
-
//
|
|
151
|
-
if (
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
177
|
+
if (TECH_GAZETTEER.has(lower))
|
|
178
|
+
return { type: 'technology', confidence: 0.85 };
|
|
179
|
+
if (TECH_SUFFIXES.some(s => lower.endsWith(s)))
|
|
180
|
+
return { type: 'technology', confidence: 0.72 };
|
|
181
|
+
// "Jeff said" / "Sarah prefers" — name is the subject of a person-verb.
|
|
182
|
+
if (PERSON_VERBS.has(next))
|
|
183
|
+
return { type: 'person', confidence: 0.85 };
|
|
184
|
+
// "emailed Jeff" / "met Sarah" — name is the object of a person-directed verb.
|
|
185
|
+
if (PERSON_VERBS_BEFORE.has(prev))
|
|
186
|
+
return { type: 'person', confidence: 0.74 };
|
|
187
|
+
// "in Boston" / "at Denver" — preceded by a location preposition.
|
|
188
|
+
if (LOCATION_PREPS.has(prev))
|
|
189
|
+
return { type: 'location', confidence: 0.72 };
|
|
190
|
+
// "Cartisien team" / "Acme labs" — followed by an org suffix.
|
|
191
|
+
if (ORG_SUFFIXES.has(next))
|
|
192
|
+
return { type: 'project', confidence: 0.78 };
|
|
193
|
+
// "uses Foo" / "Foo framework" with tech language nearby.
|
|
194
|
+
if ((prev === 'uses' || prev === 'using' || next === 'framework' || next === 'library') &&
|
|
195
|
+
TECH_CONTEXT_WORDS.some(w => context.includes(w))) {
|
|
196
|
+
return { type: 'technology', confidence: 0.70 };
|
|
197
|
+
}
|
|
198
|
+
// A real proper noun we cannot confidently type — keep it so the graph still
|
|
199
|
+
// gets the node, but at low confidence.
|
|
200
|
+
return { type: 'unknown', confidence: 0.55 };
|
|
155
201
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
202
|
+
// Classify a multi-word Title-case run using its immediate neighbours.
|
|
203
|
+
function classifyPhrase(words, prev, next) {
|
|
204
|
+
if (ORG_SUFFIXES.has(next))
|
|
205
|
+
return 'project';
|
|
206
|
+
if (PERSON_VERBS.has(next))
|
|
207
|
+
return 'person'; // "Jeff Smith said"
|
|
208
|
+
if (PERSON_VERBS_BEFORE.has(prev))
|
|
209
|
+
return 'person'; // "emailed Jeff Smith"
|
|
210
|
+
if (LOCATION_PREPS.has(prev))
|
|
211
|
+
return 'location'; // "in New York"
|
|
212
|
+
if (words.length === 2)
|
|
213
|
+
return 'person'; // two Title-case words: most often a full name
|
|
214
|
+
return 'concept';
|
|
159
215
|
}
|
|
160
216
|
function countOccurrences(text, term) {
|
|
161
217
|
let count = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/analysis/entities.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/analysis/entities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAUH,+EAA+E;AAC/E,gFAAgF;AAChF,wCAAwC;AACxC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM;IAC3E,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK;IAC3E,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK;IAC/E,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAC1E,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM;IACxE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAC7E,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAC9E,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IACxE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO;IAC9E,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ;IAC5E,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;IACjE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU;IAC9C,+DAA+D;IAC/D,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW;IACjF,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO;IAChF,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS;IACjF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;IACnF,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IACjF,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM;CAC/E,CAAC,CAAC;AAEH,0FAA0F;AAC1F,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;IAC3B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU;IAChF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO;IACnF,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ;IACpF,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU;IACnF,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK;IAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IAClF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO;CACxF,CAAC,CAAC;AAEH,sFAAsF;AACtF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS;IAC5E,SAAS,EAAE,OAAO,EAAE,WAAW;CAChC,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAE7D,mFAAmF;AACnF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;IAC3B,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK;CACjF,CAAC,CAAC;AAEH,iFAAiF;AACjF,0CAA0C;AAC1C,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO;IAChF,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY;IACvF,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ;IACpF,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;IACtF,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IACzF,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ;IACnF,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY;CAClF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;IAClF,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACvB,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;IAClF,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAEtE,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAEjC,qEAAqE;IACrE,MAAM,YAAY,GAAG,uCAAuC,CAAC;IAC7D,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;IACtF,CAAC;IAED,gFAAgF;IAChF,4EAA4E;IAC5E,iDAAiD;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC9C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,QAAQ;aAClB,IAAI,EAAE;aACN,KAAK,CAAC,KAAK,CAAC;aACZ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,EAAE,EAAE,CAAC,CAAC,CAAC;QAE7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;YACtB,4EAA4E;YAC5E,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC/C,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YAEnC,8EAA8E;YAC9E,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,OACE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;gBACnB,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;gBACvC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,EAC7B,CAAC;gBACD,CAAC,EAAE,CAAC;YACN,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC9C,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1B,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;gBACnF,CAAC;gBACD,CAAC,GAAG,CAAC,CAAC,CAAC,kBAAkB;gBACzB,SAAS;YACX,CAAC;YAED,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS,CAAC,0CAA0C;YAC5E,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YACrE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,MAAM,cAAc,GAAG,iCAAiC,CAAC;IACzD,OAAO,CAAC,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI;QAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IACzF,MAAM,UAAU,GAAG,iCAAiC,CAAC;IACrD,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI;QAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAEtF,2CAA2C;IAC3C,MAAM,cAAc,GAAG,yCAAyC,CAAC;IACjE,OAAO,CAAC,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,4DAA4D;IAC5D,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1D,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;SACjC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC;SAC3C,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,MAAM,CAAC,GAAiC,EAAE,IAAY,EAAE,IAAgB,EAAE,UAAkB;IACnG,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,UAAU,GAAG,UAAU,EAAE,CAAC;QAClD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,OAAe;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACjC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAChG,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5E,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/E,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IAC3E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,0EAA0E;AAC1E,SAAS,cAAc,CACrB,IAAY,EACZ,IAAY,EACZ,IAAY,EACZ,OAAe;IAEf,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAEjC,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC/E,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAEhG,wEAAwE;IACxE,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACxE,+EAA+E;IAC/E,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC/E,kEAAkE;IAClE,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC5E,8DAA8D;IAC9D,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACzE,0DAA0D;IAC1D,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,SAAS,CAAC;QACnF,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAClD,CAAC;IAED,6EAA6E;IAC7E,wCAAwC;IACxC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;AAC/C,CAAC;AAED,uEAAuE;AACvE,SAAS,cAAc,CAAC,KAAe,EAAE,IAAY,EAAE,IAAY;IACjE,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7C,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC,CAAQ,oBAAoB;IACxE,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC,CAAC,uBAAuB;IAC3E,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,UAAU,CAAC,CAAI,gBAAgB;IACpE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC,CAAY,+CAA+C;IACnG,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY,EAAE,IAAY;IAClD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC9C,KAAK,EAAE,CAAC;QACR,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAgB;IAC7C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ,CAAC,CAAC,OAAO,iBAAiB,CAAC;QACxC,KAAK,SAAS,CAAC,CAAC,OAAO,kBAAkB,CAAC;QAC1C,KAAK,YAAY,CAAC,CAAC,OAAO,iBAAiB,CAAC;QAC5C,KAAK,UAAU,CAAC,CAAC,OAAO,YAAY,CAAC;QACrC,KAAK,SAAS,CAAC,CAAC,OAAO,oBAAoB,CAAC;QAC5C,OAAO,CAAC,CAAC,OAAO,YAAY,CAAC;IAC/B,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cartisien/engram-mcp",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"description": "MCP server for Engram — structured agent memory as relational intelligence",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/server.js",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"license": "MIT",
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@modelcontextprotocol/sdk": "^1.0.0",
|
|
25
|
-
"@cartisien/engram": "2.1.
|
|
25
|
+
"@cartisien/engram": "2.1.2"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@types/node": "^20.11.0",
|