MCP server & CLI that gives AI agents the ability to install GitHub open-source projects — zero dependencies
Project description
gitinstall
MCP server that gives AI agents the ability to install GitHub open-source projects
让 AI Agent 拥有安装 GitHub 开源项目的能力
Zero external dependencies · Pure Python stdlib · Works without any LLM
The Problem
AI agents can write code, explain errors, and suggest commands — but they can't actually install software on your machine. When you say "help me set up ComfyUI", the AI gives you a wall of commands and hopes for the best.
gitinstall bridges this gap. It's an MCP server that gives any AI agent (Claude, Cursor, Copilot, etc.) the ability to:
- Detect your system (OS, GPU, runtimes, package managers)
- Plan the installation with intelligent multi-strategy planning
- Execute safely with dangerous command blocking
- Auto-fix errors (PEP 668, CUDA mismatch, missing tools, and more)
- Retry with fallback strategies if the first approach fails
Quick Start
For Claude Desktop
pip install gitinstall
Add to ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"gitinstall": {
"command": "gitinstall-mcp"
}
}
}
Restart Claude Desktop. Now you can say:
"Help me install ComfyUI on this machine"
Claude will call gitinstall's tools to detect your system, generate a plan, and execute it — with real-time progress updates and automatic error recovery.
For Cursor
Add to Cursor's MCP settings:
{
"mcpServers": {
"gitinstall": {
"command": "gitinstall-mcp"
}
}
}
For VS Code (Copilot)
Add to your VS Code settings.json:
{
"mcp": {
"servers": {
"gitinstall": {
"command": "gitinstall-mcp"
}
}
}
}
For any MCP client
gitinstall-mcp # Starts MCP server on stdio (JSON-RPC 2.0)
MCP Tools
gitinstall exposes 6 tools via MCP:
| Tool | What it does |
|---|---|
install_github_project |
End-to-end installation: detect → plan → execute → auto-fix → fallback retry |
diagnose_install_error |
Diagnose any build/install error and return fix commands |
detect_environment |
Report OS, CPU, GPU, runtimes, package managers, disk space |
get_project_info |
Fetch GitHub project metadata without installing |
check_system_health |
Full system diagnostic with fix suggestions |
audit_dependencies |
Scan project dependencies for known CVEs |
Example: install_github_project
The AI calls:
{
"name": "install_github_project",
"arguments": {
"project": "comfyanonymous/ComfyUI"
}
}
gitinstall handles everything:
- Detects macOS Apple Silicon M3 + Python 3.12 + brew
- Generates 3-step plan (clone → install PyTorch MPS → install deps)
- Executes each step with safety checks
- If
pip installfails with PEP 668, auto-fixes withpython -m venv - Returns success status + launch command
Example: diagnose_install_error
Pass any build error to the AI, and gitinstall will identify the root cause and return fix commands automatically. Supports PEP 668, CUDA version mismatches, missing system libraries, and many more common patterns.
What makes it different
No LLM required
The core engine is a rule-based system, not an AI wrapper:
- Extensive library of known projects with hand-crafted installation recipes
- Wide language coverage with intelligent type detection
- Comprehensive error-fix rules covering real-world installation failures
- LLM is optional — only used when the rule engine isn't confident
Zero dependencies
$ pip show gitinstall | grep Requires
Requires:
Pure Python standard library. No requests, no click, no rich. One pip install and it works. No dependency conflicts, ever.
Safety built-in
- Dangerous command patterns blocked (including encoding bypass attempts)
- SSRF protection on URL fetching
- No auto-sudo — prompts explicitly when root needed
- Smart failure detection — stops retrying when the error is unfixable
Also works as a CLI
gitinstall works standalone too, no AI agent needed:
gitinstall comfyanonymous/ComfyUI # Install a project
gitinstall detect # Check your system
gitinstall doctor # System diagnostic
gitinstall audit pytorch/pytorch # Security audit
gitinstall plan neovim/neovim # Preview install plan
Supported Languages & Platforms
Languages: Python, Node.js, TypeScript, Rust, Go, C, C++, Java, Kotlin, Scala, Swift, Ruby, PHP, Haskell, Zig, Elixir, Erlang, and many more
Platforms: macOS (Intel + Apple Silicon), Ubuntu/Debian, Fedora/RHEL, Arch Linux, Windows 10/11, WSL2
GPU: NVIDIA CUDA, AMD ROCm, Apple MPS, CPU fallback
How It Works
User → AI Agent → MCP → gitinstall
├── detect → OS / GPU / runtimes / package managers
├── plan → intelligent multi-strategy planner
├── execute → safe subprocess execution
├── fix → error pattern matching → auto-retry
└── fallback → alternative install strategies
The planner uses a multi-tier strategy that combines project-specific knowledge, language-aware templates, and README analysis to generate optimal installation plans for a wide range of projects.
Development
git clone https://github.com/icerui/github-installer.git
cd github-installer
# Run tests
python -m pytest tests/unit/ -q
# Run locally
python tools/mcp_server.py # MCP server on stdio
python tools/main.py detect # CLI mode
License
MIT © icerui
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gitinstall-1.1.3.tar.gz.
File metadata
- Download URL: gitinstall-1.1.3.tar.gz
- Upload date:
- Size: 311.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a622e230df8491082cb66c5acf506413e3b8a82c39e648bc7a258fc99d61240
|
|
| MD5 |
3d58296c138bd7d6f078e58a6c0a73c1
|
|
| BLAKE2b-256 |
7c3740232d0f78f05df8d21ee8bed1196bd71c3ba2393f2110bb2ea96d9f666f
|
File details
Details for the file gitinstall-1.1.3-py3-none-any.whl.
File metadata
- Download URL: gitinstall-1.1.3-py3-none-any.whl
- Upload date:
- Size: 343.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57e2eaa8e8e213f5f6d14043b43355f1f990f6e191fbf918f21ef8344fdc1519
|
|
| MD5 |
7333f6725b1271042322d1a095b57534
|
|
| BLAKE2b-256 |
3c2572aab282344e62b85675af250e5e291d9581cc5a64d4e5cc686ea0ece9f5
|