Perspective MCP Server について
Perspective MCP Server は、AI アシスタントが複数の職業的視点から問題を分析し、構造化された議論を行えるようにします。製品判断、技術アーキテクチャ、事業戦略の検討向けで、分析は前の視点を踏まえ、議論中に制約を追加できます。
主な機能
- 01複数の職業的視点を設定
- 02視点を重ねた分析
- 033 ラウンドの構造化された議論
- 04議論中の制約追加
- 05分析と議論の要約生成
活用シーン
- 01多様な役割から製品判断を評価
- 02技術アーキテクチャ案を比較
- 03事業戦略とトレードオフを検討
- 04議論中に要件を加えて結果を要約
MCP 対応
視点の設定、分析、議論の開始、制約の追加、要約の生成を行うツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
6掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| perspectives | array | はい | 視点オブジェクトの配列 |
詳細
Perspective MCP Server
🤖 Claude Code と共同で作成 - AI にも複数の視点が必要だからです!
AI アシスタントが複数の専門家の視点から問題を分析し、異なる見解の間で構造化された議論を行えるようにする、Model Context Protocol(MCP)サーバーです。
概要
Perspective MCP Server は、構造化されたマルチステークホルダー分析を提供し、AI アシスタントが複雑な問題に取り組む方法を変革します。製品に関する意思決定、技術アーキテクチャの評価、ビジネス戦略の検討など、さまざまな専門家の視点から包括的な分析を行えます。
主な機能
- 🎭 多角的な分析:PM、EM、デザイナーなど、さまざまな専門職の役割からトピックを分析します
- 💬 構造化された議論:視点の異なる参加者による3ラウンドの議論を行い、より深い洞察を得られます
- 🔄 動的な制約の追加:分析の途中で新たな検討事項を追加し、さまざまなシナリオを検討できます
- 📊 包括的な要約:分析と議論の詳細な要約を生成します
- 🔗 コンテキストの把握:各視点がそれまでに得られた洞察を踏まえて分析を進めます
インストール
npx を使用する(推奨)
npx perspective-mcp
ソースからインストール
git clone https://github.com/FiveOhhWon/perspective-mcp.git
cd perspective-mcp
npm install
npm run build
開発モード
npm run dev
設定
Claude Desktop
以下の設定を Claude Desktop の設定ファイルに追加します。
macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\\Claude\\claude_desktop_config.json
{
"mcpServers": {
"perspectives": {
"command": "node",
"args": ["/absolute/path/to/perspective-mcp/dist/index.js"]
}
}
}
または、npx を使用します。
{
"mcpServers": {
"perspectives": {
"command": "npx",
"args": ["perspective-mcp"]
}
}
}
使用方法
標準的な分析モード
- 分析に使用する視点を設定します。
Use the set_perspectives tool to define roles:
- Product Manager: focuses on user needs, market fit, roadmap
- Engineering Manager: focuses on technical feasibility, resources
- UX Designer: focuses on user experience, accessibility
- Business Analyst: focuses on ROI, metrics, market trends
- 各視点から分析します。
Use the perspective tool to analyze the problem from each viewpoint.
Each perspective will build on previous insights.
議論モード
初回の分析後、選択した視点の参加者による構造化された議論を行います。
- 2〜4つの視点の間で議論を開始します
- 第1ラウンド:各参加者が自分の立場を述べます
- 第2ラウンド:参加者が相反する見解に応答します
- 第3ラウンド:見解をまとめ、妥協案を提示します
- 要約を生成し、重要な論点と結論をまとめます
利用可能なツール
set_perspectives
分析に使用する専門職の役割やペルソナを定義します。
パラメーター:
perspectives(array、必須):視点オブジェクトの配列role(string):専門職の役割名focusAreas(string[]):主な注目領域personality(string):アプローチや特性
例:
{
"perspectives": [
{
"role": "Product Manager",
"focusAreas": ["user needs", "market fit", "roadmap"],
"personality": "Strategic, user-centric, data-driven"
}
]
}
perspective
現在の視点から分析を行います。
パラメーター:
analysis(string、必須):現在の視点からの分析nextPerspectiveNeeded(boolean、必須):次の視点に進むかどうか
**戻り値:**進行状況と次の視点の詳細を含む確認情報
start_debate
選択した視点の間で構造化された議論を開始します。
パラメーター:
topic(string、必須):議論する質問または問題participants(string[]、必須):参加する2〜4つの役割名
**戻り値:**ラウンドと発言者の情報を含む議論の初期化情報
debate_turn
進行中の議論に発言を提出します。
パラメーター:
statement(string、必須):参加者の発言nextTurnNeeded(boolean、必須):次のターンに進むかどうか
**戻り値:**ラウンドの進行状況を含むターンの確認情報
inject_constraint
議論の途中で新たな制約や検討事項を追加します。
パラメーター:
constraint(string、必須):新たに検討する制約
**戻り値:**制約の合計数を含む確認情報
debate_summary
議論の包括的な要約を生成します。
**パラメーター:**なし
**戻り値:**トピック、参加者、重要な論点、制約を含む書式付きの要約
例
製品決定の分析
// 1. Set up diverse perspectives
perspectives: [
{ role: "Product Manager", focusAreas: ["user value", "market fit"], personality: "Strategic" },
{ role: "Engineering Manager", focusAreas: ["feasibility", "technical debt"], personality: "Pragmatic" },
{ role: "UX Designer", focusAreas: ["usability", "accessibility"], personality: "User-advocate" },
{ role: "Data Analyst", focusAreas: ["metrics", "user behavior"], personality: "Evidence-based" }
]
// 2. Analyze feature proposal through each lens
// 3. Start debate on implementation approach
// 4. Inject constraint: "Timeline reduced by 1 month"
// 5. Generate summary with recommendations
技術アーキテクチャのレビュー
// Set up technical perspectives (Architect, Security, DevOps, QA)
// Analyze proposed architecture
// Debate trade-offs between different approaches
// Consider new requirements mid-debate
// Synthesize optimal solution
プロジェクト構成
perspective-mcp/
├── src/
│ └── index.ts # Main server implementation
├── examples/
│ ├── product-analysis.json # Example perspective sets
│ └── debate-example.json # Debate configuration example
├── dist/ # Compiled JavaScript
├── package.json
├── tsconfig.json
└── README.md
開発
前提条件
- Node.js 18 以上
- npm または yarn
ビルド
npm run build
テスト
npm test
コントリビューション
コントリビューションを歓迎します!詳細については、コントリビューションガイドラインをご覧ください。
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - プルリクエストを作成します
トラブルシューティング
よくある問題
観点が進まない場合:
nextPerspectiveNeededには文字列ではなく、ブール値のtrueを渡してください- サーバーのログにデバッグ出力があるか確認してください
ディベートが開始されない場合:
- 参加者の役割がすべて観点に存在することを確認してください
- 参加者が2~4人選択されていることを確認してください
設定が機能しない場合:
- 設定には絶対パスを使用してください
- 設定を変更した後、Claude Desktop を再起動してください
- ファイルのアクセス権を確認してください
セキュリティに関する考慮事項
このサーバーは標準的な MCP 権限で動作します。
- ファイルシステムへのアクセスは不要です
- ネットワークリクエストは行いません
- すべてのデータはローカルで処理されます
- セッション間で状態を保持しません(明示的にコンテキストを維持する場合を除く)
関連プロジェクト
ライセンス
MIT ライセンス - 詳細については、LICENSE ファイルをご覧ください。
謝辞
Anthropic の Model Context Protocol SDK を使用して構築されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。