Skip to main content

MCP server & CLI that helps you easily install GitHub projects — zero dependencies

Project description

gitinstall

MCP server & CLI — helps you easily install GitHub projects
让你轻松安装 GitHub 项目

MIT License PyPI MCP Protocol Zero Dependencies Platforms

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:

  1. Detect your system (OS, GPU, runtimes, package managers)
  2. Plan the installation with intelligent multi-strategy planning
  3. Execute safely with dangerous command blocking
  4. Auto-fix errors (PEP 668, CUDA mismatch, missing tools, and more)
  5. 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 7 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
uninstall_github_project Safely uninstall a project: removes files, venvs, Docker, caches

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 install fails with PEP 668, auto-fixes with python -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 uninstall comfyanonymous/ComfyUI --confirm  # Safely uninstall
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

gitinstall-1.2.0.tar.gz (311.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitinstall-1.2.0-py3-none-any.whl (343.7 kB view details)

Uploaded Python 3

File details

Details for the file gitinstall-1.2.0.tar.gz.

File metadata

  • Download URL: gitinstall-1.2.0.tar.gz
  • Upload date:
  • Size: 311.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for gitinstall-1.2.0.tar.gz
Algorithm Hash digest
SHA256 090efe6f4f1412662a2db7362bd7263555ac086eba9331c3680a6f457c3197d1
MD5 97301288d1f9499ef4775ced78bfa707
BLAKE2b-256 b28f681894dc4197158b90b1d4fc91fa533d4728aa0691cae7159819e1228303

See more details on using hashes here.

File details

Details for the file gitinstall-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: gitinstall-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 343.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for gitinstall-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9612f435d188b5668acb6f80a22780e23820aeb47bdb515891c07b7cbf50eae0
MD5 8544547658f370e9a82fd56645711994
BLAKE2b-256 b1687bc2d9ebba94742832ed21678b641a341926919725ac081b124f8e1aeb63

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page