Skip to content

Releases: shaneholloman/mcp-knowledge-graph

v1.3.2

Choose a tag to compare

@shaneholloman shaneholloman released this 22 Dec 21:49

What's Changed

Documentation Update

The README now reflects the new aim_memory_* tool names and includes better configuration examples.

Tool name updates:

  • All references updated from aim_* to aim_memory_* pattern
  • Clearer tool descriptions focused on memory operations

Configuration examples:

  • Option 1: Default .aim directory (simple setup)
  • Option 2: Dropbox/cloud sync (portable across machines)
  • Note: The author uses Dropbox for his own memories

Full Changelog: v1.3.1...v1.3.2

v1.3.1

Choose a tag to compare

@shaneholloman shaneholloman released this 22 Dec 21:36

What's Changed

Bug Fixes

  • Fixed aim_memory_search and aim_memory_get descriptions that still referenced old tool names (open_nodes, search_nodes)

Improved Descriptions

Tool descriptions now use memory-friendly language instead of graph database jargon:

Before After
"Create multiple new entities in the knowledge graph" "Store new memories"
"Fuzzy search for entities in the knowledge graph" "Search memories by keyword"
"Delete multiple entities and their associated relations" "Forget memories"
"Create relations (edges) between entities" "Link two memories together"

This makes the tools more intuitive for both AI agents and human users.

Full Changelog: v1.3.0...v1.3.1

v1.3.0

Choose a tag to compare

@shaneholloman shaneholloman released this 22 Dec 21:18

What's Changed

Renamed Tools for Better AI Discoverability

All tools now use the aim_memory_* naming pattern, making it immediately clear these are memory operations:

Old Name New Name
aim_create_entities aim_memory_store
aim_add_observations aim_memory_add_facts
aim_create_relations aim_memory_link
aim_search_nodes aim_memory_search
aim_open_nodes aim_memory_get
aim_read_graph aim_memory_read_all
aim_delete_entities aim_memory_forget
aim_delete_observations aim_memory_remove_facts
aim_delete_relations aim_memory_unlink
aim_list_databases aim_memory_list_stores

Why This Change?

When an AI has many tools available and a user says "remember this", the tool name should make it obvious which tool to use. aim_memory_store is immediately recognizable as a memory operation, while aim_create_entities required reading the description.

Compatibility

No data format changes - existing .aim databases and memory files remain fully compatible.

Full Changelog: v1.2.3...v1.3.0

v1.2.3

Choose a tag to compare

@shaneholloman shaneholloman released this 22 Dec 20:52

What's Changed

New Feature: Pretty Output Format

Query tools now support a format parameter for human-readable output:

  • aim_read_graph({format: "pretty"})
  • aim_search_nodes({query: "...", format: "pretty"})
  • aim_open_nodes({names: [...], format: "pretty"})

Example pretty output:

=== work database ===

ENTITIES (2):
  John [person]
    - Met at conference
    - Works in tech
  ProjectAlpha [project]
    - Due Q1 2025

RELATIONS (1):
  John --works_on--> ProjectAlpha

Use format: "json" (default) for programmatic use, format: "pretty" for human-readable output.

Full Changelog: v1.2.2...v1.2.3

v1.2.2

Choose a tag to compare

@shaneholloman shaneholloman released this 22 Dec 20:42

What's Changed

Improved Documentation

  • Added AIM (AI Memory) acronym expansion to tool descriptions
  • Clarified search_nodes vs open_nodes distinction
  • Documented what search_nodes matches (entity names, types, and observation content)
  • Explained active voice convention for relations with examples
  • Added RETURNS sections showing what each tool returns
  • Fixed context/database terminology consistency

Bug Fixes

  • Added .aim as a project marker for detection (fixes #17)
    • Users no longer need .git or language-specific files
    • Simply creating a .aim folder is sufficient for project-local storage
  • Version now read from package.json instead of being hardcoded

Full Changelog: v1.2.0...v1.2.2

v1.2.1

Choose a tag to compare

@shaneholloman shaneholloman released this 22 Dec 20:35

What's Changed

Improved Documentation

  • Added AIM (AI Memory) acronym expansion to tool descriptions
  • Clarified search_nodes vs open_nodes distinction
  • Documented what search_nodes matches (entity names, types, and observation content)
  • Explained active voice convention for relations with examples
  • Added RETURNS sections showing what each tool returns
  • Fixed context/database terminology consistency

Bug Fixes

  • Added .aim as a project marker for detection (fixes #17)
    • Users no longer need .git or language-specific files
    • Simply creating a .aim folder is sufficient for project-local storage
  • Version now read from package.json instead of being hardcoded

Full Changelog: v1.2.0...v1.2.1

v1.2.0

Choose a tag to compare

@shaneholloman shaneholloman released this 26 Aug 05:25

v1.2.0: Multi-Database AIM System

Major Features

Master Database Concept

  • Master database is now the default storage for all operations when no specific database is requested
  • Shows as "default" in listings and stored as memory.jsonl
  • Primary knowledge graph that persists across all conversations

Multiple Database Support

  • Organize memories by topic with named databases (work, personal, health, etc.)
  • Automatic creation of new databases - no setup required
  • Each database maintains its own isolated knowledge graph

Project-Local Memory

  • Automatic project detection using .aim directories
  • Project-local memory storage keeps work separate from global memories
  • Works with common project markers (.git, package.json, etc.)

Location Override System

  • location parameter allows forcing project or global storage
  • Switch between project and global databases from anywhere
  • Full flexibility to access any database from any location

Database Discovery

  • New aim_list_databases tool shows all available databases
  • See both project-local and global databases in one view
  • Current location detection (project vs global)

Safety & Consistency

  • _aim safety markers prevent overwriting unrelated JSONL files
  • All tools now use aim_ prefixes for clear organization
  • Consistent AIM naming: .aim directories, aim_ tools, _aim markers

Breaking Changes

  • All tool names now have aim_ prefix (e.g., create_entitiesaim_create_entities)
  • Safety markers required in all memory files

Examples

Master Database (Default)

aim_create_entities({
  entities: [{
    name: "John",
    entityType: "person", 
    observations: ["Met at conference"]
  }]
})

Named Database

aim_create_entities({
  context: "work",
  entities: [{
    name: "Q4_Project",
    entityType: "project",
    observations: ["Due December 2024"]
  }]
})

Location Override

aim_read_graph({
  context: "work",
  location: "global"  // Force global even from project directory
})

Installation

npx mcp-knowledge-graph --memory-path /path/to/your/memory/directory

Full Changelog

  • Added master database concept as default storage
  • Implemented context switching with database parameter
  • Added project detection with .aim directories
  • Added location override parameter for project/global choice
  • Added aim_list_databases tool for database discovery
  • Added _aim safety markers for file protection
  • Renamed all tools with aim_ prefixes for consistency
  • Updated README with crystal clear master database documentation
  • Added .aim directory examples to repository

v1.0.1

Choose a tag to compare

@shaneholloman shaneholloman released this 24 Apr 09:56