mcpField
W
Weasley DeepMind

Weasley DeepMind

ローカル
github.com/potatohoney-pメモリ・ナレッジ413 週間前に更新

Weasley DeepMind について

Weasley DeepMindは、AIエージェント向けのセルフホスト可能なメモリーサーバーです。型付きの断片と関連エビデンスを保存し、会話全体を再入力せずにトークン予算内で順位付けされたコンテキストを取得します。

主な機能

  1. 01出典情報付きの型付きメモリー断片
  2. 02キーワード・グラフ・ベクトル検索
  3. 03トークン予算に応じたコンテキスト取得
  4. 04メモリーの関連付けとライフサイクル管理
  5. 05stdioとStreamable HTTPのトランスポート

活用シーン

  1. 01エージェントのタスクに関連する情報の再取得
  2. 02決定事項や手順の保存と再利用
  3. 03メモリー断片間のつながりの探索
  4. 04セルフホスト型エージェントメモリーの運用

MCP 対応

ローカルstdioまたは`/mcp`のStreamable HTTP経由で、remember、recall、link、contextなどのメモリーツールをMCPクライアントに提供します。HTTPリクエストではデフォルトでアクセスキーが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"potatohoney-p-weasley-deepmind": {
"command": "npx",
"args": [
"-y",
"weasley-deepmind"
],
"env": {
"DATABASE_URL": "<DATABASE_URL>",
"WEASLEY_DEEPMIND_AUTO_MIGRATE": "<WEASLEY_DEEPMIND_AUTO_MIGRATE>",
"EMBEDDING_API_KEY": "<EMBEDDING_API_KEY>"
}
}
}
}
起動コマンドnpx -y weasley-deepmind
設定が必要な環境変数
DATABASE_URLシークレットPostgreSQL connection URL for a database with pgvector installed.
WEASLEY_DEEPMIND_AUTO_MIGRATEApply pending database migrations before starting the stdio server.
EMBEDDING_API_KEYシークレットOptional embedding provider API key for semantic recall.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmweasley-deepmind1.0.0

ツール

20

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
goalstringいいえエピソード断片の目標(episode タイプを推奨)
typeenumはい断片の種類。fact=事実、decision=意思決定、error=エラー、preference=ユーザー設定、procedure=手順、relation=関係、episode=エピソード(1000文字)。episode 以外のタイプは300文字を超えると切り捨てられます。fact | decision | error | preference | procedure | relation | episode
phasestringいいえ作業フェーズ(例:planning、debugging、verification)
scopeenumいいえ保存範囲。permanent=長期記憶(デフォルト)、session=セッション作業メモリ(セッション終了時に消去)permanent | session
topicstringはい断片のトピック識別子。recall 時の topic フィルターとして使用され、TemporalLinker が同じ topic の±24h以内の断片間に時間リンクを自動作成します。プロジェクト名またはドメイン単位での指定を推奨します(例:weasley-deepmind、authentication、deployment)。
affectenumいいえ感情タグ(migration-034-v2.16.0-bundle)。frustration=失敗の反復/フラストレーション、confidence=検証合格/確信、surprise=予想外の結果、doubt=不確実、satisfaction=解決/満足。デフォルトは neutral です。許可されていない値は neutral に強制設定されます。neutral | frustration | confidence | surprise | doubt | satisfaction
caseIdstringいいえこの断片が属する作業/ケースの識別子。未設定の場合、現在の session_id が自動設定されます。推奨形式:{debug|feat|incident}-{topic}-{YYYY-MM-DD}。caseId を指定する場合は、resolutionStatus(open|resolved|abandoned) も指定することを推奨します(未指定の場合、caseIdHasResolutionStatus 警告が出ます)。
dryRunbooleanいいえtrue に設定すると変更は実際には適用されず、実行計画のみが返されます。断片を作成せずに、割り当て量と競合チェックの結果を事前確認できます。
sourcestringいいえソース(セッション ID、ツール名など)
agentIdstringいいえエージェント ID(RLS 分離用)
contentstringはい記憶する内容(1~3文、300文字以内を推奨)。 GOOD の例: - 'ユーザー認証 API の応答時間を500msから120msに改善(ORM の N+1 クエリを単一の JOIN クエリに変更)' - 'ログイン失敗の原因:JWT 有効期限検証の timezone 不一致 → サーバーとクライアントの両方を UTC に統一して解決' - 'ユーザー設定:コミットメッセージで絵文字を使用しない' - '注文決済フローのアーキテクチャ決定:同期 REST から Kafka イベント駆動方式に移行(再試行の保証を優先)' BAD の例(保存前に必ず書き直すこと): - 'それが遅かったので改善した' — 主体・対象・数値が不明 - '以前のエラーを解決した' — どのエラーか特定できない - 'セッション自動要約:ツール呼び出し3回、断片を2件処理' — メタ情報・自己参照であり、事実がない - 'フロントエンドを修正し、API も直した' — 独立したトピックが2つあるため、別々に呼び出す必要がある - 'この会話でユーザーが依頼したとおりに処理した' — メタ情報への言及であり、事実がない
outcomestringいいえエピソード断片の結果
isAnchorbooleanいいえ重要な断片を固定するかどうか。true の場合、重要度の減衰(decay)および期限切れによる削除の対象外になります。
keywordsarrayいいえ検索用キーワード(未指定の場合は自動抽出)。3~5個を指定することを推奨します。プロジェクト名、ホスト名、トピックを含めると検索精度が向上します。未指定の場合、自動抽出の品質が低くなり、検索で見落とされることがあります。
linkedToarrayいいえ関連付ける既存の断片 ID の一覧
sessionIdstringいいえ現在のセッション ID。同じセッションの断片を時間的に近接したバンドルにまとめるために使用します。
workspacestringいいえワークスペース名(例:'weasley-deepmind'、'personal'、'client-acme')。未指定の場合、キーの default_workspace が適用されます。グローバルメモリー(すべてのワークスペースから検索可能)として保存するには、この項目を指定せず、キーにも default_workspace が含まれないようにしてください。
importancenumberいいえ重要度 0~1(未指定の場合は type ごとのデフォルト値)。推奨値:preference=0.9、error/procedure=0.8、decision=0.7、fact=0.6。0.5 以下は検索時の優先度が低くなるため、重要な情報には必ず 0.6 以上を指定してください。
supersedesarrayいいえ置き換える既存の断片 ID の一覧。指定した断片には valid_to が設定され、importance が半減します。
contextSummarystringいいえこの記憶が生じた文脈・背景の要約(1~2文)。recall 時に併せて返され、前後関係を復元します。
idempotencyKeystringいいえ安全な再試行のための識別子。同じ key_id の範囲内で同じ値を指定して remember を繰り返し呼び出すと、新しい断片を作成せず、既存の断片 id を返します。クライアントの再試行やネットワークによる重複を防ぐために使用します。推奨形式:{작업명}-{날짜}-{순번}
assertionStatusenumいいえ断片の信頼度レベル。デフォルト:observed。inferred=推論(未検証)、verified=検証済み、rejected=棄却。observed | inferred | verified | rejected
resolutionStatusenumいいえタスクの解決状態open | resolved | abandoned

詳細

Weasley DeepMind

Weasley DeepMind

Weasley DeepMind は、AI エージェント向けのセルフホスト可能なメモリーサーバーです。小さく型付けされたメモリーフラグメントを保存し、関連するエビデンスをリンクして、会話履歴全体を毎回プロンプトに含めることなく、MCP を通じて適切なコンテキストを呼び出します。

Weasley Open Source ファミリーの一員であり、Apache-2.0 ライセンスで公開されています。

DeepMind を選ぶ理由

  • 会話履歴のダンプではなく、役立つ情報を呼び出します。 キーワード検索、PostgreSQL GIN 検索、グラフ近傍検索、オプションの pgvector 検索を統合し、トークン予算内で順位付けします。
  • 構造化されたメモリー。 事実、決定事項、手順、好み、エピソード、エラーには、出所、重要度、リンク、ライフサイクルの状態が保持されます。
  • MCP ネイティブ。 ローカルの stdio プロセス、または /mcp の Streamable HTTP エンドポイントを使用できます。
  • フェイルクローズ方式の HTTP セキュリティ。 アクセスキーが設定されていない場合、HTTP サーバーはリクエストを拒否します。認証を無効にできるのは、ローカル開発用に明示的に設定した場合のみです。
  • セルフホスト可能なデータ。 PostgreSQL が信頼できる唯一のデータソースです。Redis と外部の埋め込みモデルまたは LLM プロバイダーはオプションです。
  • 運用にすぐ使えます。 PostgreSQL のアドバイザリロックでマイグレーションを直列化し、ログからシークレットを秘匿します。また、変更のある Git チェックアウトでは更新を拒否します。

要件

  • Node.js 20.19 以降
  • pgvector 拡張機能を備えた PostgreSQL 15 以降
  • Redis 7(オプション。キャッシュと低レイテンシのキーワード検索用)

npm からインストールする

npm install --global weasley-deepmind

pgvector を使って PostgreSQL データベースを作成し、接続を設定します。

export DATABASE_URL='postgresql://postgres:password@localhost:5432/weasley_deepmind'
export WEASLEY_DEEPMIND_ACCESS_KEY='replace-with-a-long-random-secret'

weasley-deepmind migrate
weasley-deepmind serve

HTTP サーバーはデフォルトで http://127.0.0.1:57332 をリッスンします。MCP エンドポイントは http://127.0.0.1:57332/mcp です。

MCP クライアントに追加する

npm パッケージには、改行区切りの stdio トランスポートが含まれています。一般的な MCP クライアント設定は次のようになります。

{
  "mcpServers": {
    "weasley-deepmind": {
      "command": "npx",
      "args": ["-y", "weasley-deepmind", "stdio"],
      "env": {
        "DATABASE_URL": "postgresql://postgres:password@localhost:5432/weasley_deepmind",
        "WEASLEY_DEEPMIND_AUTO_MIGRATE": "true"
      }
    }
  }
}

すでに実行中の HTTP 環境では、クライアントの接続先を /mcp に設定し、Authorization: Bearer <WEASLEY_DEEPMIND_ACCESS_KEY> を送信します。

リポジトリをローカルで実行する

git clone https://github.com/potatohoney-p/weasley-deepmind.git
cd weasley-deepmind
npm ci
docker compose -f docker-compose.dev.yml up -d
cp .env.example.minimal .env
npm run migrate
npm start

開発用 Compose ファイルは、PostgreSQL を localhost:35432、Redis を localhost:36379 で公開します。サーバーを起動する前に、.env をこれらのポートに合わせて更新してください。

基本的なフロー

flowchart LR
    Agent["AI agent"] --> MCP["stdio or Streamable HTTP"]
    MCP --> Tools["remember · recall · reflect · context"]
    Tools --> Rank["keyword + graph + vector ranking"]
    Rank --> Postgres["PostgreSQL + pgvector"]
    Rank -. optional cache .-> Redis["Redis"]

主なツールセットには、remember、batch_remember、recall、forget、amend、link、reflect、context、memory_stats、memory_consolidate、graph_explore、fragment_history、reconstruct_history、search_traces が含まれます。API キーの権限と動作モードによって、利用できるツールを制限できます。

設定

変数用途デフォルト
DATABASE_URLPostgreSQL 接続 URLPOSTGRES_* から導出
WEASLEY_DEEPMIND_ACCESS_KEYHTTP モードで必須のベアラーシークレットなし。HTTP はフェイルクローズ方式
WEASLEY_DEEPMIND_AUTH_DISABLED明示的に認証を無効化(ループバックのみ)。ループバック以外のリスナーでは起動を拒否false
WEASLEY_DEEPMIND_AUTO_MIGRATEstdio 起動前にマイグレーションを実行false(server.json では true を推奨)
WEASLEY_DEEPMIND_HOMECLI キャッシュとローカル状態のディレクトリ~/.weasley/deepmind
WEASLEY_DEEPMIND_HOSTHTTP リッスンアドレス127.0.0.1
PORTHTTP ポート57332
REDIS_ENABLEDRedis を利用する機能を有効化false
EMBEDDING_PROVIDERopenai、gemini、ollama、localai、cloudflare、transformers(オプションのインストール)、または customopenai
EMBEDDING_API_KEYオプションの埋め込みプロバイダー用シークレットなし

設定の一覧については、.env.example、設定、インストールガイドを参照してください。

ローカルのトランスフォーマー埋め込みは、オプションのネイティブ画像依存関係がコア MCP サーバーに追加されないよう、デフォルトのインストールから意図的に除外しています。EMBEDDING_PROVIDER=transformers を選択する前に、docs/embedding-local.md の固定された手順に従ってください。

CLI

weasley-deepmind serve       Start the HTTP MCP server
weasley-deepmind stdio       Start the local stdio MCP server
weasley-deepmind migrate     Apply pending database migrations
weasley-deepmind health      Check database, Redis, and embeddings
weasley-deepmind recall      Search memory from the terminal
weasley-deepmind remember    Store a memory fragment
weasley-deepmind update      Preview or apply an update

weasley-deepmind --help を実行するか、すべてのコマンドについては CLI リファレンスを参照してください。

セキュリティのデフォルト設定

  • 信頼できるリバースプロキシと明示的なオリジン許可リストがある場合を除き、HTTP リスナーはループバックに設定してください。
  • 一意でエントロピーの高い WEASLEY_DEEPMIND_ACCESS_KEY を使用し、.env は決してコミットしないでください。
  • Stdio モードではローカルの MCP ホストプロセスを信頼します。ホストアカウントとデータベースの認証情報を適切に保護してください。
  • 脆弱性は SECURITY.md の手順に従って非公開で報告してください。

開発

npm ci
npm test
npm run lint
npm run lint:migrations
npm pack --dry-run

アーキテクチャと運用の詳細は、docs/architecture.en.md と docs/operations をご覧ください。CONTRIBUTING.md からの貢献を歓迎します。

ライセンス

Copyright 2026 Weasley Open Source.

Apache License 2.0 に基づいてライセンスされています。著作権表示については NOTICE をご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。