mcpField
C
claims-mcp

claims-mcp

ローカル
github.com/dgonzap30メモリ・ナレッジ04 週間前に更新

claims-mcp について

claims-mcp は、信念を時間とともに確信度が下がる主張として扱う、エージェント向けのローカル記憶サーバーです。古くなった主張や矛盾を検出し、単一の SQLite ファイルに保存します。

主な機能

  1. 01主張の追加・更新・検索
  2. 02変動性に応じた確信度の減衰
  3. 03主張の再確認と撤回
  4. 04古い主張と矛盾の検出
  5. 05リソースによる全主張の出力

活用シーン

  1. 01エンティティに関する優先度や状態の判断を記録
  2. 02再確認が必要な古い主張を特定
  3. 03重複する順位や状態の競合を検出
  4. 04呼び出し元が指定するシグナルで順位低下を確認

MCP 対応

stdio MCP サーバーとして動作し、主張の管理・確認ツールと、`claims://all` リソースによる全主張の出力を提供します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"dgonzap30-claims": {
"command": "npx",
"args": [
"-y",
"claims-mcp"
]
}
}
}
起動コマンドnpx -y claims-mcp

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

パッケージ
npmclaims-mcp0.1.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

claims-mcp

エージェント向けの小さなメモリで、知識を時間とともに古くなる主張として扱います。エンティティについての主張(「acme は優先度 #1」「ローンチは予定どおり」など)を登録すると、それぞれの主張は変動性に応じて設定された半減期で減衰し、サーバーは古くなった主張や互いに矛盾する主張を知らせます。

ローカルの SQLite ファイルを使用する、stdio MCP サーバーと CLI です。ネットワークもアカウントも必要ありません。

ランタイム:Bun。 v0 は bun:sqlite を使用するため、通常の Node ではなく Bun ≥ 1.1 で動作します。Node 向けビルド(node:sqlite)は今後の対応候補です。

モデル

フィールド意味
entity主張の対象(自由記述のキー)。
kindpriority(assertedRank を設定できる)、status、fact、relationship。
volatilitystable(半減期 365 日)、slow(30 日)、volatile(7 日)。
confidence最終確認時の 0..1 の値。lastConfirmed 以降、半減期ごとに有効信頼度が半分になり、下限は 0.05 です。
stateactive、stale、contradicted、retired。チェック対象となるのは active の主張のみです。

主張の識別子は (entity, kind, claim) です。同じ主張を再登録すると、重複させずに更新します。

MCP ツール

ツール機能
claim_add主張を登録または更新します。
claim_search主張のテキストとエンティティを対象に、大文字と小文字を区別しない部分一致検索を行います。
claim_confirm現在の状態で再確認します。減衰をリセットして再有効化し、必要に応じて信頼度を設定します。
claim_retract主張を終了扱いにします。
claims_contradictions有効な主張間の矛盾を検出します。duplicate-rank(複数のエンティティが同じ優先度順位を主張している)と status-conflict(1 つのエンティティに対して複数の有効なステータス主張がある)があります。週ごとの順位を observed として渡すと、rank-drop も検出します。これは、優先度を主張しているエンティティについて、3 回の有効期間にわたり、すべてのシグナルで順位が rank + 2 より低い場合に該当します。
claims_decayed陳腐化のしきい値(既定値は 0.5)を下回った有効な主張を、古い順に返します。

リソース:claims://all(すべての主張を JSON で返します)。

observed は { "signals": [{ "<entity>": [rank_now, rank_1_period_ago, ...] }, ...], "validPeriods": [true, ...] } です。観測データ(コミット数、作業時間など、順位付けできるもの)は呼び出し側が用意します。サーバーが収集することはありません。

使用方法

bun install

MCP クライアントに追加します(例では Claude Code を使用しています)。

claude mcp add claims -- bun /path/to/claims-mcp/src/mcp.ts

データベースは ~/.claims-mcp/claims.db に保存されます。--db <path> または CLAIMS_MCP_DB で変更できます。

CLI:

bun src/cli.ts add acme priority slow 0.8 "acme comes first" --rank 1
bun src/cli.ts search comes
bun src/cli.ts stale 0.5
bun src/cli.ts contradictions
bun src/cli.ts confirm <id>
bun src/cli.ts retract <id>

開発

bun test          # 19 tests, synthetic claims only
bun run typecheck
bun run audit     # publish gate: home paths, private names, secret patterns

AUDIT_TERMS="name1|name2" を設定すると、監査対象に独自の非公開の名前を追加できます。

出典

単純な抜き出しではありません。減衰曲線と順位低下のルールは、個人用エージェントメモリから移植したものです(順位低下の判定には、現在は呼び出し側が指定する観測データを使用します)。duplicate-rank と status-conflict のルールは、このパッケージ向けに新たに実装した主張間のロジックです。元のものとはコード、データ、ストレージを共有していません。

作者

Diego González Zapiain が Lojik Labs で開発しました。公式 MCP Registry には io.github.dgonzap30/claims-mcp として掲載されています。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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