MCP GitHub仓库创建者
A. 模型上下文协议(MCP) 服务器,为GitHub Copilot等人工智能应用程序提供工具,以分析存储库并自动创建GitHub存储库。
🚀 特性
- 存储库分析:自动分析本地git存储库以提取元数据。包括分析存储库的传统方法和人工智能方法
- GitHub集成:使用适当的配置创建私有GitHub存储库
- 主题管理:根据项目分析自动添加相关主题
- MCP兼容:适用于任何兼容MCP的AI客户端(Copilot、Claude等)
- 自动设置:从分析到GitHub存储库创建的完整工作流程
📦 安装
- 克隆此存储库:
git clone https://github.com/flickleafy/mcp-github-repo-creator.git
cd mcp-github-repo-creator- 运行安装脚本:
bash setup.sh这将:
- 创建Python虚拟环境 - 安装MCP SDK和依赖项 - 设置项目以供使用
🛠 用法
作为MCP服务器(推荐)
服务器为AI应用程序提供以下工具:
get_repo_analysis_instructions-获取存储库分析的详细说明analyze_and_generate_metadata_file-分析存储库并生成元数据create_github_repo_from_metadata-从元数据JSON创建GitHub存储库create_github_repository-使用现有元数据文件创建存储库full_repository_setup-完整的工作流程:分析→ 创建→ 连接
启动MCP服务器
# Activate virtual environment
source venv/bin/activate
# Start the MCP server
python server.py服务器在stdio传输上运行,与MCP客户端兼容,如:
- GitHub Copilot
- 克劳德桌面
- VS代码扩展
- 自定义MCP客户端
MCP客户端集成
配置您的MCP客户端以连接到此服务器:
{
"name": "github-repo-creator",
"command": "python",
"args": ["server.py"],
"cwd": "/path/to/mcp-github-repo-creator"
}手动使用(替代)
您还可以直接使用底层功能:
# Activate virtual environment
source venv/bin/activate
# Interactive mode
python create_github_repo.py
# Direct repository creation
python create_github_repo.py --create
# Manage topics only
python create_github_repo.py --manage-topics🎯 工作流程
- 分析:AI分析您的存储库结构、README、依赖关系和代码
- 元数据生成:创建
github_repo_metadata.json包含存储库详细信息 - 存储库创建:使用GitHub CLI创建私有存储库
- 配置:设置主题、启用功能并连接本地存储库
- 推:将您的本地代码推送到新的GitHub存储库
🔄 详细的工作流类型
MCP服务器支持三种主要的工作流程方法:
🤝 交互式副驾驶工作流程(推荐)
这种方法为Copilot提供了更多的控制权,并允许定制:
- 请求分析说明:请Copilot分析存储库
- 副驾驶用途 get_repo_analysis_instructions - 获取有关分析内容的详细说明 - 分析您的存储库结构、README和代码
- 生成元数据:Copilot创建元数据JSON
- 根据其分析,Copilot生成存储库元数据 - 在继续之前,您可以查看和修改元数据
- 创建存储库:Copilot创建GitHub存储库
- 用途 create_github_repo_from_metadata 使用生成的元数据 - 创建存储库、推送代码和配置设置
聊天示例:
"Please analyze this repository and create a GitHub repository for it.
I want to review the metadata before you create the repo."⚡ 全自动化工作流程
无需交互即可实现完全自动化:
- 单一命令设置:使用
full_repository_setup工具
- 自动分析存储库 - 生成元数据文件 - 创建GitHub存储库 - 连接并推送代码 - 一步到位
聊天示例:
"Automatically set up this project on GitHub with full automation."🛠️ 手动/分步工作流程
对于每个步骤的粒度控制:
- 生成元数据文件:
analyze_and_generate_metadata_file - 查看/编辑 生成
github_repo_metadata.json - 创建存储库:
create_github_repository
聊天示例:
"First, generate a metadata file for this repository. I want to review it before creating the GitHub repo."💬 Copilot的使用示例
配置后,您可以将这些自然语言命令与Copilot一起使用:
分析存储库
"Analyze this repository and tell me what metadata would be generated for GitHub."生成元数据文件
"Generate a github_repo_metadata.json file for this repository."创建GitHub存储库
"Create a GitHub repository for this local project. First analyze it, generate metadata, then create the GitHub repo and connect everything."完整设置
"Set up this entire project on GitHub - analyze the code, create appropriate metadata, and create the repository."分步示例
"Please create a GitHub repository for this project. Analyze the code,
generate appropriate metadata, and set up the repository on GitHub."副驾驶将:
- 分析你的项目结构和代码
- 检测编程语言和框架
- 生成主题和描述
- 创建
github_repo_metadata.json - 创建GitHub存储库
- 将您的本地仓库连接到GitHub
- 推送你的代码
🚀 副驾驶集成和安装
副驾驶集成的先决条件
- GitHub Copilot订阅 (个人、企业或企业)
- 带有GitHub Copilot扩展的VS代码
- GitHub命令行界面 已安装并验证
方法1:VS代码副本集成(推荐)
- 安装GitHub CLI:
# macOS
brew install gh
# Ubuntu/Debian
sudo apt install gh
# Windows (using winget)
winget install GitHub.cli- 验证GitHub CLI:
gh auth login- 克隆并设置此MCP服务器:
git clone https://github.com/flickleafy/mcp-github-repo-creator.git
cd mcp-github-repo-creator
bash setup.sh- 配置VS代码设置 (添加到您的VS代码设置.json中):
{
"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}"
}
}
}
}方法2:Claude桌面集成
- 安装克劳德桌面 从 克劳德·艾
- 配置Claude桌面 (编辑
~/.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"
}
}
}
}- 重新启动克劳德桌面 并开始使用命令
自动安装脚本
通过运行以下命令创建简单的安装脚本:
# Download and run the auto-installer
curl -sSL https://raw.githubusercontent.com/flickleafy/mcp-github-repo-creator/main/install-copilot.sh | bash或者在项目中手动创建安装程序脚本:
# Create installer script
cat > install-copilot.sh /dev/null 2>&1 || { echo "❌ Python 3 is required but not installed."; exit 1; }
command -v git >/dev/null 2>&1 || { echo "❌ Git is required but not installed."; exit 1; }
# Install GitHub CLI if not present
if ! command -v gh &> /dev/null; then
echo "📦 Installing GitHub CLI..."
if [[ "$OSTYPE" == "darwin"* ]]; then
brew install gh
elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
sudo apt update && sudo apt install gh
else
echo "⚠️ Please install GitHub CLI manually: https://cli.github.com/"
exit 1
fi
fi
# Clone repository
INSTALL_DIR="$HOME/.mcp-servers/github-repo-creator"
echo "📁 Installing to $INSTALL_DIR..."
mkdir -p "$HOME/.mcp-servers"
git clone https://github.com/flickleafy/mcp-github-repo-creator.git "$INSTALL_DIR"
# Setup virtual environment
cd "$INSTALL_DIR"
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Create VS Code configuration
VSCODE_CONFIG="$HOME/.config/Code/User/settings.json"
echo "⚙️ Adding VS Code configuration..."
# Add MCP server configuration to VS Code settings
echo "✅ Installation complete!"
echo "🔧 Next steps:"
echo "1. Authenticate with GitHub: gh auth login"
echo "2. Restart VS Code"
echo "3. Start using Copilot with MCP commands!"
EOF
chmod +x install-copilot.sh测试集成
- 在VS Code中打开git存储库
- 与Copilot开始聊天 并尝试:
"Use the MCP GitHub Repository Creator to analyze this repository and create a GitHub repo for it."- 副驾驶应作出回应 通过存储库分析,并提议创建GitHub存储库
📋 需求
- Python 3.8+
- Git存储库(本地)
- GitHub命令行界面(
gh)已安装并验证 - 用于GitHub API调用的Internet连接
GitHub CLI设置
安装并验证GitHub CLI:
# Install GitHub CLI (see https://cli.github.com/)
# macOS
brew install gh
# Ubuntu/Debian
sudo apt install gh
# Authenticate
gh auth login🔧 MCP集成
此服务器实现 模型上下文协议 规范,使其与各种AI应用程序兼容:
可用工具
- 存储库分析:自动提取项目元数据
- GitHub存储库创建:使用适当的设置创建存储库
- 主题管理:根据分析添加相关主题
- 完成工作流程:端到端存储库设置
支持的交通工具
- 标准输入输出 (默认):直接集成的标准输入/输出
- 与FastMCP框架兼容,易于部署
📁 项目结构
mcp-github-repo-creator/
├── server.py # Main MCP server using FastMCP
├── core/
│ ├── repository_analyzer.py # Repository analysis logic
│ └── templates.py # String templates for messages and instructions
├── create_github_repo.py # Legacy standalone script
├── demo.py # Demo MCP client
├── requirements.txt # Dependencies including MCP SDK
├── setup.sh # Environment setup script
├── pyproject.toml # Optional project metadata
├── .gitignore # Git ignore rules
└── README.md # This file核心模块
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": "🚀 A powerful tool for automating GitHub repository creation",
"topics": ["python", "automation", "github", "mcp", "ai-tools"],
"created_date": "2025-01-01",
"project_type": "CLI Tool",
"primary_language": "Python",
"license": "GPL-3.0",
"features": [
"Command-line interface",
"GitHub integration",
"Automated analysis"
]
}🎯 支持的项目类型
MCP服务器自动检测并正确分类各种项目类型:
- AI/ML项目:检测TensorFlow、PyTorch、scikit-learn、Transformers、Langchain
- Web应用程序:React、Vue、Angular、Svelte、Flask、Django、FastAPI、Express、Next.js
- CLI工具:命令行应用程序和实用程序
- 应用程序编程接口:RESTful服务、GraphQL和微服务
- 移动应用:React Native、Flutter、Ionic
- 桌面应用程序:电子、牛磺酸、PyQt、Tkinter
- 图书馆:软件包、框架和SDK
- 游戏开发:Unity、Godot、Pygame
- DevOps工具:Docker、Kubernetes、Terraform配置
- 数据科学:Jupyter笔记本、数据分析项目
🌐 语言检测
自动检测并支持多种编程语言:
主要语言: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
分析器检查文件扩展名、依赖关系和项目结构,以准确确定主要语言和技术栈。
🛡️ 安全与隐私
- 安全认证:使用GitHub CLI进行安全的基于令牌的身份验证
- 默认情况下为私有:默认情况下创建私有存储库以确保安全
- 无数据存储:元数据文件中没有存储敏感数据
- 本地处理:存储库分析在您的计算机上本地进行
- GitHub最佳实践:遵循GitHub的安全建议
- 令牌范围:通过GitHub CLI使用所需的最小权限
⚠️ 局限性
- 需要GitHub CLI:必须安装并验证GitHub CLI
- 需要Git存储库:必须在git存储库中通过提交运行
- 私人存储库:仅创建私有存储库(创建后可以手动更改)
- GitHub API限制:受GitHub API费率限制
- 主题限制:仅限于符合GitHub主题要求的存储库(最多20个主题)
- 依赖网:需要互联网连接才能调用GitHub API
🔧 错误处理
MCP服务器提供全面的错误处理,并为常见问题提供清晰的消息:
存储库错误
- 缺少git存储库:初始化git的明确说明
- 无承诺:作出初步承诺的指导
- 未跟踪文件:提示添加和提交文件
身份验证错误
- 未找到GitHub CLI:安装说明
- 未认证:身份验证设置指南
- 令牌已过期:重新身份验证步骤
GitHub API 错误
- 存储库名称冲突:关于替代名称的建议
- 权限问题:故障排除步骤
- 速率限制:等待时间建议
🆘 故障排除
常见问题及解决方法
“不是git仓库”错误
# Initialize git repository
git init
# Add files and make initial commit
git add .
git commit -m "Initial commit"“GitHub CLI未通过身份验证”错误
# Check authentication status
gh auth status
# Re-authenticate if needed
gh auth login“权限被拒绝”错误
解决:
- 检查GitHub CLI身份验证:
gh auth status - 确保您有权在您的帐户中创建存储库
- 验证您的GitHub令牌是否具有适当的作用域
- 对于组织存储库,请检查组织权限
“存储库名称已存在”错误
解决:
- 选择其他存储库名称
- 检查您的GitHub帐户以获取现有存储库
- 使用错误消息中建议的替代名称
- 添加后缀或前缀以使名称唯一
“超过了GitHub API速率限制”错误
解决:
- 等待速率限制重置(通常为1小时)
- 使用经过身份验证的请求(确保
gh auth login已完成) - 对于高容量使用,请考虑GitHub API速率限制最佳实践
“元数据格式无效”错误
解决:
- 检查生成的
github_repo_metadata.json语法错误 - 确保所有必填字段都存在
- 使用JSON验证器验证JSON格式
- 重新运行元数据生成工具
“网络连接问题”错误
解决:
- 检查互联网连接
- 验证GitHub.com是否可访问
- 检查防火墙或代理问题
- 请在网络问题解决后重试
🤝 贡献
- 如果你喜欢这个项目,给一个⭐ 到存储库
- 创建功能分支,进行更改,提交拉取请求
- 确保你的代码遵循项目的编码标准
- 为新功能或错误修复添加测试
- 根据需要更新文档
📜 许可证
此项目根据GNU通用公共许可证v3.0获得许可-有关详细信息,请参阅许可证文件。
🔗 链接
______________________________________________________________________
*内置于❤️ 使用模型上下文协议*
