mcp-knowledge-graph 1.2.2 → 1.3.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/dist/index.js CHANGED
@@ -93,6 +93,38 @@ function getMemoryFilePath(context, location) {
93
93
  // Fallback to configured base directory
94
94
  return path.join(baseMemoryPath, filename);
95
95
  }
96
+ // Format a knowledge graph as human-readable text
97
+ function formatGraphPretty(graph, context) {
98
+ const lines = [];
99
+ const dbName = context || 'default';
100
+ lines.push(`=== ${dbName} database ===`);
101
+ lines.push('');
102
+ // Entities section
103
+ if (graph.entities.length === 0) {
104
+ lines.push('ENTITIES: (none)');
105
+ }
106
+ else {
107
+ lines.push(`ENTITIES (${graph.entities.length}):`);
108
+ for (const entity of graph.entities) {
109
+ lines.push(` ${entity.name} [${entity.entityType}]`);
110
+ for (const obs of entity.observations) {
111
+ lines.push(` - ${obs}`);
112
+ }
113
+ }
114
+ }
115
+ lines.push('');
116
+ // Relations section
117
+ if (graph.relations.length === 0) {
118
+ lines.push('RELATIONS: (none)');
119
+ }
120
+ else {
121
+ lines.push(`RELATIONS (${graph.relations.length}):`);
122
+ for (const rel of graph.relations) {
123
+ lines.push(` ${rel.from} --${rel.relationType}--> ${rel.to}`);
124
+ }
125
+ }
126
+ return lines.join('\n');
127
+ }
96
128
  // The KnowledgeGraphManager class contains all operations to interact with the knowledge graph
97
129
  class KnowledgeGraphManager {
98
130
  async loadGraph(context, location) {
@@ -284,7 +316,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
284
316
  return {
285
317
  tools: [
286
318
  {
287
- name: "aim_create_entities",
319
+ name: "aim_memory_store",
288
320
  description: `Create multiple new entities in the knowledge graph.
289
321
 
290
322
  AIM (AI Memory) provides persistent memory for AI assistants using a local knowledge graph. The 'aim_' prefix groups all memory tools together.
@@ -305,10 +337,10 @@ STORAGE LOCATIONS: Files are stored as JSONL (e.g., memory.jsonl, memory-work.js
305
337
  RETURNS: Array of created entities.
306
338
 
307
339
  EXAMPLES:
308
- - Master database (default): aim_create_entities({entities: [{name: "John", entityType: "person", observations: ["Met at conference"]}]})
309
- - Work database: aim_create_entities({context: "work", entities: [{name: "Q4_Project", entityType: "project", observations: ["Due December 2024"]}]})
310
- - Master database in global location: aim_create_entities({location: "global", entities: [{name: "John", entityType: "person", observations: ["Met at conference"]}]})
311
- - Work database in project location: aim_create_entities({context: "work", location: "project", entities: [{name: "Q4_Project", entityType: "project", observations: ["Due December 2024"]}]})`,
340
+ - Master database (default): aim_memory_store({entities: [{name: "John", entityType: "person", observations: ["Met at conference"]}]})
341
+ - Work database: aim_memory_store({context: "work", entities: [{name: "Q4_Project", entityType: "project", observations: ["Due December 2024"]}]})
342
+ - Master database in global location: aim_memory_store({location: "global", entities: [{name: "John", entityType: "person", observations: ["Met at conference"]}]})
343
+ - Work database in project location: aim_memory_store({context: "work", location: "project", entities: [{name: "Q4_Project", entityType: "project", observations: ["Due December 2024"]}]})`,
312
344
  inputSchema: {
313
345
  type: "object",
314
346
  properties: {
@@ -342,7 +374,7 @@ EXAMPLES:
342
374
  },
343
375
  },
344
376
  {
345
- name: "aim_create_relations",
377
+ name: "aim_memory_link",
346
378
  description: `Create relations (edges) between entities in the knowledge graph.
347
379
 
348
380
  RELATION STRUCTURE: Each relation has 'from' (subject), 'relationType' (verb), and 'to' (object).
@@ -357,9 +389,9 @@ RETURNS: Array of created relations (duplicates are ignored).
357
389
  DATABASE: Relations are created in the specified 'context' database, or master database if not specified.
358
390
 
359
391
  EXAMPLES:
360
- - aim_create_relations({relations: [{from: "John", to: "TechConf2024", relationType: "attended"}]})
361
- - aim_create_relations({context: "work", relations: [{from: "Alice", to: "Q4_Project", relationType: "manages"}]})
362
- - Multiple: aim_create_relations({relations: [{from: "John", to: "Alice", relationType: "knows"}, {from: "John", to: "Acme_Corp", relationType: "works_at"}]})`,
392
+ - aim_memory_link({relations: [{from: "John", to: "TechConf2024", relationType: "attended"}]})
393
+ - aim_memory_link({context: "work", relations: [{from: "Alice", to: "Q4_Project", relationType: "manages"}]})
394
+ - Multiple: aim_memory_link({relations: [{from: "John", to: "Alice", relationType: "knows"}, {from: "John", to: "Acme_Corp", relationType: "works_at"}]})`,
363
395
  inputSchema: {
364
396
  type: "object",
365
397
  properties: {
@@ -389,18 +421,18 @@ EXAMPLES:
389
421
  },
390
422
  },
391
423
  {
392
- name: "aim_add_observations",
424
+ name: "aim_memory_add_facts",
393
425
  description: `Add new observations (facts) to existing entities.
394
426
 
395
- IMPORTANT: Entity must already exist - use aim_create_entities first. Throws error if entity not found.
427
+ IMPORTANT: Entity must already exist - use aim_memory_store first. Throws error if entity not found.
396
428
 
397
429
  RETURNS: Array of {entityName, addedObservations} showing what was added (duplicates are ignored).
398
430
 
399
431
  DATABASE: Adds to entities in the specified 'context' database, or master database if not specified.
400
432
 
401
433
  EXAMPLES:
402
- - aim_add_observations({observations: [{entityName: "John", contents: ["Lives in Seattle", "Works in tech"]}]})
403
- - aim_add_observations({context: "work", observations: [{entityName: "Q4_Project", contents: ["Behind schedule", "Need more resources"]}]})`,
434
+ - aim_memory_add_facts({observations: [{entityName: "John", contents: ["Lives in Seattle", "Works in tech"]}]})
435
+ - aim_memory_add_facts({context: "work", observations: [{entityName: "Q4_Project", contents: ["Behind schedule", "Need more resources"]}]})`,
404
436
  inputSchema: {
405
437
  type: "object",
406
438
  properties: {
@@ -433,7 +465,7 @@ EXAMPLES:
433
465
  },
434
466
  },
435
467
  {
436
- name: "aim_delete_entities",
468
+ name: "aim_memory_forget",
437
469
  description: `Delete multiple entities and their associated relations from the knowledge graph.
438
470
 
439
471
  DATABASE SELECTION: Entities are deleted from the specified database's knowledge graph.
@@ -441,10 +473,10 @@ DATABASE SELECTION: Entities are deleted from the specified database's knowledge
441
473
  LOCATION OVERRIDE: Use the 'location' parameter to force deletion from 'project' (.aim directory) or 'global' (configured directory). Leave blank for auto-detection.
442
474
 
443
475
  EXAMPLES:
444
- - Master database (default): aim_delete_entities({entityNames: ["OldProject"]})
445
- - Work database: aim_delete_entities({context: "work", entityNames: ["CompletedTask", "CancelledMeeting"]})
446
- - Master database in global location: aim_delete_entities({location: "global", entityNames: ["OldProject"]})
447
- - Personal database in project location: aim_delete_entities({context: "personal", location: "project", entityNames: ["ExpiredReminder"]})`,
476
+ - Master database (default): aim_memory_forget({entityNames: ["OldProject"]})
477
+ - Work database: aim_memory_forget({context: "work", entityNames: ["CompletedTask", "CancelledMeeting"]})
478
+ - Master database in global location: aim_memory_forget({location: "global", entityNames: ["OldProject"]})
479
+ - Personal database in project location: aim_memory_forget({context: "personal", location: "project", entityNames: ["ExpiredReminder"]})`,
448
480
  inputSchema: {
449
481
  type: "object",
450
482
  properties: {
@@ -467,7 +499,7 @@ EXAMPLES:
467
499
  },
468
500
  },
469
501
  {
470
- name: "aim_delete_observations",
502
+ name: "aim_memory_remove_facts",
471
503
  description: `Delete specific observations from entities in the knowledge graph.
472
504
 
473
505
  DATABASE SELECTION: Observations are deleted from entities within the specified database's knowledge graph.
@@ -475,10 +507,10 @@ DATABASE SELECTION: Observations are deleted from entities within the specified
475
507
  LOCATION OVERRIDE: Use the 'location' parameter to force deletion from 'project' (.aim directory) or 'global' (configured directory). Leave blank for auto-detection.
476
508
 
477
509
  EXAMPLES:
478
- - Master database (default): aim_delete_observations({deletions: [{entityName: "John", observations: ["Outdated info"]}]})
479
- - Work database: aim_delete_observations({context: "work", deletions: [{entityName: "Project", observations: ["Old deadline"]}]})
480
- - Master database in global location: aim_delete_observations({location: "global", deletions: [{entityName: "John", observations: ["Outdated info"]}]})
481
- - Health database in project location: aim_delete_observations({context: "health", location: "project", deletions: [{entityName: "Exercise", observations: ["Injured knee"]}]})`,
510
+ - Master database (default): aim_memory_remove_facts({deletions: [{entityName: "John", observations: ["Outdated info"]}]})
511
+ - Work database: aim_memory_remove_facts({context: "work", deletions: [{entityName: "Project", observations: ["Old deadline"]}]})
512
+ - Master database in global location: aim_memory_remove_facts({location: "global", deletions: [{entityName: "John", observations: ["Outdated info"]}]})
513
+ - Health database in project location: aim_memory_remove_facts({context: "health", location: "project", deletions: [{entityName: "Exercise", observations: ["Injured knee"]}]})`,
482
514
  inputSchema: {
483
515
  type: "object",
484
516
  properties: {
@@ -511,7 +543,7 @@ EXAMPLES:
511
543
  },
512
544
  },
513
545
  {
514
- name: "aim_delete_relations",
546
+ name: "aim_memory_unlink",
515
547
  description: `Delete multiple relations from the knowledge graph.
516
548
 
517
549
  DATABASE SELECTION: Relations are deleted from the specified database's knowledge graph.
@@ -519,10 +551,10 @@ DATABASE SELECTION: Relations are deleted from the specified database's knowledg
519
551
  LOCATION OVERRIDE: Use the 'location' parameter to force deletion from 'project' (.aim directory) or 'global' (configured directory). Leave blank for auto-detection.
520
552
 
521
553
  EXAMPLES:
522
- - Master database (default): aim_delete_relations({relations: [{from: "John", to: "OldCompany", relationType: "worked_at"}]})
523
- - Work database: aim_delete_relations({context: "work", relations: [{from: "Alice", to: "CancelledProject", relationType: "manages"}]})
524
- - Master database in global location: aim_delete_relations({location: "global", relations: [{from: "John", to: "OldCompany", relationType: "worked_at"}]})
525
- - Personal database in project location: aim_delete_relations({context: "personal", location: "project", relations: [{from: "Me", to: "OldHobby", relationType: "enjoys"}]})`,
554
+ - Master database (default): aim_memory_unlink({relations: [{from: "John", to: "OldCompany", relationType: "worked_at"}]})
555
+ - Work database: aim_memory_unlink({context: "work", relations: [{from: "Alice", to: "CancelledProject", relationType: "manages"}]})
556
+ - Master database in global location: aim_memory_unlink({location: "global", relations: [{from: "John", to: "OldCompany", relationType: "worked_at"}]})
557
+ - Personal database in project location: aim_memory_unlink({context: "personal", location: "project", relations: [{from: "Me", to: "OldHobby", relationType: "enjoys"}]})`,
526
558
  inputSchema: {
527
559
  type: "object",
528
560
  properties: {
@@ -553,18 +585,19 @@ EXAMPLES:
553
585
  },
554
586
  },
555
587
  {
556
- name: "aim_read_graph",
588
+ name: "aim_memory_read_all",
557
589
  description: `Read the entire knowledge graph.
558
590
 
559
- DATABASE SELECTION: Reads from the specified database or master database if no database is specified.
591
+ FORMAT OPTIONS:
592
+ - "json" (default): Structured JSON for programmatic use
593
+ - "pretty": Human-readable text format
560
594
 
561
- LOCATION OVERRIDE: Use the 'location' parameter to force reading from 'project' (.aim directory) or 'global' (configured directory). Leave blank for auto-detection.
595
+ DATABASE: Reads from the specified 'context' database, or master database if not specified.
562
596
 
563
597
  EXAMPLES:
564
- - Master database (default): aim_read_graph({})
565
- - Work database: aim_read_graph({context: "work"})
566
- - Master database in global location: aim_read_graph({location: "global"})
567
- - Personal database in project location: aim_read_graph({context: "personal", location: "project"})`,
598
+ - aim_memory_read_all({}) - JSON format
599
+ - aim_memory_read_all({format: "pretty"}) - Human-readable
600
+ - aim_memory_read_all({context: "work", format: "pretty"}) - Work database, pretty`,
568
601
  inputSchema: {
569
602
  type: "object",
570
603
  properties: {
@@ -575,13 +608,18 @@ EXAMPLES:
575
608
  location: {
576
609
  type: "string",
577
610
  enum: ["project", "global"],
578
- description: "Optional storage location override. 'project' forces project-local .aim directory, 'global' forces global directory. If not specified, uses automatic detection."
611
+ description: "Optional storage location override. 'project' for .aim directory, 'global' for configured directory."
612
+ },
613
+ format: {
614
+ type: "string",
615
+ enum: ["json", "pretty"],
616
+ description: "Output format. 'json' (default) for structured data, 'pretty' for human-readable text."
579
617
  }
580
618
  },
581
619
  },
582
620
  },
583
621
  {
584
- name: "aim_search_nodes",
622
+ name: "aim_memory_search",
585
623
  description: `Fuzzy search for entities in the knowledge graph. Use this when you don't know exact entity names.
586
624
 
587
625
  WHAT IT SEARCHES: Matches query (case-insensitive) against:
@@ -589,17 +627,16 @@ WHAT IT SEARCHES: Matches query (case-insensitive) against:
589
627
  - Entity types (e.g., "person" matches all person entities)
590
628
  - Observation content (e.g., "Seattle" matches entities with Seattle in their observations)
591
629
 
592
- VS aim_open_nodes: Use search when you need fuzzy matching. Use open_nodes when you know exact entity names.
593
-
594
- RETURNS: Matching entities and relations between them.
630
+ VS aim_memory_get: Use search when you need fuzzy matching. Use open_nodes when you know exact entity names.
595
631
 
596
- DATABASE: Searches within the specified 'context' database, or master database if not specified.
632
+ FORMAT OPTIONS:
633
+ - "json" (default): Structured JSON for programmatic use
634
+ - "pretty": Human-readable text format
597
635
 
598
636
  EXAMPLES:
599
- - Master database (default): aim_search_nodes({query: "John"})
600
- - Work database: aim_search_nodes({context: "work", query: "project"})
601
- - Search by type: aim_search_nodes({query: "person"})
602
- - Search observation content: aim_search_nodes({query: "Seattle"})`,
637
+ - aim_memory_search({query: "John"}) - JSON format
638
+ - aim_memory_search({query: "project", format: "pretty"}) - Human-readable
639
+ - aim_memory_search({context: "work", query: "Shane", format: "pretty"})`,
603
640
  inputSchema: {
604
641
  type: "object",
605
642
  properties: {
@@ -613,23 +650,31 @@ EXAMPLES:
613
650
  description: "Optional storage location override. 'project' for .aim directory, 'global' for configured directory."
614
651
  },
615
652
  query: { type: "string", description: "Search text to match against entity names, entity types, and observation content (case-insensitive)" },
653
+ format: {
654
+ type: "string",
655
+ enum: ["json", "pretty"],
656
+ description: "Output format. 'json' (default) for structured data, 'pretty' for human-readable text."
657
+ }
616
658
  },
617
659
  required: ["query"],
618
660
  },
619
661
  },
620
662
  {
621
- name: "aim_open_nodes",
663
+ name: "aim_memory_get",
622
664
  description: `Retrieve specific entities by exact name. Use this when you know the exact entity names you want.
623
665
 
624
- VS aim_search_nodes: Use open_nodes for exact name lookup. Use search_nodes when you need fuzzy matching or don't know exact names.
666
+ VS aim_memory_search: Use open_nodes for exact name lookup. Use search_nodes when you need fuzzy matching or don't know exact names.
625
667
 
626
668
  RETURNS: Requested entities and relations between them. Non-existent names are silently ignored.
627
669
 
628
- DATABASE: Retrieves from the specified 'context' database, or master database if not specified.
670
+ FORMAT OPTIONS:
671
+ - "json" (default): Structured JSON for programmatic use
672
+ - "pretty": Human-readable text format
629
673
 
630
674
  EXAMPLES:
631
- - Master database (default): aim_open_nodes({names: ["John", "TechConf2024"]})
632
- - Work database: aim_open_nodes({context: "work", names: ["Q4_Project", "Alice"]})`,
675
+ - aim_memory_get({names: ["John", "TechConf2024"]}) - JSON format
676
+ - aim_memory_get({names: ["Shane"], format: "pretty"}) - Human-readable
677
+ - aim_memory_get({context: "work", names: ["Q4_Project"], format: "pretty"})`,
633
678
  inputSchema: {
634
679
  type: "object",
635
680
  properties: {
@@ -640,19 +685,24 @@ EXAMPLES:
640
685
  location: {
641
686
  type: "string",
642
687
  enum: ["project", "global"],
643
- description: "Optional storage location override. 'project' forces project-local .aim directory, 'global' forces global directory. If not specified, uses automatic detection."
688
+ description: "Optional storage location override. 'project' for .aim directory, 'global' for configured directory."
644
689
  },
645
690
  names: {
646
691
  type: "array",
647
692
  items: { type: "string" },
648
693
  description: "An array of entity names to retrieve",
649
694
  },
695
+ format: {
696
+ type: "string",
697
+ enum: ["json", "pretty"],
698
+ description: "Output format. 'json' (default) for structured data, 'pretty' for human-readable text."
699
+ }
650
700
  },
651
701
  required: ["names"],
652
702
  },
653
703
  },
654
704
  {
655
- name: "aim_list_databases",
705
+ name: "aim_memory_list_stores",
656
706
  description: `List all available memory databases and show current storage location.
657
707
 
658
708
  DATABASE TYPES:
@@ -667,7 +717,7 @@ RETURNS: {project_databases: [...], global_databases: [...], current_location: "
667
717
  Use this to discover what databases exist before querying them.
668
718
 
669
719
  EXAMPLES:
670
- - aim_list_databases() - Shows all available databases and current storage location`,
720
+ - aim_memory_list_stores() - Shows all available databases and current storage location`,
671
721
  inputSchema: {
672
722
  type: "object",
673
723
  properties: {},
@@ -682,28 +732,43 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
682
732
  throw new Error(`No arguments provided for tool: ${name}`);
683
733
  }
684
734
  switch (name) {
685
- case "aim_create_entities":
735
+ case "aim_memory_store":
686
736
  return { content: [{ type: "text", text: JSON.stringify(await knowledgeGraphManager.createEntities(args.entities, args.context, args.location), null, 2) }] };
687
- case "aim_create_relations":
737
+ case "aim_memory_link":
688
738
  return { content: [{ type: "text", text: JSON.stringify(await knowledgeGraphManager.createRelations(args.relations, args.context, args.location), null, 2) }] };
689
- case "aim_add_observations":
739
+ case "aim_memory_add_facts":
690
740
  return { content: [{ type: "text", text: JSON.stringify(await knowledgeGraphManager.addObservations(args.observations, args.context, args.location), null, 2) }] };
691
- case "aim_delete_entities":
741
+ case "aim_memory_forget":
692
742
  await knowledgeGraphManager.deleteEntities(args.entityNames, args.context, args.location);
693
743
  return { content: [{ type: "text", text: "Entities deleted successfully" }] };
694
- case "aim_delete_observations":
744
+ case "aim_memory_remove_facts":
695
745
  await knowledgeGraphManager.deleteObservations(args.deletions, args.context, args.location);
696
746
  return { content: [{ type: "text", text: "Observations deleted successfully" }] };
697
- case "aim_delete_relations":
747
+ case "aim_memory_unlink":
698
748
  await knowledgeGraphManager.deleteRelations(args.relations, args.context, args.location);
699
749
  return { content: [{ type: "text", text: "Relations deleted successfully" }] };
700
- case "aim_read_graph":
701
- return { content: [{ type: "text", text: JSON.stringify(await knowledgeGraphManager.readGraph(args.context, args.location), null, 2) }] };
702
- case "aim_search_nodes":
703
- return { content: [{ type: "text", text: JSON.stringify(await knowledgeGraphManager.searchNodes(args.query, args.context, args.location), null, 2) }] };
704
- case "aim_open_nodes":
705
- return { content: [{ type: "text", text: JSON.stringify(await knowledgeGraphManager.openNodes(args.names, args.context, args.location), null, 2) }] };
706
- case "aim_list_databases":
750
+ case "aim_memory_read_all": {
751
+ const graph = await knowledgeGraphManager.readGraph(args.context, args.location);
752
+ const output = args.format === 'pretty'
753
+ ? formatGraphPretty(graph, args.context)
754
+ : JSON.stringify(graph, null, 2);
755
+ return { content: [{ type: "text", text: output }] };
756
+ }
757
+ case "aim_memory_search": {
758
+ const graph = await knowledgeGraphManager.searchNodes(args.query, args.context, args.location);
759
+ const output = args.format === 'pretty'
760
+ ? formatGraphPretty(graph, args.context)
761
+ : JSON.stringify(graph, null, 2);
762
+ return { content: [{ type: "text", text: output }] };
763
+ }
764
+ case "aim_memory_get": {
765
+ const graph = await knowledgeGraphManager.openNodes(args.names, args.context, args.location);
766
+ const output = args.format === 'pretty'
767
+ ? formatGraphPretty(graph, args.context)
768
+ : JSON.stringify(graph, null, 2);
769
+ return { content: [{ type: "text", text: output }] };
770
+ }
771
+ case "aim_memory_list_stores":
707
772
  return { content: [{ type: "text", text: JSON.stringify(await knowledgeGraphManager.listDatabases(), null, 2) }] };
708
773
  default:
709
774
  throw new Error(`Unknown tool: ${name}`);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-knowledge-graph",
3
- "version": "1.2.2",
3
+ "version": "1.3.0",
4
4
  "description": "MCP server enabling persistent memory for AI models through a local knowledge graph",
5
5
  "license": "MIT",
6
6
  "author": "Shane Holloman",