Evermemos Mcp について
evermemos-mcp は、AI コーディングアシスタント向けの長期メモリを提供する MCP サーバーで、EverMemOS Cloud にメモリを保存・検索します。remember で文脈を保存し、briefing で後のセッションに復元できます。メモリはスペース単位で分離され、機密情報は保存前にブロックされます。
主な機能
- 01保存・検索・復元・削除をカバーする 7 つのツール
- 02domain:slug 形式のスペースによるプロジェクト分離
- 031 回の呼び出しで最大 10 スペースを横断検索
- 04API キーやパスワードなど機密情報のブロック
- 05queued から searchable までのライフサイクル表示
- 06結果にソース、タイムスタンプ、スコアを含む
活用シーン
- 01アーキテクチャの決定事項や規約をセッションをまたいで保持
- 02briefing によるセッション開始時のコンテキスト復元
- 03異なる MCP クライアント間での個人設定の再利用
MCP 対応
本プロジェクトは MCP サーバーであり、list_spaces、remember、recall、briefing、forget などの 7 つのツールを stdio 経由で MCP クライアントに公開します。Claude Code、Cursor、Cline などでの利用が記載されています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
7掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | integer | いいえ | 返される MCP 表示対象スペースの最大数 |
| query | string | いいえ | スペースを絞り込むための任意のキーワード |
詳細
evermemos-mcp
AI コーディングアシスタントのための長期記憶。一度覚えれば、いつでも思い出せます。

アーキテクチャや命名規則、MongoDB をやめた理由を説明するのに 30 分かけたのに、次のセッションでは忘れられてしまう。また最初からすべて説明し直すことになります。
evermemos-mcp がこの問題を解決します。remember を 1 回呼び出せば保存され、briefing を 1 回呼び出せば、どのセッション、どのクライアントでも呼び戻せます。
ベンチマーク:想起率 60/60(ベースラインは 0/60)。帰属エラーはゼロ。P95 は 2 秒未満です。(エビデンス)
紹介動画: Bilibili で視聴
デモ動画: Bilibili で視聴
クイックスタート
EverMemOS Cloud で API キーを取得し、MCP クライアントの設定に追加してください。
{
"mcpServers": {
"evermemos-mcp": {
"type": "stdio",
"command": "uvx",
"args": ["evermemos-mcp@latest"],
"env": {
"EVERMEMOS_API_KEY": "your-key-here"
}
}
}
}
または、直接実行します。
uvx evermemos-mcp@latest
Claude Code、Cursor、Cline、Cherry Studio、OpenClaw、Gemini CLI、Aider など、MCP 互換のクライアントやエージェントで利用できます。クライアントごとの設定については、docs/05-client-integrations.md を参照してください。
ソースからインストール
git clone https://github.com/tt-a1i/everos-mcp.git
cd everos-mcp
cp .env.example .env # set EVERMEMOS_API_KEY
uv run evermemos-mcp
ソースからインストールする場合の MCP クライアント設定:
{
"mcpServers": {
"evermemos-mcp": {
"type": "stdio",
"command": "uv",
"args": ["run", "--directory", "/path/to/evermemos-mcp", "evermemos-mcp"],
"env": { "EVERMEMOS_API_KEY": "your-key-here" }
}
}
}
利用できる機能
7 つのツール
| ツール | 機能 |
|---|---|
list_spaces | 利用可能なメモリスペースを確認します |
remember | コンテキストを長期記憶に保存します。機密情報(API キー、パスワード)を自動検出し、記憶の競合を確認します |
request_status | キューに入れられた書き込みが抽出済みか確認します |
recall | 6 種類の検索戦略(キーワード/ハイブリッド/ベクトル/RRF/エージェント型/自動)で記憶を検索します |
briefing | セッション開始時に 1 回の呼び出しでコンテキストを復元します:プロフィール + エピソード + 事実 + 先読み情報 |
forget | 検証ワークフローを使って対象を絞り、削除します |
fetch_history | 種類ごとにメモリのタイムラインをページ分割して取得します |
主な機能
- スペースの分離 —
coding:my-app、chat:preferences、study:ml-notesのように指定でき、プロジェクト間で記憶が混ざりません - 複数スペース検索 — 1 回の
recall呼び出しで最大 10 個のスペースを検索し、ソースを自動的に割り当てます - 機密情報の保護 — 保存前に API キー、パスワード、トークン、秘密鍵をブロックし、ユーザーに確認を求めます
- 記憶の競合検出 —
chat:*スペース内の類似した記憶を自動確認します。競合を提示し、エージェントが判断できるようにします - ライフサイクルの追跡 — すべてのツールで、各結果に
queued、provisional、fallback、またはsearchableのラベルを付けます - 追跡可能な引用情報 — すべての結果に
memory_type、snippet、timestamp、score、source_message_idを含めます - Git の自動検出 —
space_idを省略すると、Git のリモートからcoding:<repo-name>を推定します - 堅牢なエラー処理 — バックオフ付きで再試行(429/5xx)します。従来の v0 GET ボディー用プロキシ/WAF フォールバックに対応します(デフォルトの v1 fetch/search は POST ボディーを使用)。構造化されたエラーコードを返します
ユースケース
永続的なアーキテクチャのコンテキスト:
You: remember we chose PostgreSQL because our data is highly relational
[space_id: coding:my-saas]
-- next day, new session --
You: what database did we choose and why?
→ "Chose PostgreSQL — highly relational data model"
ずっと保持される個人設定:
You: remember I prefer dark mode, vim keybindings, and concise responses
[space_id: chat:preferences]
-- any future session --
You: recall my UI preferences
→ "dark mode, vim keybindings, concise responses"
セッションをまたいで使える学習メモ:
You: remember bias-variance tradeoff — high bias = underfitting, high variance = overfitting
[space_id: study:ml-notes]
-- later --
You: briefing for study:ml-notes
→ profile + recent episodes + key facts + foresights
evermemos-mcp を選ぶ理由
ほかにもメモリ MCP サーバーはあります。evermemos-mcp の違いは次のとおりです。
| evermemos-mcp | Mem0 MCP | Letta/MemGPT | Official MCP memory | |
|---|---|---|---|---|
| スペースの分離 | プロジェクト/トピックごとに domain:slug | なし | なし | なし |
| ライフサイクルの追跡 | キュー済み → 暫定 → フォールバック → 検索可能 | なし | なし | なし |
| 機密コンテンツのガード | API キー、パスワード、トークンをブロック | なし | なし | なし |
| 競合の検出 | チャットスペースで自動 | なし | なし | なし |
| 複数スペースの検索 | 1 回の呼び出しで最大 10 個のスペース | なし | なし | なし |
| 検索戦略 | 6 つの手法と自動マージ | セマンティック検索のみ | セマンティック検索のみ | なし |
| ベンチマークで検証済み | 再現率 60/60、エラー 0 件 | — | — | — |
| セットアップ | uvx evermemos-mcp | クラウドまたはセルフホスト | セルフホストが必要 | npx |
ベンチマーク
コーディング、チャット、学習の各スペースにわたる、固定された 60 個のクエリセットでテストしました。
| 指標 | メモリあり | メモリなし |
|---|---|---|
| ヒット率 | 60/60(100%) | 0/60(0%) |
| 誤帰属エラー | 0 | — |
| P95 レイテンシ | 1958 ms | — |
エビデンス:
仕組み
MCP Client (Claude Code / Cursor / Cline / Cherry Studio / OpenClaw / any agent)
│
│ MCP stdio
▼
┌─────────────────────────────┐
│ evermemos-mcp server │
│ ┌───────────────────────┐ │
│ │ 7 Tool Handlers │ │
│ └──────────┬────────────┘ │
│ ┌──────────▼────────────┐ │
│ │ Memory Service │ │ Content guard → Conflict check → Cloud write → Lifecycle tracking
│ └──────────┬────────────┘ │
│ ┌──────────▼────────────┐ │
│ │ Space Catalog Service │ │ Space registry, metadata sync, cross-session recovery
│ └──────────┬────────────┘ │
│ ┌──────────▼────────────┐ │
│ │ EverMemOS HTTP Client│ │ Auth, retries, rate-limit backoff, error normalization
│ └──────────┬────────────┘ │
└─────────────┼───────────────┘
│ HTTPS
▼
EverMemOS Cloud API
- クラウド優先 — すべてのメモリは EverMemOS Cloud に保存されます。失われる可能性のあるローカル状態はありません。
- 非同期抽出 —
rememberはコンテンツを AI 抽出用のキューに追加します。進行状況を追跡するにはrequest_statusを使用します。 - 薄いラッパーではありません — フォールバック階層、複数手法による検索結果のマージ、ID のミラーリング、一部失敗からの復旧など、2500 行を超えるオーケストレーションを備えています。
スペーステンプレート
| テンプレート | 用途 |
|---|---|
chat:preferences | 長期的に保持する個人の好み、名前、口調、UI の好み |
chat:daily | プロジェクトに漏らすべきでない継続中のチャットコンテキスト |
coding:<repo> | アーキテクチャ上の決定、規約、バグ、プロジェクトのコンテキスト |
study:<topic> | 学習メモ、トピックの進捗、復習用コンテキスト |
ツールの使い分け
| 目的 | ツール | 理由 |
|---|---|---|
| 新しいセッションを開始する | briefing | 1 回の呼び出しでコンテキストを復元する最速の方法 |
| 特定の事実を見つける | recall | スペースを横断して関連度順に検索 |
| 何が起きたかを確認する | fetch_history | 監査には、順位付けされた検索より時系列のタイムラインが適しています |
| 削除の前後を確認する | fetch_history | 削除前後の確認に使える安定したタイムライン |
設定
| 変数 | デフォルト | 説明 |
|---|---|---|
EVERMEMOS_API_KEY | (必須) | EverMemOS Cloud API キー |
EVERMEMOS_USER_ID | mcp-user | デフォルトのユーザー ID |
EVERMEMOS_DEFAULT_SPACE | (自動) | デフォルトのスペース。git remote から coding:<repo> として自動検出されます |
EVERMEMOS_BASE_URL | https://api.evermind.ai | API エンドポイント |
EVERMEMOS_DEFAULT_TIMEZONE | UTC | メタデータのタイムゾーン |
EVERMEMOS_ENABLE_CONVERSATION_META | true | 会話メタデータを同期 |
詳細設定
| 変数 | デフォルト | 説明 |
|---|---|---|
EVERMEMOS_API_VERSION | v1 | API バージョン(v0 はレガシー) |
EVERMEMOS_LLM_CUSTOM_SETTING_JSON | — | LLM 抽出のカスタム設定 |
EVERMEMOS_USER_DETAILS_JSON | — | 会話用のユーザープロフィール詳細 |
| シナリオ | flush |
|---|---|
| 会話の途中で、さらにメッセージが続く | false |
| セッション終了/トピックの切り替え/要約 | true |
| 判断に迷う場合 | true(より安全) |
高度な内容:メモリのライフサイクル状態
| 状態 | 意味 |
|---|---|
queued | 書き込みは受け付けられましたが、抽出はまだ確認されていません |
provisional | 抽出処理中に、pending_messages から回答します |
fallback | 正式なメモリがまだ検索可能でない間、pending_messages やメタデータのフォールバックから回答します。Cloud v1 では、限定的な Groups メタデータ(名前/説明)のみが永続的にミラーリングされます |
searchable | 正式に抽出されたメモリから回答します |
7 つすべてのツールで互換性のある lifecycle ブロックを公開するため、エージェントは常にメモリの成熟度を把握できます。
高度な内容:削除の安全性
Cloud の削除は非同期で、ベストエフォートで実行されます。evermemos-mcp は検証を優先するワークフローを提供します。
fetch_historyまたはrecallで対象のmemory_idを確認しますforget(memory_ids=[...], space_id=...)を呼び出しますfetch_historyで検証します- 対象が残っている場合、ライフサイクルモデルを通じてその状態が明示されます
これは意図的な設計です。削除が即座に行われたかのように装うのではなく、実際の状態をエージェントに公開します。
開発
uv sync --group dev # Install dev dependencies
uv run ruff check # Lint
uv run pytest # Tests (285 pass)
ドキュメント
| ドキュメント | 説明 |
|---|---|
docs/02-architecture.md | 技術アーキテクチャ |
docs/05-client-integrations.md | クライアントのセットアップガイド |
docs/auto-memory-prompt.md | 自動メモリのプロンプトテンプレート |
docs/06-benchmark.md | ベンチマークプロトコル |
CHANGELOG.md | バージョン履歴 |
こちらもご覧ください
MCO — エージェントオーケストレーション用 CLI です。メインのエージェント(Claude Code、Cursor、Aider)から複数のコーディングエージェントへ、並行してタスクを割り当てられます。evermemos-mcp との併用に適しており、MCO が並列実行を担い、evermemos-mcp が永続メモリを担います。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。