MCP de Yellhorn
Un servidor de Protocolo de Contexto de Modelo (MCP) que expone las capacidades de Gemini 2.5 Pro y OpenAI a Claude Code para tareas de desarrollo de software, utilizando todo el código base en el prompt. Este patrón es muy útil para definir el trabajo que realizarán asistentes de código como Claude Code u otros agentes de codificación compatibles con MCP, y para revisar los resultados y garantizar que cumplan con los requisitos originales especificados.
Características
- Crear planes de trabajo : crea planes de implementación detallados basados en una solicitud y teniendo en cuenta toda su base de código, publicándolos como problemas de GitHub y exponiéndolos como recursos de MCP para su agente de codificación.
- Judge Code Diffs : proporciona una herramienta para evaluar las diferencias de Git contra el plan de trabajo original con el contexto completo de la base de código y brinda comentarios detallados, lo que garantiza que la implementación no se desvíe de los requisitos originales y brinda orientación sobre qué cambiar para hacerlo.
- Integración perfecta con GitHub : crea automáticamente problemas etiquetados y publica subproblemas de juicio con referencias a los problemas del plan de trabajo original.
- Control de contexto : utilice archivos
.yellhornignore
para excluir archivos y directorios específicos del contexto de AI, similar a.gitignore
- Recursos MCP : expone los planes de trabajo como recursos MCP estándar para facilitar su listado y recuperación.
Instalación
Configuración
El servidor requiere las siguientes variables de entorno:
GEMINI_API_KEY
: Su clave API de Gemini (requerida para los modelos de Gemini)OPENAI_API_KEY
: Su clave API de OpenAI (necesaria para los modelos de OpenAI)REPO_PATH
: Ruta a su repositorio (predeterminado al directorio actual)YELLHORN_MCP_MODEL
: Modelo a utilizar (predeterminado: "gemini-2.5-pro-preview-03-25"). Opciones disponibles:- Modelos Gemini: "gemini-2.5-pro-preview-03-25", "gemini-2.5-flash-preview-04-17"
- Modelos OpenAI: "gpt-4o", "gpt-4o-mini", "o4-mini", "o3"
El servidor también requiere que GitHub CLI ( gh
) esté instalado y autenticado.
Uso
Empezando
Configuración de VSCode/Cursor
Para configurar Yellhorn MCP en VSCode o Cursor, cree un archivo .vscode/mcp.json
en la raíz de su espacio de trabajo con el siguiente contenido:
Configuración de Claude Code
Para configurar Yellhorn MCP con Claude Code directamente, agregue un archivo .mcp.json
de nivel raíz en su proyecto con el siguiente contenido:
Herramientas
crear_plan_de_trabajo
Crea un problema de GitHub con un plan de trabajo detallado basado en el título y la descripción detallada.
Aporte :
title
: Título del problema de GitHub (se usará como título y encabezado del problema)detailed_description
: Descripción detallada del plan de trabajocodebase_reasoning
: (opcional) Controla si se realiza la mejora de IA:"full"
: (predeterminado) Utiliza IA para mejorar el plan de trabajo con el contexto de base de código completo"lsp"
: Utilizar IA con un contexto de base de código ligero (firmas de funciones/métodos, atributos de clase y campos de estructura para Python y Go)"none"
: omite la mejora de la IA, usa la descripción proporcionada tal como está
debug
: (opcional) Si se establece entrue
, agrega un comentario al problema con el mensaje completo utilizado para la generación
Producción :
- Cadena JSON que contiene:
issue_url
: URL del problema de GitHub creadoissue_number
: El número de problema de GitHub
obtener_plan_de_trabajo
Recupera el contenido del plan de trabajo (cuerpo del problema de GitHub) asociado con un plan de trabajo.
Aporte :
issue_number
: el número de problema de GitHub para el plan de trabajo.
Producción :
- El contenido del plan de trabajo emitido como una cadena
plan de trabajo del juez
Ejecuta una evaluación de código asíncrona que compara dos referencias de Git (ramas o confirmaciones) con un plan de trabajo descrito en una incidencia de GitHub. Crea una subincidencia de GitHub con la evaluación de forma asíncrona tras su ejecución (en segundo plano).
Aporte :
issue_number
: el número de problema de GitHub para el plan de trabajo.base_ref
: Referencia base de Git (SHA de confirmación, nombre de la rama, etiqueta) para comparación. El valor predeterminado es 'main'.head_ref
: Referencia principal de Git (SHA de confirmación, nombre de la rama, etiqueta) para comparación. El valor predeterminado es 'HEAD'.codebase_reasoning
: (opcional) Controla qué contexto de base de código se proporciona:"full"
: (predeterminado) Utilizar el contexto de código base completo"lsp"
: utiliza un contexto de base de código más ligero (solo firmas de funciones para Python y Go, además de archivos de diferencias completos)"none"
: omite por completo el contexto del código base para un procesamiento más rápido
debug
: (opcional) Si se establece entrue
, agrega un comentario al subproblema con el mensaje completo utilizado para la generación
Producción :
- Un mensaje de confirmación de que se ha iniciado la tarea de juicio
Acceso a recursos
Yellhorn MCP también implementa la API de recursos estándar de MCP para proporcionar acceso a los planes de trabajo:
list-resources
: enumera todos los planes de trabajo (problemas de GitHub con la etiqueta yellhorn-mcp)get-resource
: recupera el contenido de un plan de trabajo específico por número de problema
Se puede acceder a ellos a través de los comandos CLI estándar de MCP:
Desarrollo
CI/CD
El proyecto utiliza GitHub Actions para la integración y la implementación continuas:
- Prueba : se ejecuta automáticamente en solicitudes de extracción y se envía a la rama principal
- Pelusa con escamas8
- Comprobación de formato con negro
- Pruebas con pytest
- Publicación : se publica automáticamente en PyPI cuando se envía una etiqueta de versión
- La etiqueta debe coincidir con la versión en pyproject.toml (por ejemplo, v0.2.2)
- Requiere un token de API de PyPI almacenado como un secreto del repositorio de GitHub (PYPI_API_TOKEN)
Para lanzar una nueva versión:
- Actualizar la versión en pyproject.toml y yellhorn_mcp/__init__.py
- Actualizar CHANGELOG.md con los nuevos cambios
- Confirmar cambios:
git commit -am "Bump version to XYZ"
- Etiqueta la confirmación:
git tag vX.YZ
- Enviar cambios y etiquetar:
git push && git push --tags
Para ver el historial de cambios, consulte el Registro de cambios .
Para obtener instrucciones más detalladas, consulte la Guía de uso .
Licencia
Instituto Tecnológico de Massachusetts (MIT)
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Un servidor MCP que conecta Gemini 2.5 Pro con Claude Code, lo que permite a los usuarios generar planes de implementación detallados basados en su base de código y recibir comentarios sobre los cambios en el código.
Related MCP Servers
- -securityAlicense-qualityModel Context Protocol (MCP) server implementation that enables Claude Desktop to interact with Google's Gemini AI models.Last updated -53TypeScriptMIT License
- -securityAlicense-qualityAn MCP server that implements Claude Code-like functionality, allowing the AI to analyze codebases, modify files, execute commands, and manage projects through direct file system interactions.Last updated -173PythonMIT License
- -security-license-qualityAn 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 -1JavaScript
- -securityAlicense-qualityAn MCP server that enables other AI models (like Claude) to use Google's Gemini models as tools for specific tasks through a standardized interface.Last updated -1TypeScriptMIT License