GitHub提交MCP工具
一个简单的工具,让本地LLM通过MCP服务器调用GitHub API,并返回存储库的最后N个提交。您的令牌将保留在服务器进程中。模型从未见过它。
这有什么作用
- 露出一个MCP工具:
list_commits(owner, repo, per_page=5) - 呼叫
GET /repos/{owner}/{repo}/commits并返回紧凑的JSON - 可与任何支持MCP的客户端和任何本地Olama型号一起运行
运作原理
- 您使用模型启动MCP客户端。
- 客户端生成
server.py超过stdio。 - 模型调用
list_commit带args。 - 服务器访问GitHub的REST API并返回JSON。
项目结构
.
├─ server.py # MCP server with list_commits tool
├─ pyproject.toml # deps: mcp, requests, python-dotenv
├─ .env # GITHUB_TOKEN=...
└─ README.md先决条件
- Python 3.10+
- Ollama与当地模特
- github个人访问令牌
.env
设置
# From the repo root
python3 -m venv .venv
source .venv/bin/activate
pip install -U pip
pip install -e . # uses pyproject.toml
# Pull a local model for Ollama (choose one you like)
ollama pull qwen2.5快速健全性测试(可选):
python server.py跑
启动MCP客户端并将其指向服务器脚本:
source .venv/bin/activate
ollmcp --model qwen2.5 --mcp-server "${pwd}/server.py"提问模式示例:
List the last 5 commit for owner=username repo=repo-name