mcpjam collects anonymous command-level telemetry so we can understand CLI usage and reliability. Telemetry is designed for aggregate product insight, not user or server inspection.
Telemetry is enabled by default. The first command invocation that is not opted out writes telemetry.json with enabled: true and a random install UUID.
What’s collected
The CLI emits onecli_command event after a command action starts. Event properties are limited to:
What’s not collected
Telemetry does not collect raw argv, URLs, hostnames, ports, tokens, headers, environment values, working directories, file paths, tool names, resource names, prompt names, error messages, stack traces, repository names, branch names, workflow names, or CI job IDs.Install ID
Telemetry uses a random install UUID as the eventdistinct_id. The UUID is stored in the same platform cache directory used by update checks, in a telemetry.json file:
The install ID is created on the first real telemetry capture or when you run
mcpjam telemetry enable. Running mcpjam telemetry disable before an ID exists does not create one.
Opt out
Disable telemetry for one invocation:--no-telemetry overrides environment and persisted state for the current invocation. Disable environment variables override persisted state.
Debug mode
SetMCPJAM_TELEMETRY_DEBUG=1 to print the exact sanitized payload to stderr instead of sending it:
--no-telemetry, DO_NOT_TRACK=1, MCPJAM_TELEMETRY_DISABLED=1, or persisted disabled state applies, no payload is logged or sent.
