Skip to main content
Glama

Yellhorn MCP

by msnidal

Yellhorn MCP

Yellhorn-Logo

Ein Model Context Protocol (MCP)-Server, der Gemini 2.5 Pro und OpenAI-Funktionen für Claude Code für Softwareentwicklungsaufgaben bereitstellt und dabei Ihre gesamte Codebasis in der Eingabeaufforderung nutzt. Dieses Muster ist äußerst nützlich, um die Arbeit von Code-Assistenten wie Claude Code oder anderen MCP-kompatiblen Programmieragenten zu definieren und die Ergebnisse zu überprüfen, um sicherzustellen, dass sie den genau festgelegten ursprünglichen Anforderungen entsprechen.

Merkmale

  • Arbeitspläne erstellen : Erstellt detaillierte Implementierungspläne basierend auf einer Eingabeaufforderung und unter Berücksichtigung Ihrer gesamten Codebasis, veröffentlicht sie als GitHub-Probleme und stellt sie als MCP-Ressourcen für Ihren Codieragenten bereit
  • Code-Diffs beurteilen : Bietet ein Tool zum Bewerten von Git-Diffs im Vergleich zum ursprünglichen Arbeitsplan mit vollständigem Codebasiskontext und liefert detailliertes Feedback, um sicherzustellen, dass die Implementierung nicht von den ursprünglichen Anforderungen abweicht, und gibt Hinweise, was geändert werden muss, um dies zu erreichen.
  • Nahtlose GitHub-Integration : Erstellt automatisch gekennzeichnete Probleme und veröffentlicht beurteilte Unterprobleme mit Verweisen auf die Probleme des ursprünglichen Arbeitsplans.
  • Kontextsteuerung : Verwenden Sie .yellhornignore -Dateien, um bestimmte Dateien und Verzeichnisse aus dem KI-Kontext auszuschließen, ähnlich wie .gitignore
  • MCP-Ressourcen : Stellt Arbeitspläne als Standard-MCP-Ressourcen zur einfachen Auflistung und Abfrage bereit

Installation

# 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 .

Konfiguration

Der Server benötigt die folgenden Umgebungsvariablen:

  • GEMINI_API_KEY : Ihr Gemini-API-Schlüssel (erforderlich für Gemini-Modelle)
  • OPENAI_API_KEY : Ihr OpenAI-API-Schlüssel (erforderlich für OpenAI-Modelle)
  • REPO_PATH : Pfad zu Ihrem Repository (standardmäßig das aktuelle Verzeichnis)
  • YELLHORN_MCP_MODEL : Zu verwendendes Modell (Standard: „gemini-2.5-pro-preview-03-25“). Verfügbare Optionen:
    • Gemini-Modelle: „gemini-2.5-pro-preview-03-25“, „gemini-2.5-flash-preview-04-17“
    • OpenAI-Modelle: „gpt-4o“, „gpt-4o-mini“, „o4-mini“, „o3“

Der Server erfordert außerdem die Installation und Authentifizierung der GitHub CLI ( gh ).

Verwendung

Erste Schritte

VSCode/Cursor-Setup

Um Yellhorn MCP in VSCode oder Cursor zu konfigurieren, erstellen Sie im Stammverzeichnis Ihres Arbeitsbereichs eine Datei .vscode/mcp.json mit dem folgenden Inhalt:

{ "inputs": [ { "type": "promptString", "id": "gemini-api-key", "description": "Gemini API Key" } ], "servers": { "yellhorn-mcp": { "type": "stdio", "command": "/Users/msnidal/.pyenv/shims/yellhorn-mcp", "args": [], "env": { "GEMINI_API_KEY": "${input:gemini-api-key}", "REPO_PATH": "${workspaceFolder}" } } } }
Claude Code Setup

Um Yellhorn MCP direkt mit Claude Code zu konfigurieren, fügen Sie Ihrem Projekt eine .mcp.json Datei auf Stammebene mit folgendem Inhalt hinzu:

{ "mcpServers": { "yellhorn-mcp": { "type": "stdio", "command": "yellhorn-mcp", "args": ["--model", "o3"], "env": {} } } }

Werkzeuge

Arbeitsplan erstellen

Erstellt ein GitHub-Problem mit einem detaillierten Arbeitsplan basierend auf dem Titel und der ausführlichen Beschreibung.

Eingabe :

  • title : Titel für das GitHub-Problem (wird als Problemtitel und -überschrift verwendet)
  • detailed_description : Detaillierte Beschreibung des Arbeitsplans
  • codebase_reasoning : (optional) Steuern Sie, ob eine KI-Verbesserung durchgeführt wird:
    • "full" : (Standard) Verwenden Sie KI, um den Arbeitsplan mit vollständigem Codebasiskontext zu verbessern
    • "lsp" : Verwenden Sie KI mit leichtgewichtigem Codebasiskontext (Funktions-/Methodensignaturen, Klassenattribute und Strukturfelder für Python und Go).
    • "none" : KI-Verbesserung überspringen, die bereitgestellte Beschreibung unverändert verwenden
  • debug : (optional) Wenn auf true gesetzt, wird dem Problem ein Kommentar mit der vollständigen Eingabeaufforderung hinzugefügt, die für die Generierung verwendet wurde.

Ausgabe :

  • JSON-Zeichenfolge mit:
    • issue_url : URL zum erstellten GitHub-Problem
    • issue_number : Die GitHub-Problemnummer

Arbeitsplan abrufen

Ruft den mit einem Arbeitsplan verknüpften Arbeitsplaninhalt (GitHub-Problemtext) ab.

Eingabe :

  • issue_number : Die GitHub-Problemnummer für den Arbeitsplan.

Ausgabe :

  • Der Inhalt der Arbeitsplanausgabe als Zeichenfolge

Richter_Arbeitsplan

Löst eine asynchrone Code-Beurteilung aus, die zwei Git-Referenzen (Branches oder Commits) mit einem in einem GitHub-Problem beschriebenen Arbeitsplan vergleicht. Erstellt nach der Ausführung (im Hintergrund) asynchron ein GitHub-Unterproblem mit der Beurteilung.

Eingabe :

  • issue_number : Die GitHub-Problemnummer für den Arbeitsplan.
  • base_ref : Basis-Git-Referenz (Commit-SHA, Branch-Name, Tag) zum Vergleich. Standardmäßig „main“.
  • head_ref : Head-Git-Ref (Commit-SHA, Branch-Name, Tag) zum Vergleich. Standardmäßig „HEAD“.
  • codebase_reasoning : (optional) Steuern Sie, welcher Codebase-Kontext bereitgestellt wird:
    • "full" : (Standard) Vollständigen Codebasiskontext verwenden
    • "lsp" : Verwenden Sie einen leichteren Codebasiskontext (nur Funktionssignaturen für Python und Go sowie vollständige Diff-Dateien).
    • "none" : Codebasiskontext für schnellste Verarbeitung vollständig überspringen
  • debug : (optional) Wenn auf true gesetzt, wird dem Unterproblem ein Kommentar mit der vollständigen Eingabeaufforderung hinzugefügt, die für die Generierung verwendet wurde

Ausgabe :

  • Eine Bestätigungsnachricht, dass die Beurteilungsaufgabe eingeleitet wurde

Ressourcenzugriff

Yellhorn MCP implementiert auch die standardmäßige MCP-Ressourcen-API, um Zugriff auf Arbeitspläne zu ermöglichen:

  • list-resources : Listet alle Arbeitspläne auf (GitHub-Probleme mit dem Label yellhorn-mcp)
  • get-resource : Ruft den Inhalt eines bestimmten Arbeitsplans nach Ausgabenummer ab

Auf diese kann über die Standard-MCP-CLI-Befehle zugegriffen werden:

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

Entwicklung

# Install development dependencies pip install -e ".[dev]" # Run tests pytest # Run tests with coverage report pytest --cov=yellhorn_mcp --cov-report term-missing

CI/CD

Das Projekt verwendet GitHub Actions für kontinuierliche Integration und Bereitstellung:

  • Testen : Läuft automatisch bei Pull-Anfragen und pusht in den Hauptzweig
    • Fusseln mit Flake8
    • Formatprüfung mit Schwarz
    • Testen mit pytest
  • Veröffentlichen : Veröffentlicht automatisch auf PyPI, wenn ein Versionstag gepusht wird
    • Das Tag muss mit der Version in pyproject.toml übereinstimmen (z. B. v0.2.2).
    • Erfordert ein PyPI-API-Token, das als GitHub-Repository-Geheimnis gespeichert ist (PYPI_API_TOKEN).

So veröffentlichen Sie eine neue Version:

  1. Version in pyproject.toml und yellhorn_mcp/__init__.py aktualisieren
  2. Aktualisieren Sie CHANGELOG.md mit den neuen Änderungen
  3. Änderungen festschreiben: git commit -am "Bump version to XYZ"
  4. Kennzeichnen Sie das Commit: git tag vX.YZ
  5. Änderungen pushen und taggen: git push && git push --tags

Eine Historie der Änderungen finden Sie im Änderungsprotokoll .

Ausführlichere Anweisungen finden Sie im Benutzerhandbuch .

Lizenz

MIT

You must be authenticated.

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

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Ein MCP-Server, der Gemini 2.5 Pro mit Claude Code verbindet und es Benutzern ermöglicht, detaillierte Implementierungspläne basierend auf ihrer Codebasis zu erstellen und Feedback zu Codeänderungen zu erhalten.

  1. Merkmale
    1. Installation
      1. Konfiguration
        1. Verwendung
          1. Erste Schritte
        2. Werkzeuge
          1. Arbeitsplan erstellen
          2. Arbeitsplan abrufen
          3. Richter\_Arbeitsplan
        3. Ressourcenzugriff
          1. Entwicklung
            1. CI/CD
          2. Lizenz

            Related MCP Servers

            • A
              security
              F
              license
              A
              quality
              An MCP server implementation that leverages Google's Gemini API to provide analytical problem-solving capabilities through sequential thinking steps without code generation.
              Last updated -
              1
              14
              JavaScript
            • -
              security
              A
              license
              -
              quality
              The ultimate Gemini API interface for MCP hosts, intelligently selecting models for the task at hand—delivering optimal performance, minimal token cost, and seamless integration.
              Last updated -
              6
              TypeScript
              MIT License
            • -
              security
              -
              license
              -
              quality
              An MCP server implementation that allows using Google's Gemini AI models (specifically Gemini 1.5 Pro) through Claude or other MCP clients via the Model Context Protocol.
              Last updated -
              1
              JavaScript
            • A
              security
              A
              license
              A
              quality
              A dedicated server that wraps Google's Gemini AI models in a Model Context Protocol (MCP) interface, allowing other LLMs and MCP-compatible systems to access Gemini's capabilities like content generation, function calling, chat, and file handling through standardized tools.
              Last updated -
              16
              3
              TypeScript
              MIT License
              • Linux
              • 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/msnidal/yellhorn-mcp'

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