mcpField
G
GitHub MCP Server

GitHub MCP Server

本地服务
github.com/Joseph19820124版本控制073 周前更新

关于 GitHub MCP Server

GitHub MCP Server 是面向需要通过 MCP 应用创建 GitHub 仓库的 Python 服务。其工具支持设置仓库名称、描述和可见性。

主要功能

  1. 01创建 GitHub 仓库
  2. 02设置仓库名称和描述
  3. 03选择公开或私有可见性

适用场景

  1. 01通过 MCP 客户端创建仓库
  2. 02创建时设置描述和可见性

MCP 相关

它通过标准输入/输出上的 JSON-RPC 实现 MCP,并提供 `create_repository` 工具。MCP 客户端可列出并调用该工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

GitHub MCP 服务

一个用于提供 GitHub 仓库管理功能的模型上下文协议(MCP)服务。

功能

  • 创建仓库:创建可自定义设置的 GitHub 新仓库

前提条件

  • Python 3.8 或更高版本
  • 具有创建仓库权限的 GitHub Personal Access Token

安装

  1. 克隆此仓库:
git clone https://github.com/Joseph19820124/joseph-github-mcp-server.git
cd joseph-github-mcp-server
  1. 安装依赖项:
pip install -r requirements.txt
  1. 设置 GitHub 令牌:
export GITHUB_TOKEN="your_github_personal_access_token"

用法

运行 MCP 服务
python main.py

服务将启动,并通过 stdin/stdout 监听 MCP 请求。

可用工具
create_repository

创建一个新的 GitHub 仓库。

参数:

  • name(必填):仓库名称
  • description(可选):仓库描述
  • private(可选):仓库是否应为私有(默认值:false)

请求示例:

{
  "method": "tools/call",
  "params": {
    "name": "create_repository",
    "arguments": {
      "name": "my-new-repo",
      "description": "A sample repository",
      "private": false
    }
  },
  "id": "1"
}

响应示例:

{
  "content": [
    {
      "type": "text",
      "text": "{\n  \"success\": true,\n  \"repository\": {\n    \"id\": 123456789,\n    \"name\": \"my-new-repo\",\n    \"full_name\": \"username/my-new-repo\",\n    \"html_url\": \"https://github.com/username/my-new-repo\",\n    \"clone_url\": \"https://github.com/username/my-new-repo.git\",\n    \"ssh_url\": \"[email protected]:username/my-new-repo.git\",\n    \"private\": false,\n    \"description\": \"A sample repository\"\n  }\n}"
    }
  ],
  "id": "1"
}

GitHub 令牌设置

要使用此 MCP 服务,你需要具有以下权限的 GitHub Personal Access Token:

  1. 前往 GitHub Settings > Developer settings > Personal access tokens

  2. 生成具有以下权限范围的新令牌:

    • repo(用于仓库访问)
    • user(用于用户信息)
  3. 将令牌设置为环境变量:

export GITHUB_TOKEN="your_token_here"

开发

项目结构
joseph-github-mcp-server/
├── main.py              # Main MCP server implementation
├── requirements.txt     # Python dependencies
├── README.md           # This file
└── pyproject.toml      # Project configuration
测试

你可以通过发送 JSON-RPC 请求来测试服务:

  1. 启动服务:
python main.py
  1. 发送测试请求:
echo '{"method": "tools/list", "id": "1"}' | python main.py

MCP(模型上下文协议)

此服务实现了模型上下文协议,这是一种用于将 AI 应用与外部数据源和工具连接起来的开放标准。该协议使用通过 stdio 传输的 JSON-RPC 2.0 进行通信。

支持的 MCP 方法
  • tools/list:列出可用工具
  • tools/call:执行指定工具
工具架构

create_repository 工具遵循 MCP 工具架构:

{
  "name": "create_repository",
  "description": "Create a new GitHub repository",
  "inputSchema": {
    "type": "object",
    "properties": {
      "name": {
        "type": "string",
        "description": "Repository name"
      },
      "description": {
        "type": "string",
        "description": "Repository description",
        "default": ""
      },
      "private": {
        "type": "boolean",
        "description": "Whether the repository should be private",
        "default": false
      }
    },
    "required": ["name"]
  }
}

许可证

MIT 许可证

贡献

欢迎提交 Pull Request。对于重大更改,请先创建 issue,讨论你希望进行的更改。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。