Existing MCP packages
There are thousands of MCP servers already. A plugin can point at one instead of shipping code of its own.
From PyPI
tools:
- id: fetch
package: pypi:mcp-server-fetch==2026.8.18
affinity: any
Each pypi: package gets a virtual environment of its own, built with uv on the node. The node starts it with the package's own name as the command; when the command differs, set it with mcp:
- id: git
package: pypi:mcp-server-git==<version>
mcp: ["mcp-server-git", "--repository", "/srv/repo"]
From npm
tools:
- id: everything
package: npm:@modelcontextprotocol/server-everything@<version>
npm packages run on Node.js 24 LTS, which the node installs on first use. Install scripts do not run, and the package starts as node <bin script>, without a shell.
A remote server
tools:
- id: search
url: https://mcp.example.com/mcp
Remote MCP servers are reached over Streamable HTTP. Use https://; plugin lint warns about http://.
Pinning
A package without a version is pinned by the edge to the newest version the registry lists at install time, so every node runs the same one. plugin lint warns about unpinned packages; pin them yourself to know exactly what runs.
oci: (container images) and binary: (a downloaded executable) packages are accepted by the manifest but not run yet; the node skips them with a warning.