Yellhorn MCP

by msnidal
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Analyzes repository content to create context-aware work plans and evaluates code changes through diff analysis against planned implementations.

  • Allows installation of the Yellhorn MCP server package directly from the Python Package Index.

  • Supports testing of the MCP server during development.

イェルホーン MCP

モデルコンテキストプロトコル(MCP)サーバーは、Claude CodeにGemini 2.5 Proの機能を公開し、プロンプトでコードベース全体を使用したソフトウェア開発タスクを実行します。このパターンは、Claude Codeなどのコードアシスタントやその他のMCP対応コーディングエージェントが実行する作業を定義し、結果が元の要件を正確に満たしていることを確認するのに非常に役立ちます。

特徴

  • 作業計画の作成: プロンプトに基づいてコードベース全体を考慮した詳細な実装計画を作成し、GitHub の問題として投稿して、コーディング エージェントの MCP リソースとして公開します。
  • コード差分のレビュー: 完全なコードベースのコンテキストで元の作業計画に対してgitの差分を評価するツールを提供し、詳細なフィードバックを提供し、実装が元の要件から逸脱していないことを確認し、そうするために何を変更すべきかについてのガイダンスを提供します。
  • 分離された開発環境: Git ワークツリーとリンクされたブランチを作成し、合理化された分離された開発ワークフローを実現します (作業計画の生成とは別に実行できます)。これにより、複数のエージェントによる並行開発が可能になります。
  • シームレスな GitHub 統合: GitHub UI で適切なブランチ リンクを使用してラベル付けされた問題を自動的に作成し、元の作業計画の問題への参照を含むサブ問題のレビューを投稿します。
  • コンテキスト制御: .gitignoreと同様に、 .yellhornignoreファイルを使用して、特定のファイルとディレクトリを AI コンテキストから除外します。
  • MCP リソース: 作業計画を標準の MCP リソースとして公開し、簡単に一覧表示および取得できるようにします。

インストール

# Install from PyPI pip install yellhorn-mcp # Install from source git clone https://github.com/msnidal/yellhorn-mcp.git cd yellhorn-mcp pip install -e .

構成

サーバーには次の環境変数が必要です。

  • GEMINI_API_KEY : Gemini APIキー(必須)
  • REPO_PATH : リポジトリへのパス(デフォルトは現在のディレクトリ)
  • YELLHORN_MCP_MODEL : 使用する Gemini モデル (デフォルトは "gemini-2.5-pro-exp-03-25")

サーバーには、GitHub CLI ( gh ) がインストールされ、認証されている必要もあります。

使用法

サーバーの実行

# As a standalone server yellhorn-mcp --repo-path /path/to/repo --host 127.0.0.1 --port 8000 # Using the MCP CLI mcp dev yellhorn_mcp.server # Install as a permanent MCP server for Claude Desktop mcp install yellhorn_mcp.server # Set environment variables during installation mcp install yellhorn_mcp.server -v GEMINI_API_KEY=your_key_here -v REPO_PATH=/path/to/repo

Claude Codeとの統合

Claude Code を使用する場合、次の方法で Yellhorn MCP ツールを使用できます。

  1. プロジェクト タスクの開始:
    Please generate a workplan with title "[Your Title]" and detailed description "[Your detailed requirements]"
  2. 作業計画のワークツリーを作成します (オプション):
    Please create a worktree for issue #123
  3. 作成されたワークツリー ディレクトリに移動します。
    cd [worktree_path] # The path is returned in the response
  4. 必要に応じて作業計画を表示します。
    # You can run this from anywhere Please get the workplan for issue #123
  5. 変更を加えて PR を作成し、レビューをリクエストします。
    # First create a PR using your preferred method (Git CLI, GitHub CLI, or web UI) git add . git commit -m "Implement feature" git push origin HEAD gh pr create --title "[PR Title]" --body "[PR Description]" # You can run this from anywhere Please review the PR comparing "main" and "feature-branch" against the workplan in issue #123

ツール

作業計画を作成する

タイトルと詳細な説明に基づいて、詳細な作業計画を含む GitHub の問題を作成します。

入力:

  • title : GitHub の問題のタイトル (問題のタイトルとヘッダーとして使用されます)
  • detailed_description : 作業計画の詳細な説明

出力:

  • 次の内容を含む JSON 文字列:
    • issue_url : 作成された GitHub の問題への URL
    • issue_number : GitHubの問題番号

ワークツリーの作成

既存の作業計画の問題から分離された開発のために、リンクされたブランチを持つ Git ワークツリーを作成します。

入力:

  • issue_number : 作業計画のGitHubの問題番号

出力:

  • 次の内容を含む JSON 文字列:
    • worktree_path : 作成された Git ワークツリーディレクトリへのパス
    • branch_name : ワークツリー用に作成されたブランチの名前
    • issue_url : 関連する GitHub の問題への URL

作業計画を取得する

作業計画に関連付けられた作業計画コンテンツ (GitHub の問題本体) を取得します。

入力:

  • issue_number : 作業計画の GitHub の問題番号。

出力:

  • 作業計画の問題の内容を文字列として

作業計画のレビュー

GitHub Issueに記載された作業計画と2つのgit参照(ブランチまたはコミット)を比較する非同期コードレビューをトリガーします。実行後(バックグラウンドで)、レビューを含むGitHubサブIssueが非同期的に作成されます。

入力:

  • issue_number : 作業計画の GitHub の問題番号。
  • base_ref : 比較のためのベース Git ref(コミット SHA、ブランチ名、タグ)。デフォルトは「main」です。
  • head_ref : 比較対象となるGitのヘッド参照(コミットSHA、ブランチ名、タグ)。デフォルトは「HEAD」です。

出力:

  • レビュータスクが開始されたことを確認するメッセージ

リソースアクセス

Yellhorn MCP は、作業計画へのアクセスを提供するために標準の MCP リソース API も実装しています。

  • list-resources : すべての作業計画を一覧表示します (GitHub の yellhorn-mcp ラベルの問題)
  • get-resource : 問題番号で特定の作業計画の内容を取得します。

これらには、標準の MCP CLI コマンドを介してアクセスできます。

# List all workplans mcp list-resources yellhorn-mcp # Get a specific workplan by issue number mcp get-resource yellhorn-mcp 123

発達

# Install development dependencies pip install -e ".[dev]" # Run tests pytest

CI/CD

このプロジェクトでは、継続的な統合とデプロイメントに GitHub Actions を使用します。

  • テスト: プルリクエストで自動的に実行され、メインブランチにプッシュされます
    • フレーク8で糸くずを落とす
    • 黒でフォーマットチェック
    • pytestを使ったテスト
  • 公開: バージョンタグがプッシュされると、PyPI に自動的に公開されます
    • タグは pyproject.toml のバージョンと一致する必要があります (例: v0.2.2)
    • GitHub リポジトリ シークレットとして保存された PyPI API トークンが必要です (PYPI_API_TOKEN)

新しいバージョンをリリースするには:

  1. pyproject.toml のバージョンを更新する
  2. 変更をコミットする: git commit -am "Bump version to XYZ"
  3. コミットにタグを付ける: git tag vX.YZ
  4. 変更をプッシュしてタグ付けする: git push && git push --tags

詳しい手順については、「使用ガイド」を参照してください。

ライセンス

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

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Gemini 2.5 Pro を Claude Code に接続する MCP サーバー。ユーザーはコードベースに基づいて詳細な実装計画を生成し、コード変更に関するフィードバックを受け取ることができます。

  1. Features
    1. Installation
      1. Configuration
        1. Usage
          1. Running the server
          2. Integration with Claude Code
        2. Tools
          1. create_workplan
          2. create_worktree
          3. get_workplan
          4. review_workplan
        3. Resource Access
          1. Development
            1. CI/CD
          2. License
            ID: w0azmxm46z