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) 服务器,它将 Gemini 2.5 Pro 的功能公开给 Claude Code,以便在提示符下使用您的整个代码库执行软件开发任务。此模式对于定义代码助手(例如 Claude Code 或其他兼容 MCP 的编码代理)需要完成的工作,以及审查结果以确保其完全符合指定的原始要求非常有用。
特征
- 创建工作计划:根据提示创建详细的实施计划,并考虑到您的整个代码库,将它们发布为 GitHub 问题,并将其作为 MCP 资源公开给您的编码代理
- 审查代码差异:提供一个工具,根据完整的代码库上下文,根据原始工作计划评估 git 差异,并提供详细的反馈,确保实施不会偏离原始要求,并提供有关如何进行更改的指导
- 独立开发环境:创建 Git 工作树和链接分支,以实现简化、独立的开发工作流程(可以与工作计划生成分开进行),从而允许多个代理并行开发
- 无缝 GitHub 集成:在 GitHub UI 中自动创建带有正确分支链接的标记问题,发布带有对原始工作计划问题的引用的评论子问题。
- 上下文控制:使用
.yellhornignore
文件从 AI 上下文中排除特定文件和目录,类似于.gitignore
- MCP 资源:将工作计划公开为标准 MCP 资源,以便于列出和检索
安装
配置
服务器需要以下环境变量:
GEMINI_API_KEY
:您的 Gemini API 密钥(必需)REPO_PATH
:存储库的路径(默认为当前目录)YELLHORN_MCP_MODEL
:要使用的 Gemini 模型(默认为“gemini-2.5-pro-exp-03-25”)
该服务器还需要安装和验证 GitHub CLI( gh
)。
用法
运行服务器
与 Claude Code 集成
使用 Claude Code 时,您可以通过以下方式使用 Yellhorn MCP 工具:
- 启动项目任务:Copy
- 为工作计划创建工作树(可选):Copy
- 导航到创建的工作树目录:Copy
- 如果需要,请查看工作计划:Copy
- 进行更改、创建 PR 并请求审核:Copy
工具
创建工作计划
根据标题和详细描述创建带有详细工作计划的 GitHub 问题。
输入:
title
:GitHub 问题的标题(将用作问题标题和标题)detailed_description
:工作计划的详细描述
输出:
- JSON 字符串包含:
issue_url
:创建的 GitHub 问题的 URLissue_number
:GitHub 问题编号
创建工作树
创建一个带有链接分支的 git 工作树,用于与现有工作计划问题进行隔离开发。
输入:
issue_number
:工作计划的 GitHub 问题编号
输出:
- JSON 字符串包含:
worktree_path
:创建的 Git 工作树目录的路径branch_name
:为工作树创建的分支的名称issue_url
:相关 GitHub 问题的 URL
获取工作计划
检索与工作计划相关的工作计划内容(GitHub 问题正文)。
输入:
issue_number
:工作计划的 GitHub 问题编号。
输出:
- 工作计划问题的内容作为字符串
审查工作计划
触发异步代码审查,将两个 git ref(分支或提交)与 GitHub 问题中描述的工作计划进行比较。运行完成后,将异步创建一个包含该审查的 GitHub 子问题(在后台)。
输入:
issue_number
:工作计划的 GitHub 问题编号。base_ref
:用于比较的基准 Git 引用(提交 SHA、分支名称、标签)。默认为“main”。head_ref
:用于比较的 Head Git 引用(提交 SHA、分支名称、标签)。默认为 'HEAD'。
输出:
- 审核任务已启动的确认消息
资源访问
Yellhorn MCP 还实现了标准 MCP 资源 API,以提供对工作计划的访问:
list-resources
:列出所有工作计划(带有 yellhorn-mcp 标签的 GitHub 问题)get-resource
:按问题编号检索特定工作计划的内容
可以通过标准 MCP CLI 命令访问这些:
发展
持续集成/持续交付
该项目使用 GitHub Actions 进行持续集成和部署:
- 测试:在拉取请求时自动运行并推送到主分支
- 使用 flake8 进行 Linting
- 使用黑色检查格式
- 使用 pytest 进行测试
- 发布:推送版本标签时自动发布到 PyPI
- 标签必须与 pyproject.toml 中的版本匹配(例如,v0.2.2)
- 需要将 PyPI API 令牌存储为 GitHub 存储库机密(PYPI_API_TOKEN)
要发布新版本:
- 更新 pyproject.toml 中的版本
- 提交更改:
git commit -am "Bump version to XYZ"
- 标记提交:
git tag vX.YZ
- 推送更改并标记:
git push && git push --tags
有关更详细的说明,请参阅使用指南。
执照
麻省理工学院
You must be authenticated.
MCP 服务器将 Gemini 2.5 Pro 连接到 Claude Code,使用户能够根据他们的代码库生成详细的实施计划并接收有关代码更改的反馈。