mirror-mcp について
mirror-mcp は、MCP sampling を通じて LLM が自らの推論を振り返るための MCP サーバーです。分析の確認や確信度の評価、反復的な問題解決に利用できます。
主な機能
- 01`reflect` による自己質問
- 02MCP sampling による応答生成
- 03システム・ユーザープロンプトの指定
- 04コンテキストとサンプリング設定
活用シーン
- 01既存の分析にある推論の抜けを確認
- 02結論への確信度を評価
- 03別の視点から問題を再検討
MCP 対応
MCP サーバーとして `reflect` ツールをクライアントに公開し、MCP sampling でモデルに振り返りの応答を求めます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
1掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| context | string | いいえ | 省察の追加コンテキスト |
| question | string | はい | LLM が自問したい質問 |
| max_tokens | number | いいえ | 応答の最大トークン数 |
| temperature | number | いいえ | サンプリング温度 |
| user_prompt | string | いいえ | 推奨:省察の応答を構成するカスタム指示形式(例:"Provide 3 specific recommendations"、"Analyze step-by-step with pros/cons"、"Give actionable next steps")。これにより、一般的なアドバイスではなく、必要な形式と深さの回答を確実に得られます。 |
| system_prompt | string | いいえ | 推奨:専門家としての役割や視点を定義するカスタムシステムプロンプト(例:「あなたは批判的思考のメンターです」「あなたはエキスパートコーチです」「あなたは戦略アナリストです」)。専門知識を与えることで、振り返りの質が大幅に向上します。 |
詳細
mirror-mcp
再帰的な質問とMCPサンプリングを通じて、LLMが自己省察と内省を行えるようにするreflectツールを提供する、Model Context Protocol(MCP)サーバーです。
概要
mirror-mcpは、AIモデルが自らを「見つめる」ための省察メカニズムを提供します。LLMがreflectツールを使用すると、自身に質問を投げかけ、Model Context Protocolのサンプリング機能を通じて回答を受け取ることができます。これにより、自己分析、推論の検証、反復的な問題解決のための強力なフィードバックループが実現します。
機能
- 🪞 自己省察ツール:LLMが自らに質問し、生成された回答を受け取れるようにします
- 🔄 MCPサンプリング統合:回答にModel Context Protocolのサンプリングメカニズムを使用します
- 📦 npmでインストール可能:インストールとデプロイが簡単です
- ⚡ 軽量:依存関係が最小限で、起動が高速です
- 🔧 設定可能:省察のパラメーターとサンプリングオプションをカスタマイズできます
インストール
VS Codeに簡単インストール
MCPホストの設定
その他のMCP互換クライアントでは、以下の設定を追加してください。
{
"type": "stdio",
"command": "npx",
"args": ["mirror-mcp@latest"]
}
npm経由
npm install -g mirror-mcp
npx経由(インストール不要)
npx mirror-mcp
ソースから
git clone https://github.com/toby/mirror-mcp.git
cd mirror-mcp
npm install
npm run build
npm start
APIリファレンス
ツール
reflect
LLMが自らに質問し、MCPサンプリングを通じて回答を受け取れるようにします。このツールは、LLMが得る回答の種類を自ら決められるよう、システムプロンプトとユーザープロンプトをカスタマイズできます。
カスタムプロンプトによる自己方向付け:
- システムプロンプト:省察の役割や視点を定義します(例:「熟練のコーチ」「批判的思考者」「創造的な問題解決者」)
- ユーザープロンプト:省察の回答の形式、構成、または焦点を指定します
- デフォルトの動作:カスタムプロンプトが指定されていない場合、強み、弱み、前提、別の視点に焦点を当てた組み込みの省察ガイダンスを使用します
パラメーター:
question(string、必須):LLMが自らに問いかける質問context(string、任意):省察のための追加コンテキストsystem_prompt(string、任意):省察の進め方を指定するカスタムシステムプロンプトuser_prompt(string、任意):デフォルトの省察指示に置き換えるカスタムユーザープロンプトmax_tokens(number、任意):回答の最大トークン数(デフォルト:500)temperature(number、任意):サンプリング温度(デフォルト:0.8)
例:
{
"name": "reflect",
"arguments": {
"question": "How confident am I in my previous analysis of the data?",
"context": "Previous analysis showed a 23% increase in user engagement",
"max_tokens": 300,
"temperature": 0.6
}
}
カスタムプロンプトを使用した例:
{
"name": "reflect",
"arguments": {
"question": "What are the potential weaknesses in my reasoning?",
"system_prompt": "You are an expert critical thinking coach helping to identify logical fallacies and reasoning gaps.",
"user_prompt": "Analyze my reasoning step-by-step and provide specific examples of potential weaknesses or blind spots.",
"context": "Working on a complex machine learning model evaluation",
"max_tokens": 400,
"temperature": 0.7
}
}
回答:
{
"reflection": "Upon reflection, my confidence in the 23% engagement increase analysis is moderate to high. The data sources appear reliable, and the methodology follows standard practices. However, I should consider potential confounding variables such as seasonal effects or concurrent marketing campaigns that might influence the results.",
"metadata": {
"tokens_used": 67,
"reflection_time_ms": 1240
}
}
アーキテクチャと設計意図
設計思想
mirror-mcpは、自己省察が堅牢なAI推論に不可欠であるという原則に基づいて構築されています。モデルが自身の出力や推論プロセスに疑問を投げかけられるようにすることで、次のような機会が生まれます。
- エラー検出:モデルが推論に潜む潜在的な欠陥を特定できます
- 確信度の調整:自己評価によって確信度を把握しやすくなります
- 反復的な改善:省察を促す質問によって、より良い解決策につながることがあります
- メタ認知的な認識:モデル自身の推論プロセスを理解できます
技術アーキテクチャ
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ LLM Client │───▶│ mirror-mcp │───▶│ MCP Sampling │
│ │ │ │ │ Infrastructure │
│ Calls reflect() │ │ Processes │ │ │
│ │◀───│ reflection │◀───│ Returns response│
└─────────────────┘ └─────────────────┘ └─────────────────┘
主要コンポーネント
- リフレクションエンジン:自己に向けられた質問を処理します
- サンプリングインターフェース:MCP のサンプリング機能と連携します
- コンテキストマネージャー:一貫性のあるリフレクションを行えるよう、会話のコンテキストを維持します
- レスポンスフォーマッター:リフレクションのレスポンスを、最適な形で利用できるよう構成します
なぜ MCP なのか?
Model Context Protocol は、AI モデルが外部のリソースやツールに接続するための標準化された方法を提供します。mirror-mcp を MCP サーバーとして実装することで、以下を実現できます。
- 相互運用性:MCP 互換のあらゆるクライアントで動作します
- 標準化:ツール連携のための確立されたプロトコルに準拠します
- 拡張性:ほかの MCP サーバーと並行してデプロイできます
- 将来性:継続的に発展する MCP エコシステムの恩恵を受けられます
サンプリング戦略
リフレクションの仕組みでは、MCP のサンプリング機能を活用して、熟考されたレスポンスを生成します。サンプリングのプロセスは以下のとおりです。
- 自己に向けられた質問をプロンプトとして受け取ります
- 設定可能なサンプリングパラメーター(temperature、max tokens)を適用します
- 基盤となるモデルを使用してレスポンスを生成します
- 適切なメタデータを付けてリフレクションを返します
このアプローチにより、元の推論と同じモデルの能力を使ってリフレクションが生成され、本物の自己評価が実現します。
開発
前提条件
- Node.js 18 以降
- npm または yarn
- TypeScript(開発用)
開発環境のセットアップ
git clone https://github.com/toby/mirror-mcp.git
cd mirror-mcp
npm install
npm run dev
テスト
npm test
ビルド
npm run build
コントリビューション
コントリビューションを歓迎します!詳細については、コントリビューションガイドラインをご覧ください。
コントリビューションできる分野
- リフレクション戦略の強化
- サンプリングパラメーターの追加
- パフォーマンスの最適化
- ドキュメントの改善
- テストカバレッジの拡充
関連プロジェクト
- Model Context Protocol:基盤となるプロトコル仕様
- MCP エコシステム:その他さまざまな MCP サーバーやツール
ライセンス
このプロジェクトは MIT ライセンスのもとで公開されています。詳細については、LICENSE ファイルをご覧ください。
謝辞
- 基盤となる仕様を策定した Model Context Protocol チーム
- メタ認知と自己リフレクションに取り組む、より広範な AI 研究コミュニティ
- このツールの発展に貢献してくださるコントリビューターやアーリーアダプター
「吟味されざる生は生きるに値しない」 - ソクラテス
mirror-mcp で、AI モデルが自身の推論を吟味できるようにしましょう。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。