操作
バグ #412
未完了Phase 6: リモートMCP化 - Claude Desktop完全統合 (長期計画)
ステータス:
新規
優先度:
低め
担当者:
-
開始日:
2025-06-09
期日:
進捗率:
0%
予定工数:
説明
🎯 長期目標¶
search.call2arm.com をリモートMCPサーバー化し、Claude Desktop との完全連携を実現
📋 前提条件¶
- ✅ チケット407-411: search.call2arm.com 完全実装・本番稼働
- ✅ Claude Desktop Integrations機能利用可能 (Pro/Max/Team/Enterprise)
- ✅ OAuth 2.1 + PKCE 実装知識
🎯 実現したい機能¶
Claude Desktop連携¶
- MCP Tools: search.call2arm.com の機能をClaude DesktopのMCPツールとして利用
- 会話管理: Claude Desktop ↔ search.call2arm.com の会話同期
- プロジェクト連携: Claude Desktop プロジェクト ↔ search.call2arm.com プロジェクト統合
- 検索機能: Claude Desktop内から過去会話・アーティファクト検索
🔧 技術要件¶
リモートMCP仕様準拠¶
- OAuth 2.1 + PKCE: RFC8636準拠の認証実装
- Authorization Server Metadata: RFC8414準拠
- Streamable HTTP Transport: 2025-03-26仕様準拠
-
Well-known endpoints:
/.well-known/oauth-authorization-server
/.well-known/oauth-protected-resource
MCP Server実装¶
- FastMCP or 公式SDK: Python/TypeScript実装選択
- OAuth認証サーバー: 独立認証サーバー or 統合実装
- MCP Tool定義: search.call2arm.com 機能のMCPツール化
- WebSocket対応: リアルタイム同期対応
Claude Desktop統合¶
- インテグレーション設定: Claude Desktop設定画面での連携
- 認証フロー: ブラウザベースOAuth認証
- ツール利用: Claude内からMCPツール呼び出し
📚 実装参考¶
公式実装例¶
- Atlassian MCP Server: https://www.atlassian.com/blog/announcements/remote-mcp-server
- Cloudflare Workers: https://blog.cloudflare.com/remote-model-context-protocol-servers-mcp/
- 公式仕様: https://modelcontextprotocol.io/specification/draft/basic/authorization
技術選択肢¶
- FastMCP 2.0: Python高レベルフレームワーク
- 公式MCP SDK: TypeScript/Python公式SDK
- カスタム実装: 独自OAuth + MCP実装
🎯 実装フェーズ¶
Phase 6.1: OAuth 2.1認証サーバー実装¶
- OAuth認証エンドポイント実装
- PKCE (S256) 完全対応
- Authorization Server Metadata実装
Phase 6.2: MCP Server実装¶
- FastMCP or 公式SDKによるMCPサーバー構築
- search.call2arm.com 機能のMCPツール化
- Streamable HTTP Transport対応
Phase 6.3: Claude Desktop統合テスト¶
- Claude Desktop Pro/Max/Team環境でのテスト
- インテグレーション設定・認証フローテスト
- MCPツール動作確認・最適化
📊 期待される価値¶
ユーザー体験向上¶
- シームレス連携: Claude Desktop ↔ search.call2arm.com統合
- 効率的会話管理: Claude Desktop内から過去会話アクセス
- コンテキスト継続: プロジェクト単位での会話管理
- 検索体験: Claude内からの自然言語検索
技術的価値¶
- MCPエコシステム参加: 公式MCPサーバーとしての認知
- 標準準拠: OAuth 2.1 + MCP仕様完全準拠
- スケーラビリティ: 複数Claudeクライアント対応
- 拡張性: 他のMCPクライアント対応可能
⚠️ 考慮事項¶
セキュリティ¶
- OAuth実装品質: セキュリティ監査必須
- PKCE実装: 攻撃耐性確保
- トークン管理: 安全なトークンライフサイクル
運用・保守¶
- Claude Desktop更新: Claude Desktop仕様変更対応
- MCP仕様進化: MCPプロトコル仕様変更対応
- 認証メンテナンス: OAuth認証の継続的保守
🎯 成功指標¶
- Claude Desktop からのMCPツール利用成功
- OAuth 2.1認証フロー完全動作
- search.call2arm.com 機能のMCP経由アクセス
- 複数Claude Desktopクライアント対応
- セキュリティ監査合格
📅 実装時期¶
実装開始: Phase 5完了後
目標完了: search.call2arm.com本番稼働後 3-6ヶ月
🔗 関連チケット¶
Redmine Admin さんが5日前に更新
🎯 Phase 6実装計画詳細化 (2025-06-09 15:44)¶
📋 Phase 4完了による実現可能性確認¶
✅ 技術基盤確立: Node.js + TypeScript + PostgreSQL
✅ 大容量処理: 466MB/2032件 完全成功
✅ API安定性: エラー率0%、高速処理実証
🚀 Phase 6詳細計画作成完了¶
新規チケット#418作成¶
- OAuth 2.1認証: PKCE + セキュリティ完全実装
- MCP Server: FastMCP 2.0 or 公式SDK選択
- Claude Desktop統合: Pro/Max/Team環境対応
- 実装期間: 6週間計画
技術選択肢明確化¶
Option A: FastMCP 2.0¶
# search.call2arm.com をPythonでMCP化
from fastmcp import FastMCP
@mcp.tool()
async def search_conversations(query: str):
return await SearchAPI.search(query)
Option B: 公式TypeScript SDK¶
// 既存Node.js APIとの統合
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
// search.call2arm.com APIラッパー実装
📊 実装優先度とロードマップ¶
前提条件 (Phase 5完了待ち)
- React WebUI完全統合
- 高度検索機能実装
- 本番デプロイ安定稼働
Phase 6実装順序¶
- OAuth認証サーバー: セキュリティ基盤
- MCP Server実装: Claude Desktop連携
- 統合テスト: 実際の Claude Desktop 環境
- 本格運用: 公式MCPサーバー化
🎯 最終目標¶
search.call2arm.com が Claude Desktop のMCPツールとして利用可能になり、Claude内から過去会話の検索・管理が seamless に実現されます。
Phase 4の成功により、Phase 6実現の技術的確実性が大幅に向上しました!
操作