No description
| examples | ||
| src/pyro_mcp | ||
| tests | ||
| .gitattributes | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .python-version | ||
| AGENTS.md | ||
| Makefile | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
pyro-mcp
pyro-mcp is an MCP-compatible tool package for running ephemeral development environments with a VM lifecycle API.
v0.1.0 Capabilities
- Split lifecycle tools for coding agents:
vm_list_profiles,vm_create,vm_start,vm_exec,vm_stop,vm_delete,vm_status,vm_reap_expired. - Standard environment profiles:
debian-base: minimal Debian shell/core Unix tools.debian-git: Debian base with Git preinstalled.debian-build: Debian Git profile with common build tooling.- Explicit sizing contract for agents (
vcpu_count,mem_mib) with guardrails. - Strict ephemerality for command execution (
vm_execauto-deletes VM on completion). - Ollama demo that asks an LLM to run
git --versionthrough lifecycle tools.
Runtime
The package includes a bundled Linux x86_64 runtime payload:
- Firecracker binary
- Jailer binary
- Profile artifacts for
debian-base,debian-git, anddebian-build
No system Firecracker installation is required for basic usage.
Host requirements still apply:
- Linux host
/dev/kvmavailable for full virtualization mode
Requirements
- Python 3.12+
uv- Optional for Ollama demo: local Ollama server and
llama:3.2-3bmodel.
Setup
make setup
Run deterministic lifecycle demo
make demo
The demo creates a VM, starts it, runs git --version, and returns structured output.
Runtime doctor
make doctor
This prints bundled runtime paths, profile availability, checksum validation status, and KVM host checks.
Run Ollama lifecycle demo
ollama serve
ollama pull llama:3.2-3b
make ollama-demo
Defaults are configured in Makefile.
The demo streams lifecycle progress logs and ends with a short text summary.
Run MCP server
make run-server
Quality checks
make check
Includes ruff, mypy, and pytest with coverage threshold.
Pre-commit
make install-hooks
Hooks execute the same lint/type/test gates.