mcp/github-chat Docker Image
模型上下文协议(MCP)工具,用于通过GitHub Ch...分析和查询GitHub仓库。
GitHub Chat MCP Server
镜像概述与主要用途
GitHub Chat MCP Server 是一个基于模型上下文协议(Model Context Protocol, MCP)的服务器,用于通过 GitHub Chat API 分析和查询 GitHub 仓库。MCP 协议旨在简化 AI 应用的构建,该服务器专注于提供 GitHub 仓库的代码库索引与智能查询能力。
https://www.anthropic.com/news/model-context-protocol
核心功能与特性
核心功能
该服务器提供以下两个核心工具,支持 GitHub 仓库的代码分析与智能交互:
| 工具名称 | 简要描述 |
|---|---|
index_repository | 索引 GitHub 仓库以分析其代码库,查询仓库前必须先执行此操作。 |
query_repository | 针对已索引的 GitHub 仓库提问,获取详细的 AI 响应,支持多轮对话。 |
特性详情
| 属性 | 详情 |
|---|---|
| Docker 镜像 | https://hub.docker.com/repository/docker/mcp/github-chat |
| 作者 | https://github.com/AsyncFuncAI |
| 代码仓库 | https://github.com/AsyncFuncAI/github-chat-mcp |
| Dockerfile | https://github.com/AsyncFuncAI/github-chat-mcp/blob/main/Dockerfile |
| 镜像构建方 | Docker Inc. |
| Docker Scout 健康评分 | |
| 签名验证命令 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/github-chat --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub |
| 许可证 | MIT License |
使用场景与适用范围
适用场景
- 代码库分析:对 GitHub 仓库进行索引,快速掌握代码结构、依赖关系及核心功能。
- 智能查询:针对已索引的仓库提问(如代码功能、架构设计、潜在问题等),获取 AI 生成的详细解答。
- 多轮对话:通过提供对话历史,支持连续追问,深入分析仓库细节。
适用人群
- 开发者:分析开源项目或团队仓库,加速代码理解与贡献。
- 研究人员:批量分析 GitHub 仓库,提取代码模式或技术趋势。
- 学习者:通过查询获取代码解释,辅助学习新框架或语言。
详细使用方法与配置说明
环境变量配置
运行该镜像需配置以下环境变量:
| 环境变量名 | 描述 | 必填 |
|---|---|---|
GITHUB_API_KEY | GitHub API 密钥,用于访问 GitHub 仓库 | 是 |
Docker 部署示例
1. 使用 docker run 命令部署
bashdocker run -i --rm -e GITHUB_API_KEY="YOUR_GITHUB_API_KEY" docker.xuanyuan.run/mcp/github-chat
2. MCP 客户端配置示例
在 MCP 客户端配置文件中集成该服务器:
json{ "mcpServers": { "github-chat": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_API_KEY", "mcp/github-chat" ], "env": { "GITHUB_API_KEY": "YOUR_GITHUB_API_KEY" } } } }
工具使用详情
工具 1:index_repository
功能:索引 GitHub 仓库以分析其代码库(查询前必须执行)。
| 参数名 | 类型 | 描述 | 必填 |
|---|---|---|---|
repo_url | string | GitHub 仓库 URL(格式:https://github.com/username/repo) | 是 |
示例请求:
json{ "tool": "index_repository", "parameters": { "repo_url": "https://github.com/username/example-repo" } }
工具 2:query_repository
功能:查询已索引的 GitHub 仓库,获取 AI 响应。
| 参数名 | 类型 | 描述 | 必填 |
|---|---|---|---|
question | string | 针对仓库的问题 | 是 |
repo_url | string | GitHub 仓库 URL(格式同上) | 是 |
conversation_history | string | 历史对话记录(用于多轮对话) | 否 |
示例请求(单轮对话):
json{ "tool": "query_repository", "parameters": { "question": "该仓库的核心功能是什么?", "repo_url": "https://github.com/username/example-repo" } }
示例请求(多轮对话):
json{ "tool": "query_repository", "parameters": { "question": "它使用了哪些依赖库?", "repo_url": "https://github.com/username/example-repo", "conversation_history": "用户:该仓库的核心功能是什么?\nAI:该仓库是一个基于 Python 的 HTTP 服务器框架..." } }
安全性说明
使用 Docker 运行 MCP 服务器可通过容器隔离提升安全性,限制工具对主机环境的访问。
https://www.docker.com/blog/the-model-context-protocol-simplifying-building-ai-apps-with-anthropic-claude-desktop-and-docker/
镜像拉取方式
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
轩辕镜像加速拉取命令点我查看更多 github-chat 镜像标签
docker pull docker.xuanyuan.run/mcp/github-chat:<标签>
DockerHub 原生拉取命令
docker pull mcp/github-chat:<标签>
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务