Sequential Thinking Working Notes について
タスクのメモ、根拠、決定、リスク、次のアクションを、再開可能なSQLiteセッションに保存するローカルMCPサーバーです。呼び出し元が渡した内容を記録し、推論の生成や評価は行いません。
主な機能
- 01SQLiteによる再開可能なセッション
- 02種類を指定したメモと決定の記録
- 03タイトルや状態によるセッション検索
- 04セッションのエクスポートとインポート
- 05メモ間のリンクと分岐
- 06冪等性を備えた書き込み再試行
活用シーン
- 01再起動後の複雑なタスクの再開
- 02調査中の根拠と決定の記録
- 03セッション内でのリスクと次のアクションの整理
MCP 対応
作成、追加、一覧表示、読み取り、確定、削除、エクスポート、インポートを行うセッション管理ツールをMCPクライアントに公開します。stdioに対応し、HTTP/SSEは実験段階です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
11掲載時のツール一覧 · 6 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| mode | string | いいえ | 必須の段階や分類はありません |
| title | string | はい | 後で再開するための目標またはタイトル |
| request_id | any | いいえ |
詳細
MCP Sequential Thinking
難しいタスクについて、再開できる作業メモ(証拠、決定事項、リスク、次のアクション)を SQLite に永続的に保存し、再起動後も読み取れるローカル MCP サーバーです。呼び出し元が記述した内容を記録しますが、推論を生成、評価、改善することはなく、隠れた思考の連鎖を求めることもありません。
クイックスタート
python -m venv .venv && . .venv/bin/activate # Windows: .venv\Scripts\Activate.ps1
python -m pip install -e .
python scripts/stdio_smoke.py # restart demo: write, restart, read back
クライアントの設定(Claude Desktop、Cursor、…):
{"mcpServers":{"working-notes":{
"command":"/absolute/path/to/.venv/bin/mcp-sequential-thinking",
"env":{"MCP_STORAGE_DIR":"/absolute/path/to/notes"}}}}
Windows では .venv\Scripts\mcp-sequential-thinking.exe を使用してください。
一般的なセッションの例:
{"tool":"create_session","arguments":{"title":"Choose a local store","request_id":"create-1"}}
{"tool":"add_step","arguments":{"session_id":"<id>","content":"Two writers need unique positions.","kind":"evidence","request_id":"step-1"}}
{"tool":"add_step","arguments":{"session_id":"<id>","content":"Use SQLite.","kind":"decision","request_id":"step-2"}}
{"tool":"read_session","arguments":{"session_id":"<id>"}}
再起動後に ID がわからなくなった場合は、list_sessions でタイトルからセッションを検索できます。
ツール
| ツール | 目的 |
|---|---|
create_session | タイトルを指定してセッションを開始します。 |
add_step | メモを追加します。kind は note(デフォルト)、observation、evidence、assumption、option、risk、decision、または next_action です。 |
list_sessions | タイトルまたはステータスでセッションを検索します。 |
read_session | view="resume"(デフォルト):アクティブなメモを表示し、決定事項を先に表示します。view="steps":フィルターを適用して全履歴を表示します。 |
finalize_session | 呼び出し元の結果と証拠 ID を保存します。以降、ステップを追加することはできません。 |
delete_session | セッションのデータベースレコードを削除します(エクスポートとバックアップは残ります)。 |
export_session / import_session | 単一セッションの JSON アーカイブ。MCP_STORAGE_DIR/exports 内に限定されます。 |
メモ間のリンク。 parent_step_id は出典を記録し、supersedes_step_id は以前のメモを置き換え(再開時には非表示になりますが、全履歴には残ります)、branch_from_step_id は名前付きのブランチを開始します。参照はすべて同一セッション内にとどまります。
再試行。 すべての書き込みには request_id が必要です。同じ ID と入力で呼び出しを繰り返すと元の結果が返されます。同じ ID で入力が異なる場合は IDEMPOTENCY_CONFLICT が返されます。finalize_session と delete_session には expected_version も必要です。
ページネーションと制限。 読み取りのデフォルトは 20 件、12,000 文字です(limit ≤ 100、max_chars は 1,000~50,000)。cursor が null になるまで続け、ページを取得する間は同じ view を維持してください。truncated は内容が短縮されたことを示します。1 回の応答に収まらない大きさのメモは、最初のチャンクが返されます。next_content_offset が null になるまで、step_id と content_offset を指定して続きを取得してください。
エラーは、安定したコードと短いヒントを伴って isError=true を設定します。例:INVALID_INPUT(Fields: … を含む)、UNKNOWN_SESSION、INVALID_REFERENCE、CONFLICT(current_version を含む)、SESSION_FINALIZED、IDEMPOTENCY_CONFLICT、STORAGE_BUSY(同じ request_id で再試行)、PATH_OUTSIDE_EXPORTS、RESPONSE_LIMIT。
メモに添付されたソースは呼び出し元が提供するもので、取得も検証もされません。
レガシーツール(非推奨)
process_thought、generate_summary、clear_history、および session_id を指定しない export_session /
import_session は、単一の共有 legacy セッションで動作します。
既存のクライアント向けに残されていますが、すべての結果に deprecation_notice が含まれます。
新しい作業にはセッション API を使用してください。
- ステージ:Problem Definition、Research、Analysis、Synthesis、Conclusion
(大文字と小文字は区別されません)。
--strict-stagesが設定されていない限り、順序に関する警告は参考情報です。 main_line_progressは、total_thoughtsに対するメインラインのノートのみをカウントします。 タスクの完了状況ではありません。- レガシーのインポートは、レガシー履歴を置き換えます。
read_session(session_id="legacy")で読み取れます。レガシーのブランチXは、そこでlegacy-Xとして表示されます。
ストレージと操作
mcp-sequential-thinking # stdio server
mcp-sequential-thinking --health # diagnostic check
mcp-sequential-thinking --ephemeral # in memory only, lost on exit
- データは
~/.mcp_sequential_thinking(またはMCP_STORAGE_DIR)に、プレーンテキストの SQLite(WAL、synchronous FULL、busy timeout 5 s)として保存されます。ローカルディスクを使用してください。NFS/SMB および 複数ホストはサポートされていません。 - 複数の stdio サーバーで単一のストアを共有できます。ローカルの stdio は OS ユーザーを信頼します。セッション ID は認証手段ではありません。HTTP/SSE は実験的です。
- 削除しても安全な消去にはなりません。自動保持機能はありません。
- 初回起動時に、既存の 0.6 JSONL 履歴は単一のトランザクションで SQLite に移行され、ID と内容が維持されます。元のファイルのバックアップはそのまま残ります。 古い 0.6 サーバーは先に停止してください。新たな書き込み後のダウングレードはサポートされていません。
バックアップと復元(再試行キーを含むすべてのセッション):
python -m mcp_sequential_thinking.backup create /path/to/storage /path/to/snapshot.sqlite3
python -m mcp_sequential_thinking.backup restore /path/to/NEW-storage /path/to/snapshot.sqlite3
復元には新しいディレクトリが必要です。WAL を含めずに、稼働中のデータベースファイルをコピーしないでください。
テスト済み環境
| クライアント | OS | 日付 |
|---|---|---|
| Python MCP SDK 2.0.0 および最新バージョン、Python 3.10–3.14 | Linux、Windows | CI 実行のたび |
| Claude Desktop | Linux | 2026-10-21 |
開発
uv run --extra dev ruff check .
uv run --extra dev ruff format --check .
uv run --extra dev mypy --strict mcp_sequential_thinking
uv run --extra dev pytest --cov=mcp_sequential_thinking --cov-fail-under=85
rm -rf dist && uv run --extra dev --with build --with twine --with jsonschema python scripts/check_artifacts.py
アーティファクトのチェックでは、隔離環境で wheel をビルドしてインストールし、実際の再起動を伴う往復テストを実行します。リリースでは、GitHub リリースの作成後に Trusted Publishing を通じて、テスト済みのアーティファクトを公開します。バージョンは
mcp_sequential_thinking/_version.py にあります。詳細は CHANGELOG.md を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
