MCP(Model Context Protocol,模型上下文协议)服务器,为GitHub Copilot等AI应用提供工具,用于分析仓库并自动创建GitHub仓库。
本项目提供了一个MCP服务器,可帮助AI应用分析本地git仓库并创建GitHub仓库。以下是使用前的准备步骤和启动方法:
git clone https://github.com/flickleafy/mcp-github-repo-creator.git
cd mcp-github-repo-creator
bash setup.sh
此脚本将完成以下操作:
# 激活虚拟环境
source venv/bin/activate
# 启动MCP服务器
python server.py
git clone https://github.com/flickleafy/mcp-github-repo-creator.git
cd mcp-github-repo-creator
bash setup.sh
此脚本会创建Python虚拟环境,安装MCP SDK和依赖项,并完成项目的初始化设置。
服务器为AI应用提供了以下工具:
get_repo_analysis_instructions:获取仓库分析的详细说明。analyze_and_generate_metadata_file:分析仓库并生成元数据。create_github_repo_from_metadata:根据元数据JSON创建GitHub仓库。create_github_repository:使用现有的元数据文件创建仓库。full_repository_setup:完成完整的工作流程:分析 → 创建 → 连接。# 激活虚拟环境
source venv/bin/activate
# 启动MCP服务器
python server.py
服务器使用stdio传输协议,兼容以下MCP客户端:
将MCP客户端配置为连接到本服务器:
{
"name": "github-repo-creator",
"command": "python",
"args": ["server.py"],
"cwd": "/path/to/mcp-github-repo-creator"
}
你也可以直接使用底层功能:
# 激活虚拟环境
source venv/bin/activate
# 交互模式
python create_github_repo.py
# 直接创建仓库
python create_github_repo.py --create
# 仅管理主题
python create_github_repo.py --manage-topics
github_repo_metadata.json文件。MCP服务器支持三种主要的工作流方式:
这种方式让Copilot拥有更多控制权,并允许用户进行自定义设置:
get_repo_analysis_instructions获取详细的分析说明。create_github_repo_from_metadata。示例对话:
"请分析这个仓库并为其创建一个GitHub仓库。我想在你创建仓库之前查看元数据。"
适用于无需交互的完全自动化场景:
full_repository_setup工具。
示例对话:
"使用全自动化方式在GitHub上设置这个项目。"
适用于需要对每个步骤进行精细控制的场景:
analyze_and_generate_metadata_file。github_repo_metadata.json文件。create_github_repository。示例对话:
"首先,为这个仓库生成一个元数据文件。我想在创建GitHub仓库之前查看它。"
配置完成后,你可以使用以下自然语言命令与Copilot交互:
"分析这个仓库并告诉我将为GitHub生成哪些元数据。"
"为这个仓库生成一个github_repo_metadata.json文件。"
"为这个本地项目创建一个GitHub仓库。首先分析它,生成元数据,然后创建GitHub仓库并连接所有内容。"
"在GitHub上设置整个项目 - 分析代码,创建适当的元数据,并创建仓库。"
"请为这个项目创建一个GitHub仓库。分析代码,生成适当的元数据,并在GitHub上设置仓库。"
Copilot将执行以下操作:
github_repo_metadata.json文件。gh)。# macOS
brew install gh
# Ubuntu/Debian
sudo apt install gh
# Windows(使用winget)
winget install GitHub.cli
gh auth login
git clone https://github.com/flickleafy/mcp-github-repo-creator.git
cd mcp-github-repo-creator
bash setup.sh
{
"github.copilot.enable": {
"*": true,
"mcp": true
},
"mcp.servers": {
"github-repo-creator": {
"command": "python",
"args": ["server.py"],
"cwd": "/full/path/to/mcp-github-repo-creator",
"env": {
"PATH": "/full/path/to/mcp-github-repo-creator/venv/bin:${env:PATH}"
}
}
}
}
~/.config/claude-desktop/config.json):{
"mcpServers": {
"github-repo-creator": {
"command": "python",
"args": ["/full/path/to/mcp-github-repo-creator/server.py"],
"env": {
"PATH": "/full/path/to/mcp-github-repo-creator/venv/bin"
}
}
}
}
通过运行以下命令创建一个简单的安装脚本:
# 下载并运行自动安装器
curl -sSL https://raw.githubusercontent.com/flickleafy/mcp-github-repo-creator/main/install-copilot.sh | bash
或者在你的项目中手动创建安装脚本:
# 创建安装脚本
cat > install-copilot.sh << 'EOF'
#!/bin/bash
echo "🚀 正在为Copilot安装MCP GitHub仓库创建器..."
# 检查依赖项
command -v python3 >/dev/null 2>&1 || { echo "❌ 需要安装Python 3,但未找到。"; exit 1; }
command -v git >/dev/null 2>&1 || { echo "❌ 需要安装Git,但未找到。"; exit 1; }
# 如果未安装GitHub CLI,则进行安装
if ! command -v gh &> /dev/null; then
echo "📦 正在安装GitHub CLI..."
if [[ "$OSTYPE" == "darwin"* ]]; then
brew install gh
elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
sudo apt update && sudo apt install gh
else
echo "⚠️ 请手动安装GitHub CLI:https://cli.github.com/"
exit 1
fi
fi
# 克隆仓库
INSTALL_DIR="$HOME/.mcp-servers/github-repo-creator"
echo "📁 正在安装到 $INSTALL_DIR..."
mkdir -p "$HOME/.mcp-servers"
git clone https://github.com/flickleafy/mcp-github-repo-creator.git "$INSTALL_DIR"
# 设置虚拟环境
cd "$INSTALL_DIR"
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# 创建VS Code配置
VSCODE_CONFIG="$HOME/.config/Code/User/settings.json"
echo "⚙️ 正在添加VS Code配置..."
# 将MCP服务器配置添加到VS Code设置中
echo "✅ 安装完成!"
echo "🔧 下一步操作:"
echo "1. 使用GitHub进行认证:gh auth login"
echo "2. 重启VS Code"
echo "3. 开始使用带有MCP命令的Copilot!"
EOF
chmod +x install-copilot.sh
"使用MCP GitHub仓库创建器分析这个仓库并为其创建一个GitHub仓库。"
gh)。安装并认证GitHub CLI:
# 安装GitHub CLI(请参阅https://cli.github.com/)
# macOS
brew install gh
# Ubuntu/Debian
sudo apt install gh
# 认证
gh auth login
本服务器实现了模型上下文协议规范,使其与各种AI应用兼容:
mcp-github-repo-creator/
├── server.py # 使用FastMCP的主MCP服务器
├── core/
│ ├── repository_analyzer.py # 仓库分析逻辑
│ └── templates.py # 消息和指令的字符串模板
├── create_github_repo.py # 旧版独立脚本
├── demo.py # 演示MCP客户端
├── requirements.txt # 包括MCP SDK的依赖项
├── setup.sh # 环境设置脚本
├── pyproject.toml # 可选的项目元数据
├── .gitignore # Git忽略规则
└── README.md # 本文件
server.py:向AI客户端提供工具的主MCP服务器。core/repository_analyzer.py:包含RepositoryAnalyzer类,用于分析仓库结构并生成元数据。core/templates.py:用于存储所有长字符串消息和指令的模板函数。create_github_repo.py:旧版独立脚本(可直接使用)。demo.py:展示如何与MCP服务器交互的示例客户端。服务器生成的元数据格式如下:
{
"repository_name": "my-awesome-project",
"description": "🚀 用于自动创建GitHub仓库的强大工具",
"topics": ["python", "automation", "github", "mcp", "ai-tools"],
"created_date": "2025-01-01",
"project_type": "CLI工具",
"primary_language": "Python",
"license": "GPL-3.0",
"features": [
"命令行界面",
"GitHub集成",
"自动分析"
]
}
MCP服务器可自动检测并正确分类各种项目类型:
自动检测并支持多种编程语言: 主要语言:Python、JavaScript、TypeScript、Java、C++、C#、Go、Rust、PHP、Ruby、Swift、Kotlin、Scala、R、Shell/Bash。 Web技术:HTML、CSS、Vue、React (JSX/TSX)、Svelte、SCSS/Sass、Less。 专业语言:SQL、YAML、TOML、JSON、Dockerfile、Makefile。 分析器通过检查文件扩展名、依赖项和项目结构来准确确定主要语言和技术栈。
MCP服务器提供了全面的错误处理机制,针对常见问题给出清晰的错误信息:
# 初始化Git仓库
git init
# 添加文件并进行初始提交
git add .
git commit -m "Initial commit"
# 检查认证状态
gh auth status
# 如果需要,重新认证
gh auth login
解决方案:
gh auth status。解决方案:
解决方案:
gh auth login)。解决方案:
github_repo_metadata.json文件是否存在语法错误。解决方案:
本项目采用GNU通用公共许可证v3.0,详情请参阅LICENSE文件。
使用模型上下文协议精心打造 ❤️