# How to Disable Telemetry Collection in Desktop Commander MCP: 3 Methods to Opt Out

> Stop Desktop Commander MCP telemetry collection with 3 easy methods. Learn to disable usage data sending via config file, CLI, or natural language commands for complete opt-out.

- Repository: [Eduard Ruzga/DesktopCommanderMCP](https://github.com/wonderwhy-er/DesktopCommanderMCP)
- Tags: how-to-guide
- Published: 2026-08-02

---

**Set `telemetryEnabled` to `false` in your configuration file—or use the CLI helper or natural-language command—to completely stop Desktop Commander MCP from sending usage data.**

Desktop Commander MCP includes a built-in telemetry subsystem that tracks feature usage to inform development. This collection is controlled by a single boolean flag stored in the application configuration. According to the [wonderwhy-er/DesktopCommanderMCP](https://github.com/wonderwhy-er/DesktopCommanderMCP) source code, users can disable telemetry collection through multiple interfaces without impacting core functionality.

## Understanding the telemetryEnabled Configuration Flag

The `telemetryEnabled` entry governs all telemetry behavior in Desktop Commander MCP. By default, this value is `true`, meaning usage data flows to remote endpoints including `https://telemetry.desktopcommander.app/mp/collect`.

The flag is formally defined in [[`src/config-field-definitions.ts`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-field-definitions.ts)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-field-definitions.ts) and persisted through the configuration manager. When disabled, telemetry functions exit early—before any network request is attempted—at multiple checkpoints in the codebase.

## Method 1: Edit config.json Directly

The most straightforward approach is manual configuration file editing.

Locate your [`config.json`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/config.json) file, typically in the project root or your user-specific configuration directory. Modify or add the `telemetryEnabled` field:

```json
{
  "telemetryEnabled": false,
  "otherSettings": "..."
}

```

Save the file and restart any running Desktop Commander MCP processes. The change takes effect immediately on next launch.

## Method 2: Use the CLI Helper

Desktop Commander MCP provides a command-line interface for configuration management without requiring manual file edits.

Run the following from your project directory:

```bash
node dist/cli.js set_config_value telemetryEnabled false

```

This command invokes `configManager.setValue('telemetryEnabled', false)` defined in [[`src/config-manager.ts`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-manager.ts)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-manager.ts), ensuring proper validation and persistence. The CLI wrapper handles path resolution and JSON formatting automatically.

## Method 3: Natural-Language Command

If interacting with the Claude assistant integrated with Desktop Commander MCP, you can request the change conversationally:

```text
"Please disable Desktop Commander telemetry."

```

The assistant translates this into the same configuration update performed by Method 2, executing `set_config_value telemetryEnabled false` through the MCP protocol.

## How Telemetry Disabling Works Under the Hood

Multiple code paths respect the `telemetryEnabled` flag through early-return guards:

- **[`src/utils/capture.ts`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/utils/capture.ts)** — The core telemetry capture utility checks this flag before transmitting any event data
- **[`uninstall-claude-server.js`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/uninstall-claude-server.js)** — The uninstall script verifies the flag around lines 219-220 before sending final telemetry

These guards ensure zero network activity occurs when telemetry is disabled, not merely suppressed logging.

## Programmatic Control for Extensions

Developers building on Desktop Commander MCP can toggle telemetry programmatically through the exported configuration manager:

```javascript
import { configManager } from './src/config-manager.js';

// Disable telemetry at runtime
await configManager.setValue('telemetryEnabled', false);

// Verify current state
const isEnabled = await configManager.getValue('telemetryEnabled');
console.log(`Telemetry enabled: ${isEnabled}`);

```

## Related Documentation

- **[[`src/config-field-definitions.ts`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-field-definitions.ts)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-field-definitions.ts)** — Schema defining `telemetryEnabled` with default value `true`
- **[[`src/config-manager.ts`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-manager.ts)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/config-manager.ts)** — Read/write API for configuration persistence
- **[[`src/utils/capture.ts`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/utils/capture.ts)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/utils/capture.ts)** — Telemetry emission logic with early-exit checks
- **[[`uninstall-claude-server.js`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/uninstall-claude-server.js)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/uninstall-claude-server.js)** — Uninstall routine respecting telemetry preferences
- **[[`PRIVACY.md`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/PRIVACY.md)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/PRIVACY.md)** — Official privacy policy covering data collection practices
- **[[`README.md`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/README.md)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/README.md)** — User-facing configuration documentation

## Summary

- **Manual edit**: Modify `telemetryEnabled` to `false` in [`config.json`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/config.json)
- **CLI approach**: Execute `node dist/cli.js set_config_value telemetryEnabled false`
- **Voice command**: Ask Claude to "disable Desktop Commander telemetry"
- **Code integration**: Use `configManager.setValue('telemetryEnabled', false)` programmatically

All methods achieve identical results: telemetry guards in [`src/utils/capture.ts`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/src/utils/capture.ts) and [`uninstall-claude-server.js`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/uninstall-claude-server.js) block data transmission, and no usage information reaches remote endpoints.

## Frequently Asked Questions

### Where is the config.json file located?

The configuration file resides in your Desktop Commander MCP installation directory by default, or in your platform-specific user configuration folder. Run `node dist/cli.js get_config_value telemetryEnabled` to identify the active config path if uncertain.

### Does disabling telemetry affect application functionality?

No. Desktop Commander MCP operates identically with telemetry disabled. All core features—command execution, file operations, and Claude integration—remain fully available. Only anonymous usage analytics cease transmission.

### Can I re-enable telemetry after disabling it?

Yes. Reverse any method: set `telemetryEnabled` to `true` in [`config.json`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/config.json), run `node dist/cli.js set_config_value telemetryEnabled true`, or request "enable Desktop Commander telemetry" through Claude. The change applies on next process start or immediately for runtime API calls.

### What data does Desktop Commander MCP collect when telemetry is enabled?

Per [[`PRIVACY.md`](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/PRIVACY.md)](https://github.com/wonderwhy-er/DesktopCommanderMCP/blob/main/PRIVACY.md), enabled telemetry transmits feature usage counts, error occurrences, and installation/uninstall events to `telemetry.desktopcommander.app`. No file contents, command outputs, or conversational data with Claude is included in these analytics.