プロジェクト

全般

プロフィール

バグ #311

未完了

Phase 1: MCP Gateway基本実装

Redmine Admin さんが約18時間前に追加.

ステータス:
新規
優先度:
高め
担当者:
-
開始日:
2025-06-07
期日:
進捗率:

0%

予定工数:

説明

MCPサーバーの基本構造とClaude.ai WebUIとの統合を実装する。

実装内容

MCP Server Core

// SSE Transport実装 (Linear方式参考)
app.post('/mcp', authenticateOAuth, async (req, res) => {
  const server = new McpServer({
    name: "mcp-gateway",
    version: "1.0.0"
  });
  
  // SSE transport setup
  const transport = new SSEServerTransport();
  await server.connect(transport);
})

Tool Definition

tools: [
  "ssh_execute",           // SSH実行
  "ssh_file_read",         // ファイル読み取り  
  "ssh_file_write",        // ファイル書き込み
  "system_status",         // システム状態確認
  "redmine_create_ticket", // Redmineチケット作成
]

Claude.ai WebUI統合

  1. Integration URL: https://mcp.call2arm.com
  2. OAuth Flow: 自動認証フロー
  3. Permission管理: スコープベース制御

技術仕様

  • Transport: SSE (Server-Sent Events)
  • Protocol: MCP 2024-11-05 spec準拠
  • SDK: @modelcontextprotocol/sdk
  • Response Format: JSON-RPC

実装構造

/mcp-gateway/
├── src/
│   ├── server.ts              // メインサーバー
│   ├── auth/oauth.ts          // OAuth実装
│   ├── managers/ssh-manager.ts // SSH管理
│   ├── transport/sse.ts       // SSE transport
│   └── tools/                 // MCP tools
├── docker-compose.yml
└── Dockerfile

テスト手順

  1. Claude.ai WebUIでIntegration追加
  2. OAuth認証完了
  3. SSH実行テスト: ssh_execute("85.131.243.51", "docker ps")
  4. ファイル操作テスト

成果物

  • 基本MCPサーバー実装
  • Claude.ai統合確認
  • 基本ツール動作確認

実装期間

Week 1-2 (32時間)

依存関係

  • OAuth認証システム完成
  • SSH管理機能完成
  • Docker環境セットアップ

表示するデータがありません

他の形式にエクスポート: Atom PDF