vm-forgeyard MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vm-forgeyard MCPcreate a test VM with 2 cores and 4GB RAM"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
vm-forgeyard
vm-forgeyard is a host-local KVM control plane for test and development
virtual machines.
It provides:
control-api: VM lifecycle, capacity, operation, IP reservation, image, run, and namespace disk endpointslock-api: FIFO lock queue by namespace/resourcemcp-api: HTTP MCP adapter for agents that need to request VMs and inspect stateroot-vm-exec: a narrow request-file executor for qcow2, libvirt lifecycle, guest bootstrap, runtime inspection, and cleanup actionsSQLite-backed control-plane state
dry-run modes for API and executor workflow verification
Status
This repository is the public code mirror. Private deployment inventory, local hostnames, credentials, and site-specific automation are intentionally excluded.
Related MCP server: Azure MCP Server
Install
python -m pip install -e .Start the APIs with a host-specific config:
python -m kvm_control --config ./config.example.yaml control-api
python -m kvm_control --config ./config.example.yaml lock-api
python -m kvm_control --config ./config.example.yaml mcp-apiUse config.example.yaml as a starting point. For real VM lifecycle operations, point the storage paths at durable host storage, set auth credentials, and run the executor through an appropriately constrained privilege boundary.
Auth
If auth.admin_token or auth.admin_token_hash is set, the control and lock
APIs require bearer-token authentication by default. The admin token can create
persistent dev or repository tokens through:
POST /v1/admin/auth/tokensRepository tokens use git.<repo> usernames and inherit that effective
namespace. The reserved dev token accepts caller-provided namespaces and
normalizes unprefixed names to dev.<name>.
auth.mode: open exists only as a rollout bridge. Requests without credentials
run as anonymous admin, while provided credentials are still validated.
Development Checks
Run the unit test suite:
PYTHONPATH=src python -m unittest discover -s tests -vRun dry-run smoke checks:
PYTHONPATH=src python scripts/sandbox_api_smoke.py
PYTHONPATH=src python scripts/check_api_dry_run.py
PYTHONPATH=src python scripts/check_browser_mobile_layer2_dry_run.pyCheck an MCP endpoint:
PYTHONPATH=src python scripts/check_mcp_agent_workflow.py --url http://127.0.0.1:8002/mcpPublic Scope
The initial public repository contains the application code, unit tests, dry-run checks, static status UI assets, and an example configuration.
Deployment automation is intentionally not included yet. Ansible roles should be published only after their defaults and examples are generalized enough to be useful outside one infrastructure environment.
License
vm-forgeyard is licensed under the GNU General Public License version 2.0. See LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/idle-infer-dev/vm-forgeyard'
If you have feedback or need assistance with the MCP directory API, please join our Discord server