Decision Gate CLI
The Decision Gate CLI is the user-facing command surface for MCP server operation, MCP client tooling, runpack workflows, authoring utilities, and registry/docs helpers. It is part of the Decision Gate OSS repo and ships alongside the core crates.
What it covers
- Running the MCP server with a local configuration.
- Validating configuration, authoring inputs, and runpack artifacts.
- MCP client access to tools and resources over HTTP, SSE, or stdio.
- Provider discovery and schema registry workflows.
- Documentation search and resource reading via MCP.
- Interop evaluation for end-to-end tooling checks.
- Contract and SDK generation/verification wrappers.
Current shape (as of February 1, 2026)
Command names and groups are stable and cover the full MCP tool surface plus
contract and SDK wrappers. Use decision-gate --help to see the authoritative,
version-specific flags.
Quickstart workflows
Serve with a preset config
decision-gate serve --config configs/presets/default-recommended.toml
For local development without a prebuilt binary:
cargo run -p decision-gate-cli -- serve --config configs/presets/default-recommended.toml
Validate or normalize authoring input
decision-gate authoring validate --input examples/scenario.ron --format ron
decision-gate authoring normalize --input examples/scenario.ron --format ron \
--output examples/scenario.json
Runpack export and verification
decision-gate runpack export --help
decision-gate runpack verify --help
Inspect MCP tools and docs
decision-gate mcp tools list --transport http --endpoint http://127.0.0.1:8080/rpc
decision-gate docs search --transport http --endpoint http://127.0.0.1:8080/rpc --query "runpack"
Command surface (summary)
| Area | Command | Purpose |
|---|---|---|
| Server | serve | Run the Decision Gate MCP server from a config. |
| Config | config validate | Validate decision-gate.toml and exit with status. |
| Authoring | authoring validate | Validate ScenarioSpec input (RON/JSON). |
| Authoring | authoring normalize | Normalize to canonical JSON (RFC 8785). |
| Runpacks | runpack export | Export a runpack for offline use. |
| Runpacks | runpack verify | Verify runpack integrity offline. |
| Providers | provider list | List configured providers and checks. |
| Providers | provider contract get | Fetch provider contract JSON. |
| Providers | provider check-schema get | Fetch provider check schema metadata. |
| Schemas | schema register | Register a schema record. |
| Schemas | schema list | List schemas for a tenant/namespace. |
| Schemas | schema get | Fetch schema by id/version. |
| Docs | docs search | Search documentation sections. |
| Docs | docs list | List documentation resources. |
| Docs | docs read | Read a documentation resource URI. |
| Interop | interop eval | Evaluate an interop run against an MCP server. |
| MCP tools | mcp tools list | List MCP tool definitions. |
| MCP tools | mcp tools call | Call an MCP tool by name. |
| MCP resources | mcp resources list | List MCP resources. |
| MCP resources | mcp resources read | Read an MCP resource by URI. |
| MCP typed tools | mcp tool <tool> | Typed wrapper for every MCP tool. |
| Contract | contract generate | Generate contract artifacts. |
| Contract | contract check | Verify contract artifacts. |
| SDK | sdk generate | Generate SDK/OpenAPI artifacts. |
| SDK | sdk check | Verify SDK/OpenAPI artifacts. |
MCP client options
--transport http|sse|stdioselects the MCP transport.--endpointsets the HTTP/SSE URL;--stdio-commandplus args/env configures stdio.--bearer-token,--client-subject,--auth-profile, and--auth-configcontrol auth.--jsonor--inputsupplies tool payloads;--no-validateskips schema checks.
Typed MCP tool wrappers
Use decision-gate mcp tool <name> for typed wrappers across the full tool surface:
- Scenario lifecycle:
scenario-define,scenario-start,scenario-status,scenario-next,scenario-submit,scenario-trigger,scenarios-list - Evidence and runpacks:
evidence-query,runpack-export,runpack-verify,precheck - Providers and schemas:
providers-list,provider-contract-get,provider-check-schema-get,schemas-register,schemas-list,schemas-get - Docs:
decision-gate-docs-search
Language selection
Current CLI catalogs ship for EN (English) and CA (Catalan), with additional
languages planned. Use --lang en|ca or set DECISION_GATE_LANG. Non-English
output emits a machine-translation disclaimer.
Safety model and guardrails
- Inputs are validated and fail closed on errors.
- File reads and MCP payloads are size-bounded to avoid untrusted payload exhaustion.
- MCP tool inputs are schema-validated by default (use
--no-validateonly when required). - Non-loopback HTTP/SSE binds require explicit CLI opt-in plus TLS and non-local auth.
- Machine-readable outputs default to canonical JSON; select commands offer text/markdown formats.