Configure the MCP Server
The Model Context Protocol (MCP) enables AI coding assistants like Claude Desktop, Cursor, and Cline to call local tools.
DynoCap includes a first-party MCP server package (@dynocap/mcp) that exposes tools for starting tasks, executing commands in an isolated Linux microVM, inspecting diffs, and exporting patches.
Prerequisites
- DynoCap CLI installed (
brew install baires/tap/dynocap, the curl installer, or./scripts/build-macos.shfrom a checkout). - The runtime your projects use, prepared with
dynocap doctor --fix ./project(or--runtime python:3.14, for example). When a task omitsruntimes, DynoCap picks one from the project’s files, the same wayclonedoes, and falls back toshell:1(bash, git, ssh). The task result reports the runtime used. - Build the TypeScript packages:
Shell npm run typecheck npm run --prefix sdk/mcp build
MCP Server Security Policies
By default, @dynocap/mcp enforces strict security boundaries:
- Offline Only by Default: The LLM cannot allocate network interfaces or connect to external hosts.
- Opt-in Network Modes: You must explicitly enable network flags via environment variables when launching the server:
DYNOCAP_MCP_ALLOW_FILTERED=1: Permits HTTPS access to the task runtime’s package registry (registry.npmjs.orgfor node,pypi.organdfiles.pythonhosted.orgfor python,proxy.golang.organdsum.golang.orgfor go, and none forshell:1) and, for a repository URL, that URL’s host.DYNOCAP_MCP_ALLOW_NAT=1: Permits unrestricted outbound NAT connectivity.
- Server-chosen host paths:
projectPathmust be insideDYNOCAP_MCP_ROOTS(default: the server’s working directory) and is never the home directory or a dot directory in it. Desktop clients often start servers from/or~, which leaves no default root, so setDYNOCAP_MCP_ROOTSto your project directories. - Repository hosts and keys:
repositoryUrlmust name a host inDYNOCAP_MCP_GIT_HOSTS(defaultgithub.com,gitlab.com,bitbucket.org), andsshKeyPathneedsDYNOCAP_MCP_ALLOW_SSH_KEY=1.
Filtered egress limits destinations, not what leaves: the registries and Git hosts it allows accept uploads. See What filtered egress does not stop.
Connecting to Claude Desktop
Add DynoCap to your Claude Desktop configuration file:
📁 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"dynocap": {
"command": "node",
"args": ["/Users/YOUR_USER/playground/dynocap/sdk/mcp/dist/bin.js"],
"env": {
"DYNOCAP_MCP_ALLOW_FILTERED": "1",
"DYNOCAP_MCP_ROOTS": "/Users/YOUR_USER/code"
}
}
}
}Restart Claude Desktop. You will see the DynoCap tools appear in the hammer icon list.
Connecting to Cursor
To configure Cursor to use DynoCap:
- Open Cursor Settings -> Features -> MCP Servers.
- Click + Add New MCP Server.
- Set:
- Name:
dynocap - Type:
command - Command:
node /Users/YOUR_USER/playground/dynocap/sdk/mcp/dist/bin.js
- Name:
Connecting to Cline / Roo-Code
In Cline/Roo-Code MCP settings:
{
"mcpServers": {
"dynocap": {
"command": "node",
"args": ["/Users/YOUR_USER/playground/dynocap/sdk/mcp/dist/bin.js"],
"env": {
"DYNOCAP_MCP_ALLOW_FILTERED": "1"
}
}
}
}Available MCP Tools
Once connected, your AI assistant can use the following tools:
| MCP Tool | Purpose |
|---|---|
dynocap_task_start |
Imports a project tree or Git URL into an isolated task sandbox. |
dynocap_task_exec |
Runs a shell command inside the task’s /workspace. Streams output. |
dynocap_diff |
Previews unified Git diffs of modifications made by the agent. |
dynocap_task_finish |
Shuts down the sandbox and saves the verified patch and execution logs. |
dynocap_ls |
Lists active sandboxes and retained task records. |
dynocap_rm |
Destroys sandboxes or purges retained task directories. |
dynocap_run |
Boots a raw Linux sandbox without a project tree. |
dynocap_exec |
Executes a command inside a raw sandbox. |
dynocap_destroy |
Destroys a raw sandbox. |
Typical Prompt Example
You can prompt your assistant like this:
“Clone
./my-web-appinto a DynoCap sandbox namedfeature-auth. Runnpm testinside the sandbox to make sure it’s green. Then implement OAuth token validation insrc/auth.js, verify the tests pass, show me the diff preview, and finish the task.”
The assistant will autonomously invoke dynocap_task_start, dynocap_task_exec, dynocap_diff, and dynocap_task_finish safely within the Linux microVM.
This page is also plain Markdown, for agents and for you.