mcpField
G
GitHub MCP Bridge 🌉

GitHub MCP Bridge 🌉

本地服务
github.com/vipink1203版本控制078 周前更新

关于 GitHub MCP Bridge 🌉

GitHub MCP Bridge 是面向 GitHub Enterprise 管理团队的 MCP 服务,可查询许可证使用情况和用户访问详情,包括组织成员关系、角色及 2FA 状态,并支持大型企业分页查询。

主要功能

  1. 01汇总许可证总量和已用数量
  2. 02查询组织成员关系与角色
  3. 03获取用户许可证和访问详情
  4. 04查看用户 2FA 与 SAML ID
  5. 05分页处理大型企业结果

适用场景

  1. 01监控 GitHub Enterprise 许可证使用情况
  2. 02审计用户角色和访问权限
  3. 03检查组织成员关系
  4. 04支持企业用户入职与离职管理

MCP 相关

该服务通过工具和资源提供 GitHub Enterprise 许可证及用户数据,支持 stdio 和 SSE 传输,并使用具备所需权限范围的 GitHub PAT。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

MCP GITHUB ENTERPRISE 🌉

Python >=3.9
MCP Protocol
GitHub API

一个 Model Context Protocol(MCP)服务,让 AI Agent(Claude、ChatGPT 等)能够查询你的 GitHub Enterprise 许可证数据。通过 /consumed-licenses 端点安全获取许可证摘要、用户详情、组织成员身份和企业角色。


📊 功能与示例提示词

  • 许可证摘要
    • "显示我们的 GitHub Enterprise 许可证摘要"
    • "我们目前使用了多少个许可证?"

  • 详细许可证使用情况
    • "列出所有已使用的 GitHub 许可证"
    • "我们有未使用的 GitHub 许可证吗?"

  • 用户查询
    • "johndoe 属于哪些 GitHub 组织?"
    • "johndoe 拥有哪些企业角色?"
    • "johndoe 是我们企业中的所有者吗?"
    • "获取 johndoe 的详细信息"
    • "johndoe 是否启用了 2FA?"


🌟 功能

  • 许可证分析:席位总数与已使用席位数
  • 用户查询:组织成员身份、角色、2FA、SAML ID
  • 分页:自动处理大型企业
  • 双传输方式:stdio 用于直接 MCP 通信,SSE 用于 HTTP
  • 适用于 Kubernetes:部署到 EKS/GKE 或任何 K8s 集群

📋 前置条件

  • Python 3.9+
  • 具备 read:enterprise / 许可证权限范围的 GitHub PAT
  • GitHub Enterprise Cloud 租户

🚀 快速开始

1. 克隆并安装
git clone https://github.com/vipink1203/mcp-github-enterprise.git
cd mcp-github-enterprise
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
2. 配置
cp .env.example .env
# Edit .env: set GITHUB_TOKEN and GITHUB_ENTERPRISE_URL
3. 运行
stdio 传输方式
export TRANSPORT=stdio
python main.py
SSE 传输方式
export TRANSPORT=sse PORT=8050
python main.py

🐳 Docker 与 n8n

将此服务添加到 n8n 所在的 docker-compose.yml 中:

services:
  github-mcp:
    image: ghcr.io/vipink1203/mcp-github-enterprise:latest
    environment:
      - GITHUB_TOKEN=${GITHUB_TOKEN}
      - GITHUB_ENTERPRISE_URL=${GITHUB_ENTERPRISE_URL}
      - TRANSPORT=sse
      - PORT=8050
    ports:
      - "8050:8050"
    restart: unless-stopped
    networks:
      - n8n-network

在 n8n 的 UI 中启用 MCP 客户端:

🔌 客户端配置

Claude Desktop / Windsurf / Cursor

将此配置添加到 Claude Desktop 设置中:

{
  "mcpServers": {
   "github-ent": {
     "command": "/path/to/your/venv/python",
     "args": ["/path/to/main.py"],
     "env": {
       "GITHUB_TOKEN": "",
       "GITHUB_ENTERPRISE_URL": "https://api.github.com/enterprises/{enterprise_name}",
       "TRANSPORT": "stdio"
     }
   }
}
SSE 配置
{
  "mcpServers": {
    "github": {
      "transport": "sse",
      "url": "http://localhost:8050/sse"
    }
  }
}

📊 示例用例

  • 企业用户管理:自动处理用户入职和离职
  • 许可证监控:在许可证即将到期时获取提醒
  • 组织分析:分析组织结构和关系
  • 用户访问审计:跟踪用户权限和访问级别
  • AI 驱动的 GitHub 洞察:让 AI 分析企业 GitHub 数据

🔌 MCP 工具与资源

工具
名称描述
list_consumed_licenses汇总许可证,可选择包含用户
get_user_organizations列出用户所属的 GitHub 组织
get_user_enterprise_roles列出用户的企业角色
get_user_detail用户的完整许可证详情
资源
URI描述
github://consumed-licenses/{dummy}完整的许可证使用情况和用户详情
github://user/{username}/roles用户的组织和企业角色

🔒 安全注意事项

  • 安全存储 GitHub 令牌
  • 为 GitHub 令牌使用适当的权限范围
  • 对于生产环境,可考虑使用 AWS Secrets Manager 或类似服务
  • 在 Kubernetes 部署中实施网络策略

🤝 贡献

欢迎贡献!欢迎提交 Pull Request。

  1. Fork 此仓库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交更改(git commit -m 'Add some amazing feature')
  4. 将分支推送到远程仓库(git push origin feature/amazing-feature)
  5. 发起 Pull Request

📜 许可证

本项目采用 MIT License 授权,详情请参阅 LICENSE 文件。

🙏 致谢


为实现 AI ↔️ GitHub Enterprise 无缝集成而倾心打造。

评论

支持 Markdown

第一次接触 MCP?

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

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