MCP is treated as a controlled execution boundary.
The tracked default is strict-local.
Properties:
The source of truth lives in mcp-policy.json. Approved package pins live in mcp-lock.json. Tracked server registry entries live in mcp-registry.json.
Current defaults:
npx, node, uvxstdio, http/, /home, /Users^--allow-.*, ^--unsafe$, ^\\*$github, brave-search, fetch, puppeteer, filesystemhttps:// and registry-declared OAuth2Run:
dot mcp --strict
dot mcp -s -j
dot mcp registry
The JSON form is the audit artifact for CI, release validation, and workstation attestation.
Any change to MCP policy requires:
Phase 2 adds explicit package locking for default MCP servers.
Current approved refs:
[email protected]@modelcontextprotocol/[email protected][email protected]dot mcp --strict and dot mcp -s now verify that:
Policy bundle baselines live in policy-bundles.json.