Github MCP 服务器
Github 的模型上下文协议服务器。
通过 MCP 提供与 Github 的集成,允许 LLM 与其进行交互。
安装
手动安装
为您的 Github 帐户创建或获取访问令牌: 指南
将服务器配置添加到 Claude Desktop:
MacOS:〜/资源库/应用程序支持/Claude/claude_desktop_config.json
Windows:查看本指南
Related MCP server: GitHub MCP Server
成分
工具
search_repositories:在 GitHub 中搜索存储库。必需输入:
query(字符串):用于搜索存储库的查询。page(数字,默认值:30,最大值:100):分页的页码。per_page(数字,默认值:30,最大值:100):每页的结果数。
search_issues:从存储库中搜索问题。必需输入:
query(字符串):用于搜索存储库的查询。page(数字,默认值:1):分页的页码。per_page(数字,默认值:30,最大值:100):每页的结果数。order(可选字符串,默认值:desc):排序顺序(asc或desc)。sort(可选字符串,默认值:best match):排序字段(可以是以下之一:comments、reactions、reactions-+1、reactions--1、reactions-smile、reactions-thinking_face、reactions-heart、reactions-tada、interactions、created或updated)。
search_commits:从存储库中搜索提交。必需输入:
query(字符串):用于搜索存储库的查询。page(数字,默认值:1):分页的页码。per_page(数字,默认值:30,最大值:100):每页的结果数。order(可选字符串,默认值:desc):排序顺序(asc或desc)。sort(可选字符串,默认值:best match):排序字段(可以是以下之一:committer-date或author-date)。
search_code:从存储库中搜索代码。必需输入:
query(字符串):用于搜索存储库的查询。page(数字,默认值:1):分页的页码。per_page(数字,默认值:30,最大值:100):每页的结果数。
search_users:从存储库中搜索用户。必需输入:
query(字符串):用于搜索存储库的查询。page(数字,默认值:1):分页的页码。per_page(数字,默认值:30,最大值:100):每页的结果数。order(可选字符串,默认值:desc):排序顺序(asc或desc)。sort(可选字符串,默认值:best match):排序字段(可以是以下之一:followers、repositories或joined)。
search_topics:搜索主题。必需输入:
query(字符串):用于搜索存储库的查询。page(数字,默认值:1):分页的页码。per_page(数字,默认值:30,最大值:100):每页的结果数。
search_labels:搜索存储库中的标签。必需输入:
query(字符串):用于搜索存储库的查询。page(数字,默认值:1):分页的页码。per_page(数字,默认值:30,最大值:100):每页的结果数。order(可选字符串,默认值:desc):排序顺序(asc或desc)。sort(可选字符串,默认值:best match):排序字段(可以是以下之一:created或updated)。
list_repositories_issues:列出存储库中的问题。必需输入:
owner(字符串):存储库的所有者。repo(字符串):存储库名称。page(可选数字,默认值:1):分页的页码。per_page(可选数,默认值:30,最大值:100):每页的结果数。direction(可选字符串,默认值:desc):排序方向(asc或desc)。sort(可选字符串,默认值:created):排序字段(可以是以下之一:created,comments或updated)。since(可选字符串):结果最后更新于给定时间之后(ISO 8601 格式:YYYY-MM-DDTHH:MM:SSZ)。labels(可选字符串):以逗号分隔的标签名称。例如:bug、ui、@high。milestone(可选字符串):里程碑编号。assignee(可选字符串):受让人用户的姓名(所有用户均为*)。creator(可选字符串):创建问题的用户。(*代表全部)。mentioned(可选字符串):问题中提到的用户。
get_issue:从存储库中获取问题。必需输入:
owner(字符串):存储库的所有者。repo(字符串):存储库名称。issue_number(数字):问题编号。
list_repositories_pull_requests:列出来自存储库的拉取请求。
必需输入:
owner(字符串):存储库的所有者。repo(字符串):存储库名称。page(可选数字,默认值:1):分页的页码。per_page(可选数,默认值:30,最大值:100):每页的结果数。direction(可选字符串,默认值:desc):排序方向(asc或desc)。sort(可选字符串,默认值:created):排序字段(可以是以下之一:created,popularity,long-running或updated)。head(可选字符串):按首席用户或首席组织和分支名称过滤拉取,格式为用户:ref-name 或组织:ref-name(例如:github:new-script-format 或 octocat:test-branch)。base(可选字符串):按基础分支名称过滤拉取。(例如:gh-pages)。
get_pull_request:从存储库获取拉取请求。
必需输入:
owner(字符串):存储库的所有者。repo(字符串):存储库名称。pull_request_number(数字):拉取请求编号。
使用示例
您可以使用以下示例提示与 Github 进行交互:
“modelcontextprotocol”→执行
search_repositories工具来查找提到modelcontextprotocol的存储库。“modelcontextprotocol servers repo 上的 739 问题是什么”→执行
get_issue工具从 modelcontextprotocol servers repo 中查找 739 问题。“modelcontextprotocol servers repo 上的 717 PR 是什么”→执行
get_pull_request工具从 modelcontextprotocol servers repo 中查找 717 PR。
发展
安装依赖项:
在
.env中配置 Github 访问令牌:
使用 watch 在本地运行:
构建服务器:
使用检查器进行本地调试: