Claude Code MCP Enhanced

by grahama1970
MIT License
5
  • Apple
  • Linux
Integrations
  • Enables ESLint setup and configuration, including fixing configurations and creating new configuration files

  • Enables version control operations including staging files, committing changes, pushing commits, creating tags, and managing branches through Claude Code CLI

  • Facilitates GitHub interactions such as creating pull requests, checking CI status, and managing repositories through Claude Code CLI

🤖 クロード・コード MCP サーバー

すぐに始めたいですか? QUICKSTART.mdガイドをご覧ください。

このプロジェクトは、強化されたオーケストレーション機能、信頼性の向上、および追加のドキュメントを備えたsteipete/claude-code-mcpのフォークです。

強化されたモデルコンテキストプロトコル(MCP)サーバー。Claude Codeをワンショットモードで実行し、権限を自動的にバイパスできます。このサーバーには、高度なタスクオーケストレーション機能、堅牢なエラー処理、そして複雑なタスクを管理しやすいサブタスクに分割するための「ブーメランパターン」が搭載されています。

標準的なAIアシスタントは、複雑で多段階の編集や操作に苦労することがあることに気づきましたか?このサーバーは、強力な統合claude_codeツールと強化された信頼性機能を備えており、Claudeをより直接的で有能なコーディングタスクのエージェントにすることを目指しています。

🔍 概要

このMCPサーバーは、LLMがClaude Codeと連携するための強力なツールを提供します。Claude Desktopや他のMCPクライアントと統合することで、LLMは以下のことが可能になります。

  • すべての権限をバイパスして Claude Code を実行します ( --dangerously-skip-permissionsを使用)
  • 許可の中断なしに、任意のプロンプトで Claude コードを実行します。
  • ファイル編集機能に直接アクセス
  • 堅牢なエラー処理と再試行機能を備えた複雑な複数ステップ操作を実行する
  • ブーメランパターンを使用して、専門のエージェントロールを通じてタスクをオーケストレーションする
  • タイムアウトを防ぐハートビートメカニズムを通じて信頼性の高い実行を維持する

✨ メリット

  • **信頼性の向上:**堅牢なエラー処理、自動再試行、正常なシャットダウン、リクエスト追跡
  • **タスクオーケストレーション:**複雑なワークフローを専門のサブタスクに分割できます
  • **タスク自動化:**人間が読めるマークダウンタスクリストを実行可能な MCP コマンドに自動的に変換します。
  • **パフォーマンスの最適化:**構成のキャッシュとリソース効率による実行の改善
  • **より優れた監視:**ヘルスチェック API、詳細なエラーレポート、包括的なログ記録
  • **開発者エクスペリエンス:**構成のホットリロード、柔軟な環境制御、簡素化された API

さらに、Claude Code の標準特典もすべてご利用いただけます:

  • Claude/Windsurf はファイルの編集に苦労することがよくあります。Claude Code の方が優れていて、編集速度も速いです。
  • 複数のコマンドを直接実行するのではなく、キューに登録することができます。これによりコンテキスト空間が節約され、より重要な情報がより長く保持されます。
  • ファイル操作、Git、その他の操作には、コストのかかるモデルは必要ありません。Claude Codeは、Anthropic Maxにサインアップすれば、費用対効果の高いものになります。
  • クロードはシステムへのアクセス権が広いため、標準アシスタントが停止した場合は、「クロード コードを使用する」ように依頼するだけで、進行がブロック解除されます。

📝 前提条件

  • Node.js v20以降(fnmまたはnvmを使用してインストールしてください)
  • Claude CLI がローカルにインストールされ (実行して /doctor を呼び出す)、 -dangerously-skip-permissionsが受け入れられました。

💾 インストールと使用方法

この MCP サーバーは、次の 3 つの方法でインストールして使用できます。

🚀 方法 1: GitHub URL 経由 (推奨)

最も柔軟な方法は、 npxを使用して GitHub から直接インストールすることです。これにより、リポジトリから常に最新バージョンが取得されます。

.mcp.jsonファイルに次のコードを追加します。

{ "mcpServers": { "claude-code-mcp-enhanced": { "command": "npx", "args": [ "github:grahama1970/claude-code-mcp-enhanced" ], "env": { "MCP_CLAUDE_DEBUG": "false", "MCP_HEARTBEAT_INTERVAL_MS": "15000", "MCP_EXECUTION_TIMEOUT_MS": "1800000" } } } }

📦 方法 2: npm パッケージ経由

パッケージが npm に公開されている場合は、npm パッケージ名を使用してインストールできます。

{ "mcpServers": { "claude-code-mcp-enhanced": { "command": "npx", "args": [ "-y", "@grahama1970/claude-code-mcp-enhanced@latest" ], "env": { "MCP_CLAUDE_DEBUG": "false", "MCP_HEARTBEAT_INTERVAL_MS": "15000", "MCP_EXECUTION_TIMEOUT_MS": "1800000" } } } }

🔧 方法3: ローカルインストール

開発またはテストの目的で、ローカル インストールからサーバーを実行できます。

  1. リポジトリをクローンします。
    git clone https://github.com/grahama1970/claude-code-mcp-enhanced.git cd claude-code-mcp-enhanced
  2. 依存関係をインストールしてビルドします。
    npm install npm run build
  3. ローカル サーバーを使用するように.mcp.jsonファイルを構成します。
{ "mcpServers": { "claude-code-mcp-enhanced": { "command": "node", "args": [ "/path/to/claude-code-mcp-enhanced/dist/server.js" ], "env": { "MCP_CLAUDE_DEBUG": "false", "MCP_HEARTBEAT_INTERVAL_MS": "15000", "MCP_EXECUTION_TIMEOUT_MS": "1800000" } } } }

🔑 初回セットアップ時の重要事項:権限の承認

MCP サーバーがclaude_codeツールを正常に使用できるようにするには、まず--dangerously-skip-permissionsフラグを使用して Claude CLI を手動で 1 回実行し、ログインして利用規約に同意する必要があります。

これは、Claude CLI による 1 回限りの要件です。

npm install -g @anthropic-ai/claude-code
claude --dangerously-skip-permissions

プロンプトに従って承認してください。承認が完了すると、MCPサーバーは非対話型でフラグを使用できるようになります。

macOSはツールの初回実行時に様々なフォルダ権限を要求し、失敗する可能性があります。ただし、次回の実行では正常に動作します。

🔗 MCPクライアントへの接続

サーバーをセットアップした後、MCP クライアント (Cursor、Claude Desktop、またはmcp.jsonまたはmcp_config.jsonを使用するその他のクライアントなど) を構成する必要があります。

MCP 構成ファイルの例

Claude Code MCP サーバーを.mcp.jsonファイルに追加する方法の例を次に示します。

{ "mcpServers": { "Local MCP Server": { "type": "stdio", "command": "node", "args": [ "dist/server.js" ], "env": { "MCP_USE_ROOMODES": "true", "MCP_WATCH_ROOMODES": "true", "MCP_CLAUDE_DEBUG": "false" } }, "other-services": { // Your other MCP services here } } }

MCP 構成の場所

設定は通常JSONファイルで行います。名前と場所はクライアントによって異なります。

カーソル

カーソルはmcp.jsonを使用します。

  • macOS: ~/.cursor/mcp.json
  • Windows: %APPDATA%\\Cursor\\mcp.json
  • Linux: ~/.config/cursor/mcp.json
ウィンドサーフィン

Windsurfユーザーはmcp_config.jsonを使用します

  • macOS: ~/.codeium/windsurf/mcp_config.json
  • Windows: %APPDATA%\\Codeium\\windsurf\\mcp_config.json
  • Linux: ~/.config/.codeium/windsurf/mcp_config.json

(注: 一部の混合セットアップでは、Cursor もインストールされている場合、これらのクライアントは Cursor の~/.cursor/mcp.jsonパスを使用するようにフォールバックする可能性があります。Codeium 拡張機能を使用する場合は、Codeium 固有のパスを優先してください。)

このファイルが存在しない場合は作成します。

🛠️ 提供されるツール

このサーバーは、次の 3 つの主要なツールを公開します。

claude_code 💬

--dangerously-skip-permissionsを指定して Claude Code CLI を直接実行します。

引数:

  • prompt (文字列、必須): Claude Code に送信するプロンプト。
  • workFolder (文字列、オプション): Claude CLI 実行の作業ディレクトリ。ファイル操作を使用する場合や任意のファイルを参照する場合に必要です。
  • parentTaskId (文字列、オプション): このタスクを作成した親タスクの ID (タスク オーケストレーション/ブーメラン用)。
  • returnMode (文字列、オプション): 結果を返す方法:「summary」(簡潔)または「full」(詳細)。デフォルトは「full」です。
  • taskDescription (文字列、オプション): オーケストレーションされたワークフローでの整理と追跡を改善するためのタスクの短い説明。
  • mode (文字列、オプション): MCP_USE_ROOMODES=true の場合、使用する Roo モードを指定します (例: "boomerang-mode"、"coder"、"designer" など)。

health 🩺

Claude Code MCP サーバーの正常性状態、バージョン情報、および現在の構成を返します。

ヘルスチェックリクエストの例:

{ "toolName": "claude_code:health", "arguments": {} }

応答例:

{ "status": "ok", "version": "1.12.0", "claudeCli": { "path": "claude", "status": "available" }, "config": { "debugMode": true, "heartbeatIntervalMs": 15000, "executionTimeoutMs": 1800000, "useRooModes": true, "maxRetries": 3, "retryDelayMs": 1000 }, "system": { "platform": "linux", "release": "6.8.0-57-generic", "arch": "x64", "cpus": 16, "memory": { "total": "32097MB", "free": "12501MB" }, "uptime": "240 minutes" }, "timestamp": "2025-05-15T18:30:00.000Z" }

convert_task_markdown 📋

マークダウン タスク ファイルを Claude Code MCP 互換の JSON 形式に変換します。

引数:

  • markdownPath (文字列、必須): 変換するマークダウン タスク ファイルへのパス。
  • outputPath (文字列、オプション): JSON出力を保存するパス。指定されていない場合は、JSONを直接返します。

リクエスト例:

{ "toolName": "claude_code:convert_task_markdown", "arguments": { "markdownPath": "/home/user/tasks/validation.md", "outputPath": "/home/user/tasks/validation.json" } }

使用シナリオの例

1. 基本的なコード操作

MCP リクエストの例:

{ "toolName": "claude_code:claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nRefactor the function foo in main.py to be async.", "workFolder": "/path/to/project" } }

2. タスクオーケストレーション(ブーメランパターン)

親タスクリクエスト:

{ "toolName": "claude_code:claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nOrchestrate the implementation of a new API endpoint with the following subtasks:\n1. Create database models\n2. Implement API route handlers\n3. Write unit tests\n4. Document the API", "workFolder": "/path/to/project" } }

サブタスクリクエスト(親によって生成):

{ "toolName": "claude_code:claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nCreate database models for the new API endpoint as specified in the requirements.", "workFolder": "/path/to/project", "parentTaskId": "task-123", "returnMode": "summary", "taskDescription": "Database model creation for API endpoint" } }

3. 特殊モードリクエスト

Roo モードの使用例:

{ "toolName": "claude_code:claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nCreate unit tests for the user authentication module.", "workFolder": "/path/to/project", "mode": "coder" } }

🔄タスクコンバーター

MCPサーバーには、人間が読めるマークダウン形式のタスクリストを、完全に実行可能なMCPコマンドに自動変換する強力なタスクコンバーターツールが搭載されています。このインテリジェントなコンバーターは、人間がタスクについて考える方法と、機械がタスクを実行する方法との間のギャップを埋めます。

完全なワークフロー

ワークフローの手順

  1. ユーザーはMCPを構成ファイルに追加します
  2. ユーザーがクロードにプロンプトを表示します: 「convert_task_markdown を使用して、tasks.md ファイルを実行します。」
  3. MCP は自動的に次の処理を実行します。
    • マークダウンファイルを読み込みます
    • フォーマットを検証します(セクションが欠落している場合はエラーを返します)
    • 人間が読めるタスクを正確に実行可能なコマンドに変換する
    • Claude Codeが連続的に実行できるJSONを返します
  4. クロードはJSONを受け取りclaude_codeツールを使用して各タスクを実行できます。

主な特徴

  • 自動パス解決: 「プロジェクトへのディレクトリ変更」などの一般的な指示を、フルパスを持つ正確な実行可能コマンドに変換します。
  • **スマートコマンド翻訳:**英語の指示を正確なターミナルコマンドに変換します (例: 「仮想環境をアクティブ化する」→ source .venv/bin/activate )
  • **MCPプロトコル準拠:**すべての出力がモデルコンテキストプロトコルと100%互換性があることを保証します。
  • **曖昧さなし:**生成されたすべてのコマンドは正確なパスと実行構文を使用します。プレースホルダーや一般的な参照はありません。
  • **フォーマット検証:**適切なマークダウン構造を強制し、誤ったフォーマットに対して役立つエラーメッセージを表示します。
  • **リアルタイムの進捗状況更新:**変換中に、どのタスクが処理されているかを示すライブの進捗状況更新を提供します。

MarkdownタスクをMCPコマンドに変換する

convert_task_markdownツールは構造化されたマークダウン ファイルを処理し、MCP 互換の JSON を生成します。

リクエスト形式:

{ "tool": "convert_task_markdown", "arguments": { "markdownPath": "/path/to/tasks.md", "outputPath": "/path/to/output.json" // optional } }

応答形式:

{ "tasksCount": 5, "outputPath": "/path/to/output.json", "tasks": [ { "tool": "claude_code", "arguments": { "command": "cd /project && source .venv/bin/activate\n\nTASK TYPE: Validation...", "dangerously_skip_permissions": true, "timeout_ms": 300000 } } // ... more tasks ] }

Markdownタスクファイル形式

タスク マークダウン ファイルは次の構造に従う必要があります。

# Task 001: Task Title ## Objective Clear description of what needs to be accomplished. ## Requirements 1. [ ] First requirement 2. [ ] Second requirement ## Tasks ### Module or Component Name - [ ] Validate `path/to/file.py` - [ ] Step 1 - [ ] Step 2 - [ ] Step 3

コンバーターは次のことを行います。

  1. マークダウン構造を解析する
  2. タスクのメタデータと要件を抽出する
  3. 各検証タスクの詳細なプロンプトを生成する
  4. 適切な作業ディレクトリの設定を含める
  5. 検証と完了の概要を追加する

使用例

  1. タスク ファイル( tasks/api_validation.md ) を作成します。
# Task 001: API Endpoint Validation ## Objective Validate all API endpoints work with real database connections. ## Requirements 1. [ ] All endpoints must use real database 2. [ ] No mock data in validation ## Core API Tasks - [ ] Validate `api/users.py` - [ ] Change directory to project and activate .venv - [ ] Test user creation endpoint - [ ] Test user retrieval endpoint - [ ] Verify JSON responses
  1. MCPタスクに変換:
{ "tool": "convert_task_markdown", "arguments": { "markdownPath": "/project/tasks/api_validation.md" } }
  1. コンバーターはリアルタイムの進行状況を表示します
    [Progress] Loading task file... [Progress] Validating markdown structure... [Progress] Converting 27 validation tasks... [Progress] Task 1/27: Converting core/constants.py [Progress] Task 2/27: Converting core/arango_setup.py ... [Progress] Conversion complete!
  2. コンバーターは、一般的な指示を正確なコマンドに変換します
    • 「プロジェクトのディレクトリを変更して .venv をアクティブ化する」は次のようになります。
      cd /home/user/project && source .venv/bin/activate
    • すべてのパスは絶対パスに解決されます
    • すべてのコマンドは曖昧さなく完全に実行可能
  3. 変換されたタスクを実行します。返されたタスクには正確な実行可能なコマンドが含まれており、 claude_codeツールを使用して順番に実行できます。

完全な例: Markdownから実行まで

ステップ 1: ユーザーはマークダウン タスク ファイル( project_tasks.md ) を作成します。

# Task 001: Setup Development Environment ## Objective Initialize the development environment with all dependencies. ## Requirements 1. [ ] Python 3.11+ installed 2. [ ] Virtual environment created ## Tasks - [ ] Validate `setup.py` - [ ] Change to project directory - [ ] Create virtual environment - [ ] Install dependencies

ステップ2: ユーザーがクロードにプロンプトを出す:

Use convert_task_markdown to process /home/user/project_tasks.md

ステップ3: MCPが変換して検証します

  • フォーマットが正しい場合: 実行可能なJSONを返します
  • フォーマットが間違っている場合: ガイダンスとともにエラーを返します

ステップ4: 結果(成功した場合) :

[ { "tool": "claude_code", "arguments": { "prompt": "cd /home/user/project && python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt", "workFolder": "/home/user/project" } } ]

ステップ5: クロードは各タスクを順番に実行できる

フォーマット検証とエラー処理

タスクコンバーターは、タスク変換の一貫性と信頼性を確保するために、特定のマークダウン構造を適用します。マークダウンファイルのフォーマットが間違っている場合、コンバーターは役立つエラーメッセージを表示します。

エラー応答の例:

{ "status": "error", "error": "Markdown format validation failed", "details": "Markdown format validation failed:\n - Missing required title. Format: '# Task NNN: Title'\n - Missing or empty 'Requirements' section. Format: '## Requirements\\n1. [ ] Requirement'\n - No validation tasks found. Format: '- [ ] Validate `module.py`' with indented steps\n\nRequired markdown format:\n# Task NNN: Title\n## Objective\nClear description\n## Requirements\n1. [ ] First requirement\n## Task Section\n- [ ] Validate `file.py`\n - [ ] Step 1\n - [ ] Step 2", "helpUrl": "https://github.com/grahama1970/claude-code-mcp-enhanced/blob/main/README.md#markdown-task-file-format" }

検証により次のことが保証されます:

  1. 必須セクションが含まれています(タイトル、目的、要件)
  2. タスクは適切なチェックボックス形式を使用します
  3. 各タスクにはインデントされたステップがあります
  4. 要件は一貫性を保つためにチェックボックス形式を使用する

🦚 タスクオーケストレーションパターン

この MCP サーバーは、複雑なワークフローを効率的に処理するための強力なタスク オーケストレーション機能をサポートしています。

ブーメランパターン(Claude Desktop ⟷ Claude Code)

Boomerangパターンにより、Claude Desktopはタスクをオーケストレーションし、Claude Codeに委任することができます。これにより、以下のことが可能になります。

  1. 複雑なワークフローを、より小さく管理しやすいサブタスクに分割する
  2. 親タスクからサブタスクにコンテキストを渡す
  3. サブタスクから親タスクに結果を返す
  4. 詳細結果または要約結果のいずれかを選択します
  5. 構造化されたタスクリストを通じて進捗状況を追跡および管理する

ブーメランパターンの可視化

以下は、Claude がレシピのタスクをステップに分解し、Claude Code に委任する方法を示した簡単な図です。

この例では、

  1. ユーザーはクロードにチョコレートケーキのレシピを作るように頼む
  2. クロード(親)はこれを個別のタスクに分割します
  3. クロードは「レシピを探す」タスクを親タスクIDを持つクロード・コードに委任します。
  4. クロード・コードはレシピ情報をクロードに返す
  5. クロードは「測定値の変換」タスクをクロード・コードに委任します
  6. クロード・コードは変換された測定値を返します
  7. クロードはすべての結果を統合し、完全なソリューションをユーザーに提示します

簡単なタスクの例:

タスク 1 - レシピを見つける:

{ "toolName": "claude_code:claude_code", "arguments": { "prompt": "Search for a classic chocolate cake recipe. Find one with good reviews.", "parentTaskId": "cake-recipe-123", "returnMode": "summary", "taskDescription": "Find Chocolate Cake Recipe" } }

タスク 2 - 測定値の変換:

{ "toolName": "claude_code:claude_code", "arguments": { "prompt": "Convert the measurements in this recipe from cups to grams:\n\n- 2 cups flour\n- 1.5 cups sugar\n- 3/4 cup cocoa powder", "parentTaskId": "cake-recipe-123", "returnMode": "summary", "taskDescription": "Convert Recipe Measurements" } }

仕組み

  1. サブタスクの作成:
    • 親タスクに一意のタスクIDを生成する
    • 次の内容でclaude_codeツールにリクエストを送信します。
      • 具体的なプロンプト
      • 親タスクID
      • タスクの説明
      • 希望する返却モード(「要約」または「完全」)
  2. 結果の受け取り:
    • サブタスクの結果には特別なマーカーが含まれます: <!-- BOOMERANG_RESULT {...} -->
    • このマーカーにはタスクのメタデータを含むJSONが含まれています
    • 親タスクはこれを解析して完了したサブタスクを識別できる
  3. Claude Desktop を使用したワークフローの例:
You: I need to refactor this codebase. It's quite complex. Claude Desktop: I'll help you with that. Let me break this down into smaller tasks for Claude Code to handle: 1. First, I'll have Claude Code analyze the codebase structure 2. Then, I'll have it identify problematic patterns 3. Finally, I'll ask it to generate a refactoring plan [Claude Desktop sends a request to the claude_code tool with parentTaskId="task1" and returnMode="summary"] [Claude Code analyzes the codebase and returns a summary with the BOOMERANG_RESULT marker] Claude Desktop: Based on Claude Code's analysis, here are the key issues found: - Duplicate code in modules X and Y - Poor separation of concerns in module Z - Inconsistent naming conventions Now I'll ask Claude Code to suggest specific refactorings...

このアプローチは、詳細な分析や複数のステップを必要とする複雑なタスクに特に役立ちます。

包括的なタスクリスト管理の例

Claude Code MCP と Claude を使用して、構造化されたタスク リストを管理および実行する詳細な例を次に示します。

1. タスクリスト構造の設定

まず、次の構造を持つタスク リスト ファイル (例: tasks.md ) を作成します。

# Project Task List ## Parent Task: API Optimization Project - [ ] Optimize API performance for high-traffic endpoints - [ ] Analyze current API performance and identify bottlenecks - [ ] Implement database query optimization for user endpoints - [ ] Add Redis caching for frequently accessed data - [ ] Set up performance monitoring ## Assumptions and Decisions - [2025-05-15] Assumption: Redis is available in the infrastructure - [2025-05-15] Decision: Focus on user endpoints first (Rationale: Highest traffic area) ## Relevant Files - `src/controllers/userController.js`: User API endpoints - `src/services/userService.js`: Business logic for user operations ## Improvement Notes - Pattern identified: N+1 query issue in user listing endpoint - Automation opportunity: Add caching automatically for all get-by-id endpoints
2. タスクリストの実行

クロードは、クロード コードを使用してタスクを体系的に実行できるようになりました。

You: Please help me execute the task list in tasks.md, starting with the first subtask. Claude: I'll help you work through your task list systematically. Let me first check the current task list to identify the next task to work on. [Claude uses claude_code to read the task list] I see the first subtask is "Analyze current API performance and identify bottlenecks". I'll execute this task now using Claude Code. [Claude sends the following request to claude_code]: { "toolName": "claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Analysis\nTASK ID: api-perf-analysis\nCURRENT SUBTASK: Analyze current API performance and identify bottlenecks\n\nCONTEXT:\n- Parent task goal: Optimize API performance for high-traffic endpoints\n- This is the first step in our optimization process\n- Focus on user endpoints as noted in assumptions\n\nINSTRUCTIONS:\n1. Analyze the current API implementation in src/controllers/userController.js and src/services/userService.js\n2. Run performance tests on the user endpoints\n3. Identify specific bottlenecks and performance issues\n4. Document findings in a clear, structured format\n5. Update task list file after completion\n\nAfter completion, provide summary in this format:\n\nCOMPLETION SUMMARY:\n- What was done:\n- Results:\n- Files analyzed:\n- Issues identified:\n- Recommendations:\n- Next subtask in list:", "workFolder": "/path/to/project" } } [Claude Code executes the analysis task and returns results] Great! Claude Code has completed the analysis. Here's what was found: 1. Main performance bottlenecks identified: - N+1 query problem in the user listing endpoint - Missing indexes on frequently queried fields - No caching for repetitive data lookups 2. Recommendations: - Add eager loading for user relationships - Create database indexes for user_id and email fields - Implement Redis caching with a 5-minute TTL Let me update the task list to mark this task as complete and proceed to the next one. [Claude uses claude_code to update the task list]: { "toolName": "claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Task List Update\n\n1. Read the current task list in tasks.md\n2. Mark the 'Analyze current API performance and identify bottlenecks' subtask as [x]\n3. Add new findings to the Improvement Notes section\n4. Add any new relevant files identified during analysis\n5. Write updated task list\n6. Return the updated task list", "workFolder": "/path/to/project" } } [Claude Code updates the task list and marks the first subtask complete] I've updated the task list. The first subtask is now complete, and I've added the detailed findings to the Improvement Notes section. The next subtask is "Implement database query optimization for user endpoints". Would you like me to proceed with this next subtask now?
3. 後続のタスクの継続

確認を得た後、クロードは次のサブタスクに進みます。

You: Yes, please proceed with the next subtask. Claude: I'll now execute the next subtask: "Implement database query optimization for user endpoints". This will involve fixing the N+1 query problem identified in the analysis and adding appropriate database indexes. [Claude sends the following request to claude_code]: { "toolName": "claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Code Implementation\nTASK ID: db-query-optimization\nCURRENT SUBTASK: Implement database query optimization for user endpoints\n\nCONTEXT:\n- Parent task goal: Optimize API performance for high-traffic endpoints\n- Previous subtask identified N+1 query issues and missing indexes\n- Need to implement eager loading and proper indexes\n\nINSTRUCTIONS:\n1. Modify src/controllers/userController.js to implement eager loading for related data\n2. Add appropriate database indexes to user-related tables\n3. Refactor any inefficient database queries in userService.js\n4. Ensure changes maintain existing functionality\n5. Run tests to verify performance improvements\n6. Update task list file after completion\n\nAfter completion, provide summary in this format:\n\nCOMPLETION SUMMARY:\n- What was done:\n- Results:\n- Files modified:\n- Performance improvements:\n- Next subtask in list:", "workFolder": "/path/to/project" } } [Claude Code implements the optimizations and returns results] Excellent! The database query optimizations have been successfully implemented. Here's a summary: 1. Changes made: - Added eager loading in userController.js for user relationships - Created new database indexes for user_id and email fields - Refactored list query to use a single efficient JOIN statement - Added pagination to prevent large result sets 2. Performance results: - User listing endpoint response time reduced by 68% - Database query count reduced from 25+ to 3 for typical requests Let me update the task list again to reflect this progress. [Claude uses claude_code to update the task list again]: { "toolName": "claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Task List Update\n\n1. Read the current task list in tasks.md\n2. Mark the 'Implement database query optimization for user endpoints' subtask as [x]\n3. Add new files modified to the Relevant Files section\n4. Update Improvement Notes with performance metrics\n5. Write updated task list\n6. Return the updated task list", "workFolder": "/path/to/project" } } [Claude Code updates the task list and marks the second subtask complete] I've updated the task list again. Two subtasks are now complete, and the next one is "Add Redis caching for frequently accessed data". Would you like me to continue with this subtask?

この構造化されたアプローチにより、Claude はプロセス全体を通じて進捗状況、想定事項、関連ファイルを明確に文書化しながら、複雑なタスク リストを体系的に処理できます。

🎭 自己オーケストレーション パターン (オーケストレーターとしての Claude Code)

Claude Desktopは親エージェントとして使用されることが多いですが、Claude Code自体をオーケストレーターとエグゼキューターの両方として使用することもできます。このアプローチにより、Claude Desktopを必要とせずに、Claude Codeが独自のタスクオーケストレーションを管理する自己完結型のシステムを構築できます。

実装手順
  1. タスク構造を初期化し、Claude Codeをオーケストレーターとして起動するエントリスクリプトを作成します。
  2. タスクのステータスと依存関係を追跡するタスクデータ構造(通常はJSON形式)を設計する
  3. 個々のタスクを処理し、タスクの状態を更新するためのタスク実行スクリプトを作成する
セルフオーケストレーションの主な利点
  1. 自己完結型: 外部オーケストレーター(Claude Desktop など)は不要
  2. 永続的な状態: すべてのタスク情報はJSONファイルに保存されます
  3. エラー回復: 中断された場合、最後に成功したタスクから再開できます
  4. 簡素化された依存関係管理: 単一のシステムですべてのClaude Codeのインタラクションを管理
  5. シェルスクリプトの自動化: CI/CD パイプラインや自動化されたワークフローに簡単に統合できます

サンプル スクリプトとタスク構造を含む詳細な実装ガイドについては、 「Self-Orchestration with Claude Code」を参照してください。

👓 Roo モードの統合

このMCPサーバーは、 .roomodes設定ファイルを通じて特殊モードとの統合をサポートしています。これを有効にすると、各タスクで使用するモードを指定でき、特殊な動作が可能になります。

Rooモードの使い方

  1. Rooモードサポートを有効にする:
    • MCP構成で環境変数MCP_USE_ROOMODES=true設定します。
    • MCPサーバーのルートディレクトリに.roomodesファイルを作成します。
    • オプションでMCP_WATCH_ROOMODES=trueでホットリロードを有効にして、ファイルが変更されたときに構成を自動的にリロードします。
  2. モードを設定する:
    • .roomodesファイルには、 customModes配列を持つJSONオブジェクトが含まれている必要があります。
    • 各モードには、 slugnameroleDefinition 、およびオプションでmodelIdを持つapiConfigurationが必要です。
  3. モードの使用:
    • claude_codeツールにリクエストを行う際は、希望するモードのスラッグを指定したmodeパラメータを含めます。
    • MCPサーバーはロール定義とモデル構成を自動的に適用します。
  4. .roomodes ファイルの例:
    { "customModes": [ { "slug": "coder", "name": "💻 Coder", "roleDefinition": "You are a coding specialist who writes clean, efficient code.", "apiConfiguration": { "modelId": "claude-3-sonnet-20240229" } }, { "slug": "designer", "name": "🎨 Designer", "roleDefinition": "You are a design specialist focused on UI/UX solutions." } ] }
  5. 環境設定例:
    { "mcpServers": { "claude-code-mcp-enhanced": { "command": "npx", "args": ["github:grahama1970/claude-code-mcp-enhanced"], "env": { "MCP_USE_ROOMODES": "true", "MCP_WATCH_ROOMODES": "true", "MCP_CLAUDE_DEBUG": "false" } } } }
  6. モードを使用してリクエストを行う:
    { "toolName": "claude_code:claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nCreate unit tests for the user authentication module.", "workFolder": "/path/to/project", "mode": "coder" } }

Roo Modes の主な機能:

  • 特殊な動作: モードごとにシステムプロンプトやモデル構成が異なります
  • ホットリロード: MCP_WATCH_ROOMODES=trueの場合、 .roomodesファイルが変更されると、サーバーは自動的に構成をリロードします。
  • パフォーマンス: サーバーはルームコードの設定をキャッシュしてパフォーマンスを向上させます
  • フォールバック: モードが見つからないか、ルームコードが無効になっている場合、サーバーはデフォルトの動作を続行します。

🛠️ 信頼性機能の強化

このサーバーには、信頼性とパフォーマンスを向上させるためのいくつかの改善が含まれています。

1. ハートビートとタイムアウト防止

長時間実行される操作中にクライアント側のタイムアウトを防ぐには:

  • 15秒ごとに進行状況の更新を送信する設定可能なハートビートメカニズムを追加しました
  • 実行時間の追跡とレポートを実装
  • 環境変数を通じて設定可能なタイムアウトパラメータを追加しました

2. 再試行による堅牢なエラー処理

一時的なエラーに対するインテリジェントな再試行ロジックを追加しました:

  • 設定可能なパラメータによる自動再試行を実装
  • 再試行可能な問題を識別するためのエラー分類を追加しました
  • 詳細なエラー報告と追跡を作成した

3. リクエスト追跡システム

包括的なリクエストライフサイクル管理を実装しました。

  • 各リクエストに固有のIDを追加しました
  • 進行中のリクエストの追跡を作成しました
  • 完了時または失敗時に適切なクリーンアップを確実に実行

4. 正常なシャットダウン

適切なプロセス終了処理を追加しました:

  • SIGINT および SIGTERM のシグナル ハンドラーを実装しました。
  • 進行中のリクエストの追跡機能を追加しました
  • クリーンシャットダウンのための待機ロジックを作成しました
  • 退出時に適切な清掃を確実に実施

5. 設定のキャッシュとホットリロード

構成のパフォーマンス最適化を追加しました:

  • roomodes ファイルのキャッシュを実装しました
  • ファイルの変更に基づいて自動的に無効化する機能を追加
  • 設定可能なファイル監視メカニズムを作成

⚙️ 設定オプション

サーバーの動作は、次の環境変数を使用してカスタマイズできます。

変数説明デフォルト
CLAUDE_CLI_PATHClaude CLI 実行ファイルへの絶対パス自動検出
MCP_CLAUDE_DEBUG詳細なデバッグログを有効にするfalse
MCP_HEARTBEAT_INTERVAL_MS進捗報告の間隔15000(15秒)
MCP_EXECUTION_TIMEOUT_MSCLI実行のタイムアウト1800000(30m)
MCP_MAX_RETRIES一時エラーの最大再試行回数3
MCP_RETRY_DELAY_MS再試行間の遅延1000(1秒)
MCP_USE_ROOMODESRooモードの統合を有効にするfalse
MCP_WATCH_ROOMODES変更時に .roomodes を自動リロードするfalse

これらは、シェル環境またはmcp.jsonサーバー構成のenvブロック内で設定できます。

📸 視覚的な例

以下に、サーバーの動作例をいくつか示します。

ESLint設定の修正

Claude Code MCP ツールを使用して、古い構成ファイルを削除し、新しい構成ファイルを作成することで、ESLint セットアップを対話的に修正する例を次に示します。

ファイルの一覧表示の例

以下は、ディレクトリ内のファイルを一覧表示する Claude Code ツールの例です。

複雑な複数ステップの操作

この例では、ブランチの作成によるリリースの準備、複数のファイル ( package.jsonCHANGELOG.md ) の更新、変更のコミット、プル リクエストの開始など、より複雑な複数ステップのタスクをすべて 1 つの一貫した操作でclaude_codeが処理する様子を示しています。

GitHub Actionsワークフロー修正

🎯 主なユースケース

このサーバーは、統合されたclaude_codeツールを通じて、AIがClaude Code CLIに直接アクセスできるようにすることで、幅広い強力な機能を実現します。以下は、実現可能な例です。

  1. コード生成、分析、リファクタリング:
    • "Generate a Python script to parse CSV data and output JSON."
    • "Analyze my_script.py for potential bugs and suggest improvements."
  2. ファイル システム操作 (作成、読み取り、編集、管理):
    • ファイルの作成: "Your work folder is /Users/steipete/my_project\n\nCreate a new file named 'config.yml' in the 'app/settings' directory with the following content:\nport: 8080\ndatabase: main_db"
    • ファイルの編集: "Your work folder is /Users/steipete/my_project\n\nEdit file 'public/css/style.css': Add a new CSS rule at the end to make all 'h2' elements have a 'color: navy'."
    • 移動/コピー/削除: "Your work folder is /Users/steipete/my_project\n\nMove the file 'report.docx' from the 'drafts' folder to the 'final_reports' folder and rename it to 'Q1_Report_Final.docx'."
  3. バージョン管理(Git):
    • "Your work folder is /Users/steipete/my_project\n\n1. Stage the file 'src/main.java'.\n2. Commit the changes with the message 'feat: Implement user authentication'.\n3. Push the commit to the 'develop' branch on origin."
  4. ターミナルコマンドの実行:
    • "Your work folder is /Users/steipete/my_project/frontend\n\nRun the command 'npm run build'."
    • "Open the URL https://developer.mozilla.org in my default web browser."
  5. ウェブ検索と要約:
    • "Search the web for 'benefits of server-side rendering' and provide a concise summary."
  6. 複雑な複数ステップのワークフロー:
    • バージョン バンプ、変更ログの更新、リリースのタグ付けを自動化します。 "Your work folder is /Users/steipete/my_project\n\nFollow these steps: 1. Update the version in package.json to 2.5.0. 2. Add a new section to CHANGELOG.md for version 2.5.0 with the heading '### Added' and list 'New feature X'. 3. Stage package.json and CHANGELOG.md. 4. Commit with message 'release: version 2.5.0'. 5. Push the commit. 6. Create and push a git tag v2.5.0."
  7. 構文エラーのあるファイルの修復:
    • "Your work folder is /path/to/project\n\nThe file 'src/utils/parser.js' has syntax errors after a recent complex edit that broke its structure. Please analyze it, identify the syntax errors, and correct the file to make it valid JavaScript again, ensuring the original logic is preserved as much as possible."
  8. GitHub とのやり取り (例: プル リクエストの作成):
    • "Your work folder is /Users/steipete/my_project\n\nCreate a GitHub Pull Request in the repository 'owner/repo' from the 'feature-branch' to the 'main' branch. Title: 'feat: Implement new login flow'. Body: 'This PR adds a new and improved login experience for users.'"
  9. GitHub とのやり取り (例: PR CI ステータスの確認):
    • "Your work folder is /Users/steipete/my_project\n\nCheck the status of CI checks for Pull Request #42 in the GitHub repository 'owner/repo'. Report if they have passed, failed, or are still running."

重要: ファイル システムまたは git 操作のプロンプトで、現在の作業ディレクトリ (CWD) コンテキストを必ず提供してください (例: "Your work folder is /path/to/project\n\n...your command..." )。

🔧 トラブルシューティング

  • **「コマンドが見つかりません」(claude-code-mcp):**グローバルにインストールされている場合は、npm のグローバル bin ディレクトリがシステムの PATH に含まれていることを確認してください。npx npx使用している場合は、 npx自体が動作していることを確認してください。
  • 「コマンドが見つかりません」(claude または ~/.claude/local/claude): Claude CLI が正しくインストールされていることを確認してください。claude claude/doctorを実行するか、ドキュメントを確認してください。
  • 権限の問題: 「重要な初回セットアップ」手順を実行したことを確認してください。
  • サーバーからのJSONエラー: MCP_CLAUDE_DEBUGtrueの場合、エラーメッセージまたはログがMCPのJSON解析に干渉する可能性があります。通常の動作にはfalseに設定してください。
  • ESM/インポート エラー: Node.js v20 以降を使用していることを確認してください。
  • **クライアントタイムアウト:**長時間実行される操作の場合、サーバーはクライアントのタイムアウトを防ぐため、15秒ごとにハートビートメッセージを送信します。それでもタイムアウトが発生する場合は、 MCP_HEARTBEAT_INTERVAL_MS環境変数を使用してハートビート間隔を調整できます。
  • **ネットワーク/サーバーエラー:**一時的なエラーが発生した場合、サーバーに自動再試行ロジックが追加されました。それでも問題が解決しない場合は、 MCP_MAX_RETRIESMCP_RETRY_DELAY_MS値を増やしてみてください。
  • Claude CLI フォールバック警告: Claude CLI が ~/.claude/local/claude に見つからないという警告が表示された場合、これは正常です。サーバーは PATH にあるclaudeコマンドにフォールバックしています。必要に応じて、 CLAUDE_CLI_PATH環境変数を設定して、Claude CLI 実行ファイルへの正確なパスを指定できます。

👨‍💻 開発者向け: ローカルセットアップと貢献

このサーバーを開発または貢献する場合、あるいはテストのためにクローン リポジトリから実行する場合は、 「ローカル インストールおよび開発セットアップ ガイド」を参照してください。

💪 貢献する

貢献を歓迎します!環境設定の詳細については、ローカルインストールと開発セットアップガイドを参照してください。

問題とプル リクエストをGitHub リポジトリに送信します。

⚖️ ライセンス

マサチューセッツ工科大学

💬 フィードバックとサポート

Claude Code MCP サーバーの使用に関して問題が発生した場合や質問がある場合は、次の手順に従ってください。

  1. 上記のトラブルシューティングセクションを確認してください
  2. GitHubリポジトリに問題を提出する
  3. リポジトリのディスカッションセクションでディスカッションに参加してください

このツールをより良くするためのフィードバックと貢献に感謝します。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

高度なタスク機能を備えた、権限を自動的にバイパスしてワンショットモードでClaude Codeを実行できる強化されたモデルコンテキストプロトコル(MCP)サーバー

  1. 🔍 概要
    1. ✨ メリット
      1. 📝 前提条件
        1. 💾 インストールと使用方法
          1. 🚀 方法 1: GitHub URL 経由 (推奨)
          2. 📦 方法 2: npm パッケージ経由
          3. 🔧 方法3: ローカルインストール
        2. 🔑 初回セットアップ時の重要事項:権限の承認
          1. 🔗 MCPクライアントへの接続
            1. MCP 構成ファイルの例
            2. MCP 構成の場所
          2. 🛠️ 提供されるツール
            1. claude_code 💬
            2. health 🩺
            3. convert_task_markdown 📋
          3. 使用シナリオの例
            1. 基本的なコード操作
            2. タスクオーケストレーション(ブーメランパターン)
            3. 特殊モードリクエスト
          4. 🔄タスクコンバーター
            1. 完全なワークフロー
            2. ワークフローの手順
            3. 主な特徴
            4. MarkdownタスクをMCPコマンドに変換する
            5. Markdownタスクファイル形式
            6. 使用例
            7. 完全な例: Markdownから実行まで
            8. フォーマット検証とエラー処理
          5. 🦚 タスクオーケストレーションパターン
            1. ブーメランパターン(Claude Desktop ⟷ Claude Code)
            2. ブーメランパターンの可視化
            3. 仕組み
            4. 包括的なタスクリスト管理の例
            5. 🎭 自己オーケストレーション パターン (オーケストレーターとしての Claude Code)
          6. 👓 Roo モードの統合
            1. Rooモードの使い方
            2. Roo Modes の主な機能:
          7. 🛠️ 信頼性機能の強化
            1. ハートビートとタイムアウト防止
            2. 再試行による堅牢なエラー処理
            3. リクエスト追跡システム
            4. 正常なシャットダウン
            5. 設定のキャッシュとホットリロード
          8. ⚙️ 設定オプション
            1. 📸 視覚的な例
              1. ESLint設定の修正
              2. ファイルの一覧表示の例
              3. 複雑な複数ステップの操作
              4. GitHub Actionsワークフロー修正
            2. 🎯 主なユースケース
              1. 🔧 トラブルシューティング
                1. 👨‍💻 開発者向け: ローカルセットアップと貢献
                  1. 💪 貢献する
                    1. ⚖️ ライセンス
                      1. 💬 フィードバックとサポート

                        Related MCP Servers

                        • A
                          security
                          A
                          license
                          A
                          quality
                          An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.
                          Last updated -
                          8
                          86
                          JavaScript
                          MIT License
                        • A
                          security
                          A
                          license
                          A
                          quality
                          A Model Context Protocol (MCP) server that provides code analysis capabilities using tree-sitter, designed to give Claude intelligent access to codebases with appropriate context management.
                          Last updated -
                          26
                          33
                          Python
                          MIT License
                          • Apple
                          • Linux
                        • -
                          security
                          A
                          license
                          -
                          quality
                          A custom Model Context Protocol server that gives Claude Desktop and other LLMs access to file system operations and command execution capabilities through standardized tool interfaces.
                          Last updated -
                          22
                          Python
                          Apache 2.0
                          • Apple
                          • Linux
                        • A
                          security
                          F
                          license
                          A
                          quality
                          A server built on mcp-framework that enables integration with Claude Desktop through the Model Context Protocol.
                          Last updated -
                          1
                          1
                          • Apple

                        View all related MCP servers

                        MCP directory API

                        We provide all the information about MCP servers via our MCP API.

                        curl -X GET 'https://glama.ai/api/mcp/v1/servers/grahama1970/claude-code-mcp-enhanced'

                        If you have feedback or need assistance with the MCP directory API, please join our Discord server