GitHub MCP Server

GitHub MCP Server是一个Model Context Protocol(MCP)服务器,提供与GitHub API的无缝集成,使开发者和工具能够实现高级自动化和交互功能。

功能特性

  • GitHub工作流自动化:支持自动化GitHub工作流程和过程
  • 数据提取与分析:从GitHub仓库提取和分析数据
  • AI工具开发:构建与GitHub生态系统交互的AI驱动工具
  • 多工具集支持:通过toolsets参数支持灵活的工具组合
  • 多种运行模式
    • 标准输入/输出(stdio)模式
    • 只读模式(read-only)
    • 动态工具集模式(dynamic-toolsets)
  • 完善的日志记录:支持命令日志记录和日志文件输出

安装指南

远程服务器(推荐)

GitHub托管了远程MCP服务器,这是最简单的使用方式。如果您的MCP主机不支持远程服务器,可以使用本地版本。

VS Code集成

  1. 确保使用VS Code 1.101或更高版本
  2. 使用一键安装按钮完成安装
  3. 切换Agent模式(位于Copilot Chat文本输入旁)

本地安装

先决条件

从源码构建

git clone https://github.com/github/github-mcp-server.git
cd github-mcp-server
go build

Docker运行

docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN=<your_token> ghcr.io/github/github-mcp-server

使用说明

基本命令

启动stdio服务器:

./github-mcp-server stdio --gh-host=github.example.com

配置选项

参数 描述 默认值
--toolsets 启用的工具集列表 github.DefaultTools
--dynamic-toolsets 启用动态工具集 false
--read-only 限制服务器为只读操作 false
--log-file 日志文件路径 ""
--enable-command-logging 记录所有命令请求和响应 false
--export-translations 保存翻译到JSON文件 false
--gh-host GitHub主机名(用于GitHub Enterprise等) ""

环境变量

  • GITHUB_PERSONAL_ACCESS_TOKEN: 必须设置的GitHub个人访问令牌
  • GITHUB_HOST: 指定GitHub主机名

测试使用

1.在cherry mcp client中进行测试,配置github mcp server,如下所示



2.在聊天框中用该prompt(在github上面搜索受众比较多的CMS项目,并且查看这些CMS项目中issue讨论的最多的问题是什么)测试github mcp server的运行效果,效果如下所示



更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)

公众号二维码

GitHub MCP Server - 无缝集成GitHub API的自动化工具的更多相关文章

  1. GitHub已将持续集成服务器Janky开源

    GitHub已将Janky开源,这是他们构建在Jenkins之上的持续集成服务器,并在其中增加了聊天自动化工具Hubot. 除了一般的Jenkins功能之外,Janky还通过Hubot对功能进行了补充 ...

  2. Net 项目构建基于Jenkins + Github + Mono 的持续集成环境

    Net 项目构建基于Jenkins + Github + Mono 的持续集成环境 阅读目录 1 安装 2 配置 3 测试 在Redhat enterprise 6.5 的服务器上,为在gutub 上 ...

  3. 通过jenkins持续集成 github中的代码到 服务器。

    前言 最近自己在探索springboot框架,了解到 jenkins 具有 自动我github 上带项目部署到 tomcat 中.于是决定先搭建一个jenkins 环境在继续研究. Jenkins简介 ...

  4. Github 持续化集成 工作流 Npm包自动化发布

    Github 持续化集成 工作流 Npm包自动化发布 简介   持续集成指的是,频繁地(一天多次)将代码集成到主干. 它的好处主要有两个: 快速发现错误.每完成一点更新,就集成到主干,可以快速发现错误 ...

  5. 微信开发者工具集成GitHub,多人协调开发,上传拉取等

    一,准备环境 1,提前安装git环境和GitHub做集成,不做多解释: 1,准备微信项目代码: 2,创建GitHub仓库: 二,创建GitHub仓库 1,创建一个空的GitHub仓库,不要任何文件和不 ...

  6. 为Github仓库添加Github Actions实现持续集成: Android apk自动编译发布以及github pages同步推送coding.net

    内容转载自我的博客 目录 说明 1. 编写Android项目的CI配置文件 2. 编写Jekyll项目的CI配置文件 2.1 配置coding.net 2.2 配置github 2.3 自动部署到co ...

  7. OpenWrt(LEDE)2020.4.29更新 UPnP+NAS+多拨+网盘+DNS优化+帕斯沃 无缝集成+软件包

    交流群:QQ 1030484865 电报:  t_homelede   固件说明 基于Lede OpenWrt R2020.4.8版本(源码截止2020.4.29)Lienol Feed及若干自行维护 ...

  8. HomeLede 2020.5.27更新 UPnP+NAS+多拨+网盘+DNS优化+帕斯沃/Clash 无缝集成+软件包

    交流群:QQ 1030484865 电报 t.me/t_homelede   固件说明 基于Lede OpenWrt R2020.5.20版本(源码截止2020.5.27)及若干自行维护的软件包 结合 ...

  9. API文档工具-Swagger的集成

    最近安装了API文档工具swagger,因为Github上已有详细安装教程,且安装过程中没有碰到大的阻碍,所以此文仅对这次安装做一份大致记录 相关网站 Swagger 官方地址: http://swa ...

  10. OpenWrt(LEDE)2020.4.12编译 UnPnP+NAS+多拨+网盘+DNS优化+帕斯沃 无缝集成

    固件说明 基于Lede OpenWrt R2020.4.8版本(源码截止2020.4.12)Lienol Feed及若干自行维护的软件包 结合家庭x86软路由场景需要定制 按照家庭应用场景对固件及软件 ...

随机推荐

  1. 查看docker服务状态

    root用户使用 #查看docker服务状态: systemctl status docker 非root用户使用 #查看docker服务: sudo systemctl status docker

  2. 04 详解”死亡ReLU“问题

    本篇文章尝试通过具体的神经网络例子,来深入探讨"死亡ReLU"的问题. 很多资料都会提到神经元"永久性死亡"这种说法,我认为这会对我们的理解产生一定的误解.事实 ...

  3. C# 多文件打包

    public HttpResponseMessage GetZip() { var response = Request.CreateResponse(HttpStatusCode.OK); try ...

  4. [源码系列:手写spring] IOC第二节:BeanDefinition和BeanDefinitionRegistry

    主要内容 BeanDefinition:顾名思义,就是类定义信息,包含类的class类型.属性值.方法等信息. BeanDefinitionRegistry:添加BeanDefinitionRegis ...

  5. verilog利用线性插值实现正弦波生成器(dds)

    verilog实现线性插值实现正弦波生成器 ​ 最近在项目上遇到一个需要在低资源FPGA上实现FFT逻辑的项目,而且要求实现窗函数.对于窗函数来说,莫非是实现正弦波生成器,正弦波生成器可以利用DDS模 ...

  6. Laravel报错Call to undefined function Termwind\ValueObjects\mb_strimwidth()解决办法

    Laravel报错Call to undefined function Termwind\ValueObjects\mb_strimwidth() 通常是因为php的mbstring扩展没有打开 解决 ...

  7. git仓库常用git命令&极速入门教程

    简易的命令行入门教程: Git 全局设置: git config --global user.name "yourName" git config --global user.em ...

  8. Redis Stream消息队列

    工具类部分内容 package com.hwd.campus.common.redis.utils; import com.hwd.campus.common.redis.constant.Redis ...

  9. EFCore Study(番外1)——单向导航属性

    一.单向导航属性场景 1.比如公司OA系统有很多相关的审批流程,比如离职(Leave).请假(relex).加班,每个流程都有多级审批人,每个审批人都是User 一个人(User)--多个审批流程的多 ...

  10. Queue接口分析

    一.Queue是什么 该接口时Java集合框架成员 Queue: 通常(但不一定)队列就是一个先入先出(FIFO)的数据结构,和堆一样(但可以进行转换,比如优先级列队排序,又或者改为栈形式的后进先出数 ...