Dvarは、server descriptionを盲信せずにModel Context Protocolのツール境界を検査し、enforceできます。レビューworkflowはinventory、semantic diff、明示的なlockfileに基づきます。
MCPサーバーをscanする
npx dvar scan https://mcp.example.com/mcp \
--server-id production-crm \
--out dvar.inventory.jsoninventoryには、観測されたserver metadata、tool name、description、schema、annotation、推定capability、destination、risk、canonical hashが記録されます。
レビューしてlockする
npx dvar diff dvar.inventory.json --lockfile dvar.lock.json
npx dvar lock dvar.inventory.json --out dvar.lock.jsonscanはdvar.lock.jsonを変更しません。lockfileはapproval recordです。schema、description、annotation、destination、capabilityの変更はreview eventとして扱ってください。
MCP呼び出しをenforceする
npx dvar proxy \
--upstream https://mcp.example.com/mcp \
--server-id production-crm \
--policy dvar.yaml \
--lockfile dvar.lock.json \
--listen 127.0.0.1:4319MCP clientをlocal proxyへ向けます。Dvarはrequestをupstreamへ転送する前にtools/callを評価します。
Integrity policy
integrity:
requireLockfile: true
onUnknownServer: deny
onUnknownTool: require_approval
onDescriptionChange: require_approval
onSchemaChange: deny
onCapabilityExpansion: denystrictモードでは、未宣言のintegrity failureはfail closedします。monitorモードでは、Dvarは呼び出しを転送しつつwould_denyまたはwould_require_approvalを記録します。
セキュリティ境界
lockfileはレビュー済みinventoryの継続性を証明します。remote serverの実装が安全であることは証明しません。application authorization、tenant check、OAuth scope、network control、secret managementは維持してください。