Skip to main content
Glama
jamjet-labs

jamjet-labs/engram-mcp-server

by jamjet-labs

AIエージェントのための永続メモリ — 時系列ナレッジグラフ、ハイブリッド検索、SQLiteまたはPostgreSQL対応。

crates.io Docker MCP Registry License

java-ai-memory.dev · ソースコード · JamJetドキュメント · Discord


Engramは、AIエージェントのための永続メモリ層です。会話から事実を抽出し、時系列ナレッジグラフに保存します。また、単一のSQLiteファイルまたはPostgreSQLデータベースをバックエンドとして、セマンティック検索とキーワード検索を組み合わせたハイブリッド検索による取得が可能です。

このリポジトリはGlamaレジストリのリストをホストしています。ソースコードはJamJetメインリポジトリにあります。

クイックスタート — 30秒

# Docker — uses local Ollama by default
docker run --rm -i \
  -v engram-data:/data \
  ghcr.io/jamjet-labs/engram-server:0.5.0

またはcrates.ioからインストール:

cargo install jamjet-engram-server
engram serve

Claude Desktopの設定

~/Library/Application Support/Claude/claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "engram": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-v", "engram-data:/data",
        "ghcr.io/jamjet-labs/engram-server:0.5.0"
      ]
    }
  }
}

再起動後、11個のMCPツールがモデルで利用可能になります。

Related MCP server: Graphiti FastMCP Server

MCPツール (11)

メモリツール (7)

ツール

説明

memory_add

LLMによる事実抽出を使用して、会話メッセージから事実を抽出・保存します。副作用: 設定されたLLMを呼び出して事実を解析し、ナレッジグラフに書き込みます。抽出された事実のIDを返します。messages配列とuser_idが必要です。

memory_recall

ベクトル類似性を使用して、保存された事実に対してセマンティック検索を行います。読み取り専用、副作用なし。user_idおよびオプションのorg_idでスコープされた、クエリに一致するランク付けされた事実を返します。応答を生成する前に、関連するコンテキストを取得するために使用します。

memory_context

階層を意識した事実選択を行い、LLMプロンプト用のトークン制限付きコンテキストブロックを組み立てます。読み取り専用。指定されたトークン制限内で、最も関連性の高い事実をフォーマットされた文字列として返します。すぐに使えるプロンプトスニペットが必要な場合に、memory_recallの代わりに使用します。

memory_search

全文検索(SQLite FTS5 / Postgres)を使用して、事実に対してキーワード検索を行います。読み取り専用、副作用なし。正確なキーワードに一致する事実を返します。memory_recallによるセマンティックな類似性ではなく、正確な用語の一致が必要な場合に使用します。

memory_forget

IDを指定して事実を論理削除(ソフトデリート)します(理由の指定も可能)。副作用: ナレッジグラフ上で事実を削除済みとしてマークします(物理的には削除されません)。このツールで元に戻すことはできません。ユーザーが特定の情報の削除を求めた場合に使用します。

memory_stats

集計統計を取得します:事実の総数、有効な(削除されていない)事実の数、エンティティ数、関係数。読み取り専用、副作用なし。メモリストアのサイズと健全性を把握するために使用します。

memory_consolidate

ナレッジグラフのメンテナンスサイクルを実行します。古い事実の減衰、信頼度の高い事実の昇格、重複に近い事実の統合、クラスターの要約を行います。副作用: 事実のスコアを変更し、事実を統合またはアーカイブする場合があります。メモリを正確に保つために定期的に実行してください。

メッセージストアツール (4)

ツール

説明

messages_save

IDを指定して会話のチャットメッセージを保存します。副作用: メッセージをストアに書き込み、オプションで事実抽出をトリガーします(--extract-on-saveで制御)。抽出された事実とともに、会話履歴全体を永続化するために使用します。

messages_get

IDを指定して会話の全メッセージを取得します。読み取り専用、副作用なし。順序付けられたメッセージ配列を返します。過去の会話を再生または確認するために使用します。

messages_list

メッセージストア内のすべての会話IDをリストします。読み取り専用、副作用なし。会話ID文字列の配列を返します。messages_getで取得する前に、どの会話が保存されているかを確認するために使用します。

messages_delete

IDを指定して会話の全メッセージを削除します。副作用: ストアから会話のメッセージを完全に削除します。元に戻すことはできません。抽出された事実には影響しません(その場合はmemory_forgetを使用してください)。

すべてのメモリツールは(org_id, user_id, session_id)によってスコープされます。orgが最も粗く、sessionが最も細かいスコープです。

LLMプロバイダー

プロバイダー非依存。 バイナリは1つ。ENGRAM_LLM_PROVIDER=...を設定するだけです:

プロバイダー

環境変数値

備考

Ollama

ollama (デフォルト)

ローカル、無料、APIキー不要

OpenAI互換

openai-compatible

OpenAI, Azure, Groq, Together, Mistral, DeepSeek, vLLM, LM Studioなど

Anthropic

anthropic

Messages API経由のClaude

Google

google

generateContent経由のGemini

シェルコマンド

command

任意の外部スクリプトへのパイプ

Mock

mock

決定論的、テスト専用

# Example: use Groq instead of Ollama
docker run --rm -i \
  -e ENGRAM_LLM_PROVIDER=openai-compatible \
  -e ENGRAM_OPENAI_BASE_URL=https://api.groq.com/openai/v1 \
  -e OPENAI_API_KEY=gsk_... \
  -v engram-data:/data \
  ghcr.io/jamjet-labs/engram-server:0.5.0

なぜEngramなのか?

問題

Engramの回答

エージェントメモリライブラリはPythonが主流

Rustコア、ネイティブPython、Java、MCPクライアントを提供

試すためにPostgres + Qdrant + Neo4jが必要

単一のSQLiteファイル(インフラ不要)、必要に応じてPostgresへ移行可能

会話履歴はナレッジメモリではない

事実抽出パイプライン — メッセージから構造化された事実を抽出

古い事実が漂流し矛盾する

競合検出 + 統合 — 減衰、昇格、重複排除、要約

メモリの取得はセマンティックかキーワードのどちらか

ハイブリッド検索 — ベクトル検索 + FTS5を1つのクエリで実行

MCPサポートは後付け

MCPネイティブ — 単一バイナリで11個のツールを公開

ユーザーやテナントごとにメモリを分離できない

ファーストクラスのスコープ — org / user / sessionがすべてのクエリに組み込み済み

クライアントSDK

言語

パッケージ

インストール

Python

jamjet (EngramClientを含む)

pip install jamjet

Java

dev.jamjet:jamjet-sdk (EngramClientを含む)

Maven Central

Spring Boot

dev.jamjet:engram-spring-boot-starter

Maven Central

Rust

jamjet-engram (直接埋め込み)

cargo add jamjet-engram

関連情報

ライセンス

Apache 2.0 — LICENSEを参照してください。


Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Portable MCP memory server giving AI agents persistent, verified, cross-session memory. 30 tools, SQLite + cloud sync, Chrome Extension for every AI chat platform. The only JavaScript MCP memory server. Includes behavioral learning engine, semantic search, knowledge scoping, session quality scoring, and web dashboard.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    A temporally-aware knowledge graph MCP server for AI agents, enabling episodic ingestion, entity management, and semantic search with support for multiple LLM and embedding providers.
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Persistent memory MCP server for AI agents, featuring a visual interface to browse, search, edit, and delete memory. It provides tools for capturing episodes, recalling, consolidating, crystallizing traits, and forgetting, with local SQLite storage and optional authenticated web UI.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server that enables persistent, hybrid, local memory for LLM agents, with vector + BM25 search, knowledge graph, and policy-driven retention, providing token-budgeted context injection for AI assistants.
    MIT