Token导航 LogoToken导航TokenDH.com
Tevinric MCP logo
开发工具stdio官方级别未说明来源级核验

Tevinric MCP

MCP Server

GitHub MCP 服务器将 AI 工具直接连接到 GitHub 平台,使 AI 代理、助手和聊天机器人能够读取存储库和代码文件、管理问题和 PR、分析代码并自动化工作流程。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
GitHub代码分析GoVS Code工作流管理Claude DesktopClaudeCursorWindsurfVS CodeVS Code Insiders

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

tevinric

提供方

tevinric

最后核验

2026/5/17 20:21

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -i --rm \

详细介绍

GitHub MCP服务器

GitHub MCP服务器将AI工具直接连接到GitHub平台。这使AI代理、助手和聊天机器人能够读取存储库和代码文件,管理问题和PR,分析代码,并自动化工作流程。通过自然语言的互动。

用例

  • 存储库管理:浏览和查询代码、搜索文件、分析提交,并了解您有权访问的任何存储库中的项目结构。
  • 问题和公关自动化:创建、更新和管理问题和拉取请求。让人工智能帮助分类错误、审查代码更改和维护项目板。
  • CI/CD和工作流智能:监控GitHub Actions工作流运行,分析构建失败,管理发布,并深入了解您的开发流程。
  • 代码分析:检查安全发现,查看Dependabot警报,了解代码模式,并全面了解您的代码库。
  • 团队协作:访问讨论、管理通知、分析团队活动并简化团队流程。

专为希望将人工智能工具连接到GitHub上下文和功能的开发人员而设计,从简单的自然语言查询到复杂的多步骤代理工作流。

______________________________________________________________________

远程GitHub MCP服务器

远程GitHub MCP服务器由GitHub托管,提供了最简单的启动和运行方法。如果您的MCP主机不支持远程MCP服务器,请不要担心!您可以使用 相反。

先决条件

  1. 支持远程服务器的兼容MCP主机(VS Code 1.101+、Claude Desktop、Cursor、Windsurf等)
  2. 任何适用的 已启用策略

在VS代码中安装

为了快速安装,请使用上面的一键安装按钮之一。完成该流程后,切换代理模式(位于副驾驶聊天文本输入处),服务器将启动。确保您正在使用 VS代码1.101稍后 用于远程MCP和OAuth支持。

或者,要手动配置VS Code,请从以下示例中选择适当的JSON块并将其添加到您的主机配置中:

Using OAuthUsing a GitHub PAT VS Code (version 1.101 or greater)

{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/"
    }
  }
}
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer ${input:github_mcp_pat}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "github_mcp_pat",
      "description": "GitHub Personal Access Token",
      "password": true
    }
  ]
}

在其他MCP主机中安装

  • **** -使用GitHub Copilot安装JetBrains、Visual Studio、Eclipse和Xcode
  • Claude应用程序 -Claude Web、Claude Desktop和Claude Code CLI的安装指南
  • 光标 -Cursor IDE安装指南
  • 帆板运动 -Windsurf IDE安装指南
注: 每个MCP主机应用程序都需要配置一个GitHub应用程序或OAuth应用程序,以支持通过OAuth进行远程访问。任何支持远程MCP服务器的主机应用程序都应该支持具有PAT身份验证的远程GitHub服务器。配置细节和支持级别因主机而异。请确保参考主机应用程序的文档以获取更多信息。

配置

工具集配置

远程服务器文档 有关远程服务器配置、工具集、标头和高级用法的完整详细信息。此文件提供了在VS Code和其他MCP主机中连接、自定义和安装远程GitHub MCP服务器的全面说明和示例。

当没有指定工具集时, 默认工具集 使用。

具有数据驻留功能的企业云(ghe.com)

GitHub Enterprise Cloud也可以使用远程服务器。

示例 https://octocorp.ghe.com:

{
    ...
    "proxima-github": {
      "type": "http",
      "url": "https://copilot-api.octocorp.ghe.com/mcp",
      "headers": {
        "Authorization": "Bearer ${input:github_mcp_pat}"
      }
    },
    ...
}

GitHub Enterprise Server不支持远程服务器托管。请参考 从本地服务器配置。

______________________________________________________________________

本地GitHub MCP服务器

](https://insiders.vscode.dev/redirect/mcp/install?name=github&inputs=%5B%7B%22id%22%3A%22github_token%22%2C%22type%22%3A%22promptString%22%2C%22description%22%3A%22GitHub%20Personal%20Access%20Token%22%2C%22password%22%3Atrue%7D%5D&config=%7B%22command%22%3A%22docker%22%2C%22args%22%3A%5B%22run%22%2C%22-i%22%2C%22--rm%22%2C%22-e%22%2C%22GITHUB_PERSONAL_ACCESS_TOKEN%22%2C%22ghcr.io%2Fgithub%2Fgithub-mcp-server%22%5D%2C%22env%22%3A%7B%22GITHUB_PERSONAL_ACCESS_TOKEN%22%3A%22%24%7Binput%3Agithub_token%7D%22%7D%7D) ](https://insiders.vscode.dev/redirect/mcp/install?name=github&inputs=%5B%7B%22id%22%3A%22github_token%22%2C%22type%22%3A%22promptString%22%2C%22description%22%3A%22GitHub%20Personal%20Access%20Token%22%2C%22password%22%3Atrue%7D%5D&config=%7B%22command%22%3A%22docker%22%2C%22args%22%3A%5B%22run%22%2C%22-i%22%2C%22--rm%22%2C%22-e%22%2C%22GITHUB_PERSONAL_ACCESS_TOKEN%22%2C%22ghcr.io%2Fgithub%2Fgithub-mcp-server%22%5D%2C%22env%22%3A%7B%22GITHUB_PERSONAL_ACCESS_TOKEN%22%3A%22%24%7Binput%3Agithub_token%7D%22%7D%7D&quality=insiders)

先决条件

  1. 要在容器中运行服务器,您需要 码头工人 安装。
  2. 安装Docker后,您还需要确保Docker正在运行。形象是公开的;如果你在pull时出错,你可能有一个过期的令牌,需要 docker logout ghcr.io.
  3. 最后,你需要 .

MCP服务器可以使用许多GitHub API,因此请启用您认为授予AI工具的权限(要了解有关访问令牌的更多信息,请查看 文档).

Handling PATs Securely

环境变量(推荐)

为了确保您的GitHub PAT在不同MCP主机上的安全性和可重用性:

  1. 将PAT存储在环境变量中
   export GITHUB_PAT=your_token_here

或者创建一个 .env 文件:

   GITHUB_PAT=your_token_here
  1. 保护您的 .env 文件
   # Add to .gitignore to prevent accidental commits
   echo ".env" >> .gitignore
  1. 在配置中引用令牌
   # CLI usage
   claude mcp update github -e GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PAT

   # In config files (where supported)
   "env": {
     "GITHUB_PERSONAL_ACCESS_TOKEN": "$GITHUB_PAT"
   }
备注:环境变量支持因主机应用程序和IDE而异。一些应用程序(如Windsurf)需要在配置文件中硬编码令牌。

令牌安全最佳实践

  • 最小范围:仅授予必要的权限

- repo -存储库操作 - read:packages -Docker镜像访问 - read:org -组织团队访问权限

  • 单独的令牌:针对不同的项目/环境使用不同的PAT
  • 定期轮换:定期更新令牌
  • 永不承诺:使令牌不受版本控制
  • 文件权限:限制对包含令牌的配置文件的访问
  chmod 600 ~/.your-app/config.json

GitHub企业服务器和企业云与数据驻留(ghe.com)

国旗 --gh-host 以及环境变量 GITHUB_HOST 可用于设置 具有数据驻留的GitHub Enterprise Server或GitHub Enterprise Cloud的主机名。

  • 对于GitHub Enterprise Server,在主机名前加上 https:// URI方案,否则默认为 http://,GitHub Enterprise Server不支持。
  • 对于具有数据驻留的GitHub Enterprise Cloud,请使用 https://YOURSUBDOMAIN.ghe.com 作为主机名。
"github": {
    "command": "docker",
    "args": [
    "run",
    "-i",
    "--rm",
    "-e",
    "GITHUB_PERSONAL_ACCESS_TOKEN",
    "-e",
    "GITHUB_HOST",
    "ghcr.io/github/github-mcp-server"
    ],
    "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}",
        "GITHUB_HOST": "https://"
    }
}

安装

在GitHub上安装VS代码副本

为了快速安装,请使用上面的一键安装按钮之一。完成该流程后,切换代理模式(位于副驾驶聊天文本输入处),服务器将启动。

更多关于在VS Code中使用MCP服务器工具的信息 代理模式文档.

在其他IDE(JetBrains、Visual Studio、Eclipse等)上的GitHub Copilot中安装

将以下JSON块添加到IDE的MCP设置中。

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "github_token",
        "description": "GitHub Personal Access Token",
        "password": true
      }
    ],
    "servers": {
      "github": {
        "command": "docker",
        "args": [
          "run",
          "-i",
          "--rm",
          "-e",
          "GITHUB_PERSONAL_ACCESS_TOKEN",
          "ghcr.io/github/github-mcp-server"
        ],
        "env": {
          "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
        }
      }
    }
  }
}

您可以选择将类似的示例(即不带mcp键)添加到名为的文件中 .vscode/mcp.json 在您的工作空间中。这将允许您与接受相同格式的其他主机应用程序共享配置。

Example JSON block without the MCP key included

{
  "inputs": [
    {
      "type": "promptString",
      "id": "github_token",
      "description": "GitHub Personal Access Token",
      "password": true
    }
  ],
  "servers": {
    "github": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
      }
    }
  }
}

在其他MCP主机中安装

对于其他MCP主机应用程序,请参阅我们的安装指南:

有关所有安装选项的完整概述,请参阅我们的 安装指南索引.

注: 任何支持本地MCP服务器的主机应用程序都应该能够访问本地GitHub MCP服务器。但是,集成的具体配置过程、语法和稳定性将因主机应用程序而异。虽然许多人可能遵循与上述示例类似的格式,但这并不能保证。请参阅主机应用程序的文档,了解正确的MCP配置语法和设置过程。

从源代码构建

如果你没有Docker,你可以使用 go buildcmd/github-mcp-server 目录,并使用 github-mcp-server stdio 命令与 GITHUB_PERSONAL_ACCESS_TOKEN 将环境变量设置为您的令牌。要指定生成的输出位置,请使用 -o 旗帜。您应该将服务器配置为使用构建的可执行文件作为其 command例如:

{
  "mcp": {
    "servers": {
      "github": {
        "command": "/path/to/github-mcp-server",
        "args": ["stdio"],
        "env": {
          "GITHUB_PERSONAL_ACCESS_TOKEN": ""
        }
      }
    }
  }
}

工具配置

GitHub MCP Server支持通过以下方式启用或禁用特定功能组 --toolsets 旗帜。这允许您控制哪些GitHub API功能可用于您的人工智能工具。仅启用所需的工具集可以帮助LLM进行工具选择并减少上下文大小。

_工具集不限于工具。在适用的情况下,还包括相关的MCP资源和提示。_

当没有指定工具集时, 默认工具集 使用。

指定工具集

要指定LLM可用的工具集,可以通过两种方式传递允许列表:

  1. 使用命令行参数:
   github-mcp-server --toolsets repos,issues,pull_requests,actions,code_security
  1. 使用环境变量:
   GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security" ./github-mcp-server

环境变量 GITHUB_TOOLSETS 如果两者都提供,则优先于命令行参数。

在Docker中使用工具集

使用Docker时,可以将工具集作为环境变量传递:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN= \
  -e GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security,experiments" \
  ghcr.io/github/github-mcp-server

专用工具集

“全部”工具集

特殊工具集 all 可以提供以启用所有可用的工具集,而不管任何其他配置如何:

./github-mcp-server --toolsets all

或者使用环境变量:

GITHUB_TOOLSETS="all" ./github-mcp-server

“默认”工具集

默认工具集 default 如果没有指定工具集,则是传递给服务器的配置。

默认配置为:

  • 上下文
  • 回购协议
  • 问题
  • pull_requests
  • 用户

要保留默认配置并添加其他工具集,请执行以下操作:

GITHUB_TOOLSETS="default,stargazers" ./github-mcp-server

可用工具集

以下工具可用:

工具集说明
context强烈推荐:提供当前用户上下文和您正在操作的GitHub上下文的工具
actionsGitHub操作工作流和CI/CD操作
code_security代码安全相关工具,如GitHub代码扫描
dependabotDependabot工具
discussionsGitHub讨论相关工具
experiments尚不稳定的实验特征
gistsGitHub Gist相关工具
issuesGitHub问题相关工具
labelsGitHub标签相关工具
notificationsGitHub通知相关工具
orgsGitHub组织相关工具
projectsGitHub项目相关工具
pull_requestsGitHub Pull Request相关工具
reposGitHub仓库相关工具
secret_protection与秘密保护相关的工具,如GitHub秘密扫描
security_advisories安全咨询相关工具
stargazersGitHub Stargazers相关工具
usersGitHub用户相关工具

远程Github MCP服务器中的其他工具集

工具集说明
copilot副驾驶相关工具(例如副驾驶编码代理)
copilot_spaces副驾驶空间相关工具
github_support_docs_search搜索文档以回答GitHub产品和支持问题

工具

Actions

  • cancel_workflow_run -取消工作流运行

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • delete_workflow_run_logs -删除工作流日志

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • download_workflow_run_artifact -下载工作流工件

- artifact_id:工件的唯一标识符(编号,必填) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • get_job_logs -获取作业日志

- failed_only:如果为true,则获取run_id中所有失败作业的日志(布尔值,可选) - job_id:工作流作业的唯一标识符(单个作业日志需要)(编号,可选) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - return_content:返回实际日志内容而不是URL(布尔值,可选) - run_id:工作流运行ID(仅使用failed_only时需要)(数字,可选) - tail_lines:从日志末尾返回的行数(数字,可选)

  • get_workflow_run -运行工作流

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • get_workflow_run_logs -获取工作流运行日志

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • get_workflow_run_usage -获取工作流使用情况

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • list_workflow_jobs -列出工作流作业

- filter:按作业的completed_at时间戳筛选作业(字符串,可选) - owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • list_workflow_run_artifacts -列出工作流工件

- owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • list_workflow_run -列表工作流运行

- actor:返回某人的工作流运行。使用创建工作流运行的用户的登录名。(字符串,可选) - branch:返回与分支关联的工作流运行。使用分支的名称。(字符串,可选) - event:返回特定事件类型的工作流运行(字符串,可选) - owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填) - status:返回带有检查运行状态的工作流运行(字符串,可选) - workflow_id:工作流ID或工作流文件名(字符串,必填)

  • list_workflows -列出工作流

- owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填)

  • 重新运行失败的作业 -重新运行失败的作业

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • 重新运行工作流运行 -重新运行工作流运行

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - run_id:工作流运行的唯一标识符(数字,必填)

  • 运行工作流 -运行工作流

- inputs:工作流接受的输入(对象,可选) - owner:存储库所有者(字符串,必填) - ref:工作流的git参考。引用可以是分支或标记名称。(字符串,必填) - repo:存储库名称(字符串,必填) - workflow_id:工作流ID(数字)或工作流文件名(例如main.yml、ci.yaml)(字符串,必填)

Code Security

  • get_code_scanning_alert -获取代码扫描警报

- alertNumber:警报的编号。(数字,必填) - owner:存储库的所有者。(字符串,必填) - repo:存储库的名称。(字符串,必填)

  • list_code_scanning_alerts -列出代码扫描警报

- owner:存储库的所有者。(字符串,必填) - ref:要列出的结果的Git引用。(字符串,可选) - repo:存储库的名称。(字符串,必填) - severity:按严重性筛选代码扫描警报(字符串,可选) - state:按州筛选代码扫描警报。默认打开(字符串,可选) - tool_name:用于代码扫描的工具的名称。(字符串,可选)

Context

  • get_me -获取我的用户资料

- 无需参数

  • get_team_members -获取团队成员

- org:包含团队的组织登录名(所有者)。(字符串,必填) - team_slug:团队蛞蝓(字符串,必填)

  • get_teams -组建团队

- user:用于获取团队的用户名。如果没有提供,则使用经过身份验证的用户。(字符串,可选)

Dependabot

  • get_dependabot_alert -获取可靠性警报

- alertNumber:警报的编号。(数字,必填) - owner:存储库的所有者。(字符串,必填) - repo:存储库的名称。(字符串,必填)

  • list_dependabot_alerts -列出可靠性警报

- owner:存储库的所有者。(字符串,必填) - repo:存储库的名称。(字符串,必填) - severity:按严重性过滤可靠性警报(字符串,可选) - state:按州过滤可靠性警报。默认打开(字符串,可选)

Discussions

  • get_discussion -获取讨论

- discussionNumber:讨论编号(数字,必填) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • get_discussion_comments -获取讨论评论

- after:分页光标。使用上一页PageInfo中的endCursor用于GraphQL API。(字符串,可选) - discussionNumber:讨论编号(数字,必填) - owner:存储库所有者(字符串,必填) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填)

  • 列表_讨论_类别 -列出讨论类别

- owner:存储库所有者(字符串,必填) - repo:存储库名称。如果没有提供,将在组织级别查询讨论类别。(字符串,可选)

  • list_讨论 -列出讨论

- after:分页光标。使用上一页PageInfo中的endCursor用于GraphQL API。(字符串,可选) - category:可选的按讨论类别ID筛选。如果提供,则仅列出具有此类别的讨论。(字符串,可选) - direction:订单方向。(字符串,可选) - orderBy:按字段排序讨论。如果提供,还需要提供“方向”。(字符串,可选) - owner:存储库所有者(字符串,必填) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称。如果没有提供,将在组织层面进行讨论。(字符串,可选)

Gists

  • 创建列表 -创建Gist

- content:用于创建简单单文件要点的内容(字符串,必填) - description:要点描述(字符串,可选) - filename:用于创建简单单文件要点的文件名(字符串,必填) - public:要点是否公开(布尔值,可选)

  • 列表列表 -列出Gists

- page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - since:仅在此时间之后更新注册表(ISO 8601时间戳)(字符串,可选) - username:GitHub用户名(对于经过身份验证的用户的注册表省略)(字符串,可选)

  • update_gist -更新Gist

- content:文件内容(字符串,必填) - description:更新了要点描述(字符串,可选) - filename:要更新或创建的文件名(字符串,必填) - gist_id:要更新的要点的ID(字符串,必填)

Issues

  • add_issue_comment -向问题添加评论

- body:评论内容(字符串,必填) - issue_number:要评论的问题编号(编号,必填) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • assign_copilot_to_oissue -分配副本以发布

- issueNumber:问题编号(编号,必填) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • get_label -从存储库中获取特定标签。

- name:标签名称。(字符串,必填) - owner:存储库所有者(用户名或组织名称)(字符串,必填) - repo:存储库名称(字符串,必填)

  • issue_read -获取问题详细信息

- issue_number:问题编号(数字,必填) - method:对单个问题执行的读取操作。 选项包括:

  1. get-获取特定问题的详细信息。
  2. get_comments-获取问题注释。
  3. get_sub_issues-获取问题的子问题。
  4. get_labels-获取分配给问题的标签。

(字符串,必填)

  • owner:存储库的所有者(字符串,必填)
  • page:分页页码(最少1页)(数字,可选)
  • perPage:分页每页结果(最少1个,最多100个)(数量,可选)
  • repo:存储库的名称(字符串,必填)
  • issue_write -创建或更新问题。

- assignees:要分配给此问题的用户名(string\[\],可选) - body:发布正文内容(字符串,可选) - duplicate_of:此问题重复的问题编号。仅在state_reason为“重复”时使用。(数字,可选) - issue_number:要更新的问题编号(编号,可选) - labels:应用于此问题的标签(string\[\],可选) - method:对单个问题执行写入操作。 选项包括:

  • “创建”-创建新问题。
  • 'update'-更新现有问题。

(字符串,必填)

- milestone:里程碑编号(编号,可选) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - state:新状态(字符串,可选) - state_reason:状态更改的原因。除非状态改变,否则忽略。(字符串,可选) - title:问题标题(字符串,可选) - type:此问题的类型。仅在存储库配置了问题类型时使用。使用list_issue_types工具获取组织的有效类型值。如果存储库不支持问题类型,请省略此参数。(字符串,可选)

  • list_issue_types -列出可用的问题类型

- owner:存储库的组织所有者(字符串,必填)

  • list_issues -列出问题

- after:分页光标。使用上一页PageInfo中的endCursor用于GraphQL API。(字符串,可选) - direction:订单方向。如果提供,还需要提供“orderBy”。(字符串,可选) - labels:按标签筛选(string\[\],可选) - orderBy:按字段排序问题。如果提供,还需要提供“方向”。(字符串,可选) - owner:存储库所有者(字符串,必填) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填) - since:按日期筛选(ISO 8601时间戳)(字符串,可选) - state:按状态筛选,默认情况下,未提供时将返回打开和关闭的问题(字符串,可选)

  • 搜索问题 -搜索问题

- order:排序顺序(字符串,可选) - owner:可选存储库所有者。如果提供了repo,则只列出此存储库的问题。(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - query:使用GitHub的搜索查询问题搜索语法(字符串,必填) - repo:可选存储库名称。如果与所有者一起提供,则只列出此存储库的问题。(字符串,可选) - sort:按类别匹配数对字段进行排序,默认为最佳匹配(字符串,可选)

  • 子问题写入 -更改子问题

- after_id:要优先处理的子问题的ID(应指定after_ID或before_ID)(数字,可选) - before_id:要优先处理的子问题的ID(应指定after_ID或before_ID)(数字,可选) - issue_number:父问题的编号(编号,必填) - method:对单个子问题执行的操作 选项包括:

  • “add”-将子问题添加到GitHub存储库中的父问题中。
  • “remove”-从GitHub存储库中的父问题中删除子问题。
  • “重新确定优先级”-更改GitHub存储库中父问题内子问题的顺序。使用“after_id”或“before_id”指定新位置。

(字符串,必填)

- owner:存储库所有者(字符串,必填) - replace_parent:如果为true,则替换子问题的当前父问题。仅与“add”方法一起使用。(布尔值,可选) - repo:存储库名称(字符串,必填) - sub_issue_id:要添加的子问题的ID。ID与问题编号不同(编号,必填)

Labels

  • get_label -从存储库中获取特定标签。

- name:标签名称。(字符串,必填) - owner:存储库所有者(用户名或组织名称)(字符串,必填) - repo:存储库名称(字符串,必填)

  • label_write -在存储库标签上写入操作。

- color:将颜色标记为6个字符的十六进制代码,不带“#”前缀(例如“f29513”)。“create”是必需的,“update”是可选的。(字符串,可选) - description:标签描述文本。可选“创建”和“更新”。(字符串,可选) - method:要执行的操作:“创建”、“更新”或“删除”(字符串,必填) - name:标签名称-所有操作都需要(字符串,必填) - new_name:标签的新名称(仅与“update”方法一起使用以重命名)(字符串,可选) - owner:存储库所有者(用户名或组织名称)(字符串,必填) - repo:存储库名称(字符串,必填)

  • list_label -列出存储库中的标签

- owner:存储库所有者(用户名或组织名称)-所有操作都需要(字符串,必填) - repo:存储库名称-所有操作都需要(字符串,必填)

Notifications

  • 解雇通知 -解雇通知

- state:通知的新状态(已读/已完成)(字符串,可选) - threadID:通知线程的ID(字符串,必填)

  • 获取通知_详细信息 -获取通知详细信息

- notificationID:通知的ID(字符串,必填)

  • list_通知 -列出通知

- before:仅显示在给定时间之前更新的通知(ISO 8601格式)(字符串,可选) - filter:将通知筛选到,除非指定,否则使用默认值。读取通知是用户已经确认的通知。参与通知是指用户直接参与的通知,例如他们评论或创建的问题或拉取请求。(字符串,可选) - owner:可选存储库所有者。如果提供了repo,则只列出此存储库的通知。(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:可选存储库名称。如果与所有者一起提供,则只列出此存储库的通知。(字符串,可选) - since:仅显示给定时间后更新的通知(ISO 8601格式)(字符串,可选)

  • 管理通知订阅 -管理通知订阅

- action:要执行的操作:忽略、监视或删除通知订阅。(字符串,必填) - notificationID:通知线程的ID。(字符串,必填)

  • 管理_职位_通知_订阅 -管理存储库通知订阅

- action:要执行的操作:忽略、监视或删除存储库通知订阅。(字符串,必填) - owner:存储库的帐户所有者。(字符串,必填) - repo:存储库的名称。(字符串,必填)

  • mark_all_通知_阅读 -将所有通知标记为已读

- lastReadAt:描述检查通知的最后一点(可选)。默认值:Now(字符串,可选) - owner:可选存储库所有者。如果提供了repo,则只有此存储库的通知被标记为已读。(字符串,可选) - repo:可选存储库名称。如果与所有者一起提供,则只有此存储库的通知标记为已读。(字符串,可选)

Organizations

  • search_orgs -搜索组织

- order:排序顺序(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - query:组织搜索查询。示例:“microsoft”、“location:california”、“created:>=2025-01-01”。搜索范围会自动限定为类型:org。(字符串,必填) - sort:按类别对字段进行排序(字符串,可选)

Projects

  • add_project_item -添加项目项

- item_id:要添加到项目中的问题或拉取请求的数字ID。(数字,必填) - item_type:项目的类型,issue或pull_request。(字符串,必填) - owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - project_number:项目编号。(数字,必填)

  • 删除项目 -删除项目项

- item_id:要从项目中删除的内部项目项ID(不是问题或拉取请求ID)。(数字,必填) - owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - project_number:项目编号。(数字,必填)

  • get_工程 -获取项目

- owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - project_number:项目编号(数字,必填)

  • get_project_field -获取项目字段

- field_id:字段的id。(数字,必填) - owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - project_number:项目编号。(数字,必填)

  • 获取项目 -获取项目项

- fields:响应中包含的字段ID的具体列表(例如\[“102589”、“985201”、“169875”\])。如果未提供,则仅包括标题字段。(string\[\],可选) - item_id:项目的ID。(数字,必填) - owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - project_number:项目编号。(数字,必填)

  • list_project_fields -列出项目字段

- owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - per_page:每页结果数(最多100,默认值:30)(数字,可选) - project_number:项目编号。(数字,必填)

  • list_project_items -列出项目项目

- fields:响应中包含的字段ID的具体列表(例如\[“102589”、“985201”、“169875”\])。如果未提供,则仅包括标题字段。(string\[\],可选) - owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - per_page:每页结果数(最多100,默认值:30)(数字,可选) - project_number:项目编号。(数字,必填) - query:搜索查询以筛选项目(字符串,可选)

  • list_项目 -列出项目

- owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - per_page:每页结果数(最多100,默认值:30)(数字,可选) - query:按搜索查询筛选项目(匹配标题和描述)(字符串,可选)

  • update_project_item -更新项目项

- item_id:项目项的唯一标识符。这不是问题或拉取请求ID。(数字,必填) - owner:如果owner_type==user,则是GitHub用户帐户的句柄。如果owner_type==org,则是组织的名称。名称不区分大小写。(字符串,必填) - owner_type:所有者类型(字符串,必填) - project_number:项目编号。(数字,必填) - updated_field:对象,由要更新的项目字段的ID和字段的新值组成。要清除该字段,请将值设置为null。示例:{“id”:123456,“value”:“New value”}(对象,必填)

Pull Requests

  • add_comment_to_pending_view -在请求者的最新待处理拉取请求审核中添加审核评论

- body:审查意见的文本(字符串,必填) - line:注释应用于的拉取请求差异中blob的行。对于多行注释,范围的最后一行(数字,可选) - owner:存储库所有者(字符串,必填) - path:需要注释的文件的相对路径(字符串,必填) - pullNumber:拉取请求号(number,必填) - repo:存储库名称(字符串,必填) - side:要注释的diff侧。LEFT表示以前的状态,RIGHT表示新的状态(字符串,可选) - startLine:对于多行注释,注释适用范围的第一行(数字,可选) - startSide:对于多行注释,注释所应用的diff的起始侧。LEFT表示之前的状态,RIGHT表示新的状态(字符串,可选) - subjectType:评论的目标级别(字符串,必填)

  • create_pull_request -打开新的拉取请求

- base:要合并的分支(字符串,必填) - body:PR描述(字符串,可选) - draft:创建为PR草稿(布尔值,可选) - head:包含更改的分支(字符串,必填) - maintainer_can_modify:允许维护者编辑(布尔值,可选) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - title:PR标题(字符串,必填)

  • list_pull_requests -列出拉取请求

- base:按基分支筛选(字符串,可选) - direction:排序方向(字符串,可选) - head:按主用户/组织和分支机构过滤(字符串,可选) - owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填) - sort:排序方式(字符串,可选) - state:按状态筛选(字符串,可选)

  • 合并请求 -合并拉取请求

- commit_message:合并提交的额外细节(字符串,可选) - commit_title:合并提交的标题(字符串,可选) - merge_method:合并方法(字符串,可选) - owner:存储库所有者(字符串,必填) - pullNumber:拉取请求号(number,必填) - repo:存储库名称(字符串,必填)

  • pull_request_read -获取单个pull请求的详细信息

- method:指定需要从GitHub检索哪些拉取请求数据的操作。 可能的选项:

  1. get-获取特定拉取请求的详细信息。
  2. get_diff-获取拉取请求的差异。
  3. get_status-获取pull请求中head提交的状态。这反映了构建和检查的状态。
  4. get_files-获取拉取请求中更改的文件列表。与分页参数一起使用,以控制返回的结果数量。
  5. get_view_comments-获取拉取请求的评论。它们是在拉取请求审查期间对统一差异的一部分所做的评论。与分页参数一起使用,以控制返回的结果数量。
  6. get_reviews-获取拉取请求的评论。当被要求提供评论时,使用get_view_comments方法。
  7. get_comments-获取pull请求的注释。如果用户不特别想要评论,请使用此选项。与分页参数一起使用,以控制返回的结果数量。

(字符串,必填)

  • owner:存储库所有者(字符串,必填)
  • page:分页页码(最少1页)(数字,可选)
  • perPage:分页每页结果(最少1个,最多100个)(数量,可选)
  • pullNumber:拉取请求号(number,必填)
  • repo:存储库名称(字符串,必填)
  • pull_request_review_write -对pull请求评论进行写操作(创建、提交、删除)。

- body:查看评论文本(字符串,可选) - commitID:提交审查的SHA(字符串,可选) - event:查看要执行的操作。(字符串,可选) - method:对拉取请求审核执行的写入操作。(字符串,必填) - owner:存储库所有者(字符串,必填) - pullNumber:拉取请求号(number,必填) - repo:存储库名称(字符串,必填)

  • request_copilot_review -请求副驾驶审核

- owner:存储库所有者(字符串,必填) - pullNumber:拉取请求号(number,必填) - repo:存储库名称(字符串,必填)

  • search_pull_requests -搜索拉取请求

- order:排序顺序(字符串,可选) - owner:可选存储库所有者。如果提供了repo,则只列出此存储库的pull请求。(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - query:使用GitHub pull请求搜索语法搜索查询(字符串,必填) - repo:可选存储库名称。如果提供了所有者,则只列出此存储库的拉取请求。(字符串,可选) - sort:按类别匹配数对字段进行排序,默认为最佳匹配(字符串,可选)

  • update_pull_request -编辑拉取请求

- base:新的基础分支名称(字符串,可选) - body:新描述(字符串,可选) - draft:将pull请求标记为草稿(true)或准备审核(false)(布尔值,可选) - maintainer_can_modify:允许维护者编辑(布尔值,可选) - owner:存储库所有者(字符串,必填) - pullNumber:拉取请求编号进行更新(编号,必填) - repo:存储库名称(字符串,必填) - reviewers:请求评论的GitHub用户名(string\[\],可选) - state:新状态(字符串,可选) - title:新标题(字符串,可选)

  • update_pull_request_branch -更新拉取请求分支

- expectedHeadSha:拉取请求的HEAD引用的预期SHA(字符串,可选) - owner:存储库所有者(字符串,必填) - pullNumber:拉取请求号(number,必填) - repo:存储库名称(字符串,必填)

Repositories

  • create_branch -创建分支

- branch:新分支的名称(字符串,必填) - from_branch:源分支(默认为repo-default)(字符串,可选) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • create_or_update_file -创建或更新文件

- branch:创建/更新文件的分支(字符串,必填) - content:文件内容(字符串,必填) - message:提交消息(字符串,必填) - owner:存储库所有者(用户名或组织)(字符串,必填) - path:创建/更新文件的路径(字符串,必填) - repo:存储库名称(字符串,必填) - sha:如果更新现有文件,则为必填项。被替换文件的blob SHA。(字符串,可选)

  • 创建存储库 -创建存储库

- autoInit:使用README进行初始化(布尔值,可选) - description:存储库描述(字符串,可选) - name:存储库名称(字符串,必填) - organization:要在其中创建存储库的组织(省略在您的个人帐户中创建)(字符串,可选) - private:repo是否应该是私有的(布尔值,可选)

  • 删除文件 -删除文件

- branch:从中删除文件的分支(字符串,必填) - message:提交消息(字符串,必填) - owner:存储库所有者(用户名或组织)(字符串,必填) - path:要删除的文件的路径(字符串,必填) - repo:存储库名称(字符串,必填)

  • fork存储 -Fork存储库

- organization:要分叉的组织(字符串,可选) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • get_提交 -获取提交详细信息

- include_diff:是否在响应中包含文件差异和统计信息。默认值为true。(布尔值,可选) - owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填) - sha:提交SHA、分支名称或标记名称(字符串,必填)

  • 获取_文件_内容 -获取文件或目录内容

- owner:存储库所有者(用户名或组织)(字符串,必填) - path:文件/目录的路径(目录必须以斜线“/”结尾)(字符串,可选) - ref:接受可选的git引用,例如 refs/tags/{tag}, refs/heads/{branch}refs/pull/{pr_number}/head (字符串,可选) - repo:存储库名称(字符串,必填) - sha:接受可选的提交SHA。如果指定,将使用它来代替ref(string,可选)

  • get_latest_release -获取最新版本

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • get_release_by_tag -按标签名称获取发布

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - tag:标签名称(例如“v1.0.0”)(字符串,必填)

  • get_tag -获取标签详细信息

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填) - tag:标签名称(字符串,必填)

  • list_brances -列出分支

- owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填)

  • list_commits -列表提交

- author:用于过滤提交的作者用户名或电子邮件地址(字符串,可选) - owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填) - sha:提交SHA、分支或标签名称以列出提交。如果没有提供,则使用存储库的默认分支。如果提供了提交SHA,将列出该SHA之前的提交。(字符串,可选)

  • list_releases -列表发布

- owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填)

  • list_tags -列表标签

- owner:存储库所有者(字符串,必填) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - repo:存储库名称(字符串,必填)

  • 推送文件 -将文件推送到存储库

- branch:要推送的分支(字符串,必填) - files:要推送的文件对象数组,每个对象都有路径(字符串)和内容(字符串)(object\[\],必填) - message:提交消息(字符串,必填) - owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • 搜索代码 -搜索代码

- order:结果的排序顺序(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - query:使用GitHub强大的代码搜索语法搜索查询。示例:“内容:技能语言:Java组织:github”,“不是:存档语言:Python或语言:go”,“仓库:github/github mcp服务器”。支持精确匹配、语言过滤器、路径过滤器等。(字符串,必填) - sort:排序字段(仅“索引”)(字符串,可选)

  • search_repositories -搜索存储库

- minimal_output:返回最小存储库信息(默认值:true)。如果为false,则返回完整的GitHub API存储库对象。(布尔值,可选) - order:排序顺序(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - query:存储库搜索查询。示例:“机器学习:name-stars:>1000语言:python”,“主题:反应”,“用户:脸书”。支持高级搜索语法以进行精确筛选。(字符串,必填) - sort:按字段对存储库进行排序,默认为最佳匹配(字符串,可选)

Secret Protection

  • get_secret_scanning_alert -获取秘密扫描警报

- alertNumber:警报的编号。(数字,必填) - owner:存储库的所有者。(字符串,必填) - repo:存储库的名称。(字符串,必填)

  • list_secret_scaning_alerts -列出秘密扫描警报

- owner:存储库的所有者。(字符串,必填) - repo:存储库的名称。(字符串,必填) - resolution:按分辨率筛选(字符串,可选) - secret_type:以逗号分隔的要返回的秘密类型列表。返回所有默认的秘密模式。要返回泛型模式,请在参数中传递令牌名称。(字符串,可选) - state:按状态筛选(字符串,可选)

Security Advisories

  • 全球安全咨询 -获取全球安全咨询

- ghsaId:GitHub安全咨询ID(格式:GHSA xxxx-xxxx-xxxx)。(字符串,必填)

  • 列表_全球安全_建议 -列出全球安全建议

- affects:按受影响的包或版本过滤公告(例如“package1,package2@1.0.0“)。(字符串,可选) - cveId:按CVE ID筛选。(字符串,可选) - cwes:按常见弱点枚举ID筛选(例如\[“79”、“284”、“22”\])。(string\[\],可选) - ecosystem:按包装生态系统过滤。(字符串,可选) - ghsaId:按GitHub安全咨询ID筛选(格式:GHSA xxxx-xxxx-xxxx)。(字符串,可选) - isWithdrawn:是否只返回撤回的建议。(布尔值,可选) - modified:按发布或更新日期或日期范围(ISO 8601日期或范围)筛选。(字符串,可选) - published:按发布日期或日期范围(ISO 8601日期或范围)筛选。(字符串,可选) - severity:按严重程度过滤。(字符串,可选) - type:咨询类型。(字符串,可选) - updated:按更新日期或日期范围(ISO 8601日期或范围)筛选。(字符串,可选)

  • list_org_repository_security_advisories -列出组织存储库安全建议

- direction:排序方向。(字符串,可选) - org:组织登录。(字符串,必填) - sort:排序字段。(字符串,可选) - state:按咨询状态筛选。(字符串,可选)

  • list_repository_security_advisories -列出存储库安全建议

- direction:排序方向。(字符串,可选) - owner:存储库的所有者。(字符串,必填) - repo:存储库的名称。(字符串,必填) - sort:排序字段。(字符串,可选) - state:按咨询状态筛选。(字符串,可选)

Stargazers

  • list_starred_存储库 -列出带星号的存储库

- direction:结果排序的方向。(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - sort:如何对结果进行排序。可以是“创建”(当存储库被标记时)或“更新”(当上次推送到存储库时)。(字符串,可选) - username:列出星号存储库的用户名。默认为经过身份验证的用户。(字符串,可选)

  • 恒星储存 -Star存储库

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

  • unstar_repository -非星存储库

- owner:存储库所有者(字符串,必填) - repo:存储库名称(字符串,必填)

Users

  • 搜索用户 -搜索用户

- order:排序顺序(字符串,可选) - page:分页页码(最少1页)(数字,可选) - perPage:分页每页结果(最少1个,最多100个)(数量,可选) - query:用户搜索查询。示例:“约翰·史密斯”,“地点:西雅图”,“关注者:>100”。搜索自动限定为type:user。(字符串,必填) - sort:按关注者或存储库的数量或用户加入GitHub的时间对用户进行排序。(字符串,可选)

远程Github MCP服务器中的其他工具

Copilot

  • create_pull_request_with_copilot -使用GitHub Copilot编码代理执行任务

- owner:存储库所有者。您可以猜测所有者,但在继续之前请与用户确认。(字符串,必填) - repo:存储库名称。您可以猜测存储库名称,但在继续之前请与用户确认。(字符串,必填) - problem_statement:要执行的任务的详细描述(例如,“实现执行X的功能”、“修复错误Y”等)(字符串,必填) - title:将创建的拉取请求的标题(字符串,必填) - base_ref:代理将从其开始工作的Git引用(例如分支)。如果未指定,则默认为存储库的默认分支(字符串,可选)

Copilot Spaces

  • get_copilot_space -获取副驾驶空间

- owner:空间的所有者。(字符串,必填) - name:空间的名称。(字符串,必填)

  • list_copilot_spaces -列出副驾驶空间

GitHub Support Docs Search

  • github支持.docs搜索 -检索与回答GitHub产品和支持问题相关的文档。支持主题包括:GitHub操作工作流、身份验证、GitHub支持查询、拉取请求实践、存储库维护、GitHub页面、GitHub包、GitHub讨论、副本空间

- query:用户关于他们需要回答的问题的输入。这是最新未经编辑的原始用户消息。您应该始终保持用户消息的原样,永远不要修改它。(字符串,必填)

动态工具发现

备注:此功能目前处于测试阶段,可能无法在所有环境中使用。请测试一下,如果您遇到任何问题,请告诉我们。

您可以启用动态工具集发现,而不是从启用所有工具开始。动态工具集允许MCP主机根据用户提示列出并启用工具集。这应该有助于避免模型被大量可用工具混淆的情况。

使用动态工具发现

使用二进制时,您可以传递 --dynamic-toolsets 旗帜。

./github-mcp-server --dynamic-toolsets

使用Docker时,可以将工具集作为环境变量传递:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN= \
  -e GITHUB_DYNAMIC_TOOLSETS=1 \
  ghcr.io/github/github-mcp-server

只读模式

要以只读模式运行服务器,可以使用 --read-only 旗帜。这将只提供只读工具,防止对存储库、问题、拉取请求等进行任何修改。

./github-mcp-server --read-only

使用Docker时,可以将只读模式作为环境变量传递:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN= \
  -e GITHUB_READ_ONLY=1 \
  ghcr.io/github/github-mcp-server

i18n/覆盖性描述

通过创建 github-mcp-server-config.json 文件与二进制文件位于同一目录中。

该文件应包含一个JSON对象,其中工具名称作为键,新 描述为值。例如:

{
  "TOOL_ADD_ISSUE_COMMENT_DESCRIPTION": "an alternative description",
  "TOOL_CREATE_BRANCH_DESCRIPTION": "Create a new branch in a GitHub repository"
}

您可以通过运行二进制文件来创建当前翻译的导出 这 --export-translations 旗帜。

此标志将保留您在添加时所做的任何翻译/覆盖 自上次您使用二进制文件以来添加到二进制文件中的任何新翻译 出口。

./github-mcp-server --export-translations
cat github-mcp-server-config.json

您还可以使用ENV变量来覆盖描述。环境 变量名与JSON文件中的键相同,前缀为 GITHUB_MCP_ 全部大写。

例如,要覆盖 TOOL_ADD_ISSUE_COMMENT_DESCRIPTION 工具,你可以 设置以下环境变量:

export GITHUB_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION="an alternative description"

图书馆使用情况

该模块导出的Go API当前应被视为不稳定,并可能发生中断更改。未来,我们可能会提供稳定;如果存在有价值的用例,请提交一个问题。

许可证

该项目根据麻省理工学院开源许可证条款获得许可。请参考 麻省理工学院 完整的条款。

目录标签

目录标签

GitHub代码分析GoVS Code工作流管理GitHub集成混合部署AI自动化团队协作

支持客户端

Claude DesktopClaudeCursorWindsurfVS CodeVS Code Insiders

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP