GitHub 支持助手是一个 MCP 服务器,它能助力支持工程师快速查找类似问题,显著加快故障排除的进程,提升工作效率。
本部分将引导你完成 GitHub 支持助手的安装与配置,让你能迅速使用该工具。
在项目根目录下执行以下命令,安装所需依赖:
npm install
将你的 GitHub 个人访问令牌设置为环境变量,替换 your_github_personal_access_token
为实际的令牌:
export GITHUB_TOKEN=your_github_personal_access_token
执行以下命令构建服务器:
npm run build
更新 claude 桌面配置文件,可使用以下命令打开配置文件:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
在配置文件中包含此仓库克隆到的完整路径,示例如下:
{
"mcpServers": {
"find-similar-github-issues": {
"command": "node",
"args": [
"/Users//build/index.js"
]
}
}
}
服务器提供了 find-similar-issues
工具,可用于查找与给定描述类似的 GitHub 问题。示例代码如下:
# 调用 find-similar-issues 工具查找相似问题
# 假设使用 Python 的 subprocess 模块调用命令行工具
import subprocess
owner = "your_owner"
repo = "your_repo"
issueDescription = "your_issue_description"
maxResults = 5
command = f"node /path/to/your/build/index.js find-similar-issues --owner {owner} --repo {repo} --issueDescription '{issueDescription}' --maxResults {maxResults}"
result = subprocess.run(command, shell=True, capture_output=True, text=True)
print(result.stdout)
若需自定义搜索参数,可调整 owner
、repo
、issueDescription
和 maxResults
的值。例如,要增加返回的最大类似问题数量:
import subprocess
owner = "your_owner"
repo = "your_repo"
issueDescription = "your_issue_description"
maxResults = 10 # 增加最大结果数量
command = f"node /path/to/your/build/index.js find-similar-issues --owner {owner} --repo {repo} --issueDescription '{issueDescription}' --maxResults {maxResults}"
result = subprocess.run(command, shell=True, capture_output=True, text=True)
print(result.stdout)
find-similar-issues
工具参数说明参数 | 详情 |
---|---|
owner |
GitHub 仓库所有者或组织名称 |
repo |
GitHub 仓库名称 |
issueDescription |
要查找相似问题的描述 |
maxResults |
要返回的最大类似问题数量(默认:5) |
本实现采用简单的杰卡德相似系数来比较文本。不过在生产环境中,为了获得更精准的匹配效果,建议采用更复杂的 NLP 技术,如词向量模型、深度学习模型等。杰卡德相似系数虽然实现简单,但对于语义理解和复杂文本的处理能力有限,而更高级的 NLP 技术能更好地捕捉文本的语义信息,提高匹配的准确性。