GitHub MCP代理
一个多代理AI助手,回答有关GitHub存储库的自然语言问题-- 列出repos,按主题搜索,并使用LLM总结README。
建筑
CLI → Coordinator → [Repo Lister | Summarizer | Topic Search]
↓
MCP Client → GitHub REST API
Summarizer → Groq (Llama 3)运作原理
- 协调员 接收用户输入,计划调用哪个代理,并链接结果
- Repo Lister 提取GitHub用户名并获取其公共存储库
- 主题搜索 将自然语言规范化为GitHub搜索查询
- 总结器 通过MCP获取回购的README,并使用Groq LLM对其进行总结
- MCP客户端 通过共享子流程协议将代理连接到GitHub REST API
技术栈
Python·FastAPI·LangChain·Groq API(Llama 3.1)·MCP(模型上下文协议)·FAISS
查询示例
list the repos for torvalds
find best repos for langchain
summarize the repo https://github.com/Hannibal046/Awesome-LLM设置
pip install -r requirements.txtGITHUB_TOKEN=your_github_pat
GROQ_API_KEY=your_groq_keypython main.py关键设计决策
- MCP子流程模型 --每个代理生成
server.py作为一个独立的工具服务器,保持GitHub逻辑与代理逻辑的解耦 - 确定性短路 --协调器绕过LLM规划以实现明确的意图(例如直接汇总URL),从而减少延迟
- README截断 --可配置
MAX_README_CHARS防止大型存储库上的Groq TPM/令牌大小故障 - 正则表达式首次提取 --用户名和存储库解析在回退到LLM之前使用正则表达式,保持低成本和低延迟
