GitHub MCP Server

GitHub MCP Server

GitHub MCP 服务器 (SSE)

yamagai

开发者工具
访问服务器

README

GitHub MCP 服务器

这是一个使用模型上下文协议 (MCP) 的 GitHub 集成服务器。此服务器为 LLM(大型语言模型)应用程序提供了一个标准化的接口,用于与 GitHub API 进行通信。

功能

此服务器提供以下功能:

  • 仓库搜索
  • 仓库创建
  • 获取文件内容
  • 创建/更新文件
  • 批量推送多个文件
  • 仓库 Fork
  • 创建 Pull Request
  • 获取 Pull Request 详情
  • 向 Pull Request 添加评论

安装

go get github.com/yamagai/github-mcp-server-sse

使用方法

标准输入输出模式 (Stdio)

# 通过环境变量设置 GitHub Token
export GITHUB_TOKEN=your_github_token

# 启动服务器(默认为标准输入输出模式)
github-mcp

# 或者明确指定标准输入输出模式
github-mcp -t stdio

SSE 模式

# 通过环境变量设置 GitHub Token(或者在每个请求的 Authorization Header 中指定)
export GITHUB_TOKEN=your_github_token

# 在默认端口 (8080) 启动 SSE 服务器
github-mcp -t sse

# 在自定义端口启动 SSE 服务器
github-mcp -t sse -p 3000

在 SSE 模式下,您也可以在 HTTP 请求的 Authorization Header 中包含 GitHub Token:

curl -H "Authorization: Bearer YOUR_GITHUB_TOKEN" http://localhost:8080/events

在 Docker 容器中使用

提供了一个在 SSE 模式下运行服务器的 Docker 容器。

构建方法

# 构建 Docker 镜像
docker build -t github-mcp-server-sse .

运行方法

# 通过环境变量指定 GitHub Token 并运行
docker run -p 8080:8080 -e GITHUB_TOKEN=your_github_token github-mcp-server-sse

# 在自定义端口运行(通过环境变量指定端口)
docker run -p 3000:3000 -e GITHUB_TOKEN=your_github_token -e PORT=3000 github-mcp-server-sse

工具列表

工具名 说明
search_repositories 搜索 GitHub 仓库
create_repository 创建新的 GitHub 仓库
get_file_contents 从 GitHub 仓库获取文件内容
create_or_update_file 在 GitHub 仓库中创建或更新文件
push_files 一次性将多个文件推送到 GitHub 仓库
fork_repository Fork GitHub 仓库
create_pull_request 在 GitHub 仓库中创建新的 Pull Request
get_pull_request 从 GitHub 仓库获取 Pull Request 的详细信息
create_pull_request_review 为 Pull Request 创建评论

开发

# 解决依赖关系
go mod tidy

# 构建
go build

# 测试
go test ./...

命令行选项

选项 短缩形 说明 默认值
--transport -t 使用的传输类型 (stdio 或 sse) stdio
--port -p SSE 服务器的端口号 8080

参考

此项目使用 MCP-Go 库。有关详细文档,请参阅该库。

许可证

MIT

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
MCP Package Docs Server

MCP Package Docs Server

促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
mermaid-mcp-server

mermaid-mcp-server

一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。

精选
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

精选
TypeScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Curri MCP Server

Curri MCP Server

通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。

官方
本地
JavaScript