Skip to main content
How-to

Connect Claude Desktop

Point Claude Desktop at one local LightNow Proxy. From there, use LightNow to choose the MCP servers Claude should see, keep secrets out of the desktop config, and inspect tool usage in one place.

Claude Desktop setupClaude Desktop starts one LightNow Proxy; LightNow manages the server set
AI clientClaude Desktopreads JSON mcpServers from the Claude app config
stdio
LightNow Local Proxylightnow-proxykeeps direct upstream servers out of the desktop file
LightNow
LightNowConfig + Analyzeprofile, workspace, policy, events and tool usage

Fast setup

1
Install LightNow

Install the CLI and the local proxy on this machine.

2
Sign in

Sign in so LightNow can use your account and selected workspace.

3
Sync Claude Desktop

Replace direct MCP entries with one LightNow Proxy entry.

4
Restart Claude Desktop

Restart Claude Desktop so the MCP server list is loaded again.

Recommended for macOS
brew tap lightnow-ai/tap
brew install lightnow-cli lightnow-proxy
lightnow login
lightnow import-config --client claude-desktop
lightnow sync --client claude-desktop --local-proxy
Windows or Linux
Windows
py -m pip install --user pipx
py -m pipx ensurepath
py -m pipx install lightnow-cli
py -m pipx install lightnow-proxy
lightnow login
lightnow import-config --client claude-desktop
lightnow sync --client claude-desktop --local-proxy
Linux
python3 -m pip install --user pipx
python3 -m pipx ensurepath
python3 -m pipx install lightnow-cli
python3 -m pipx install lightnow-proxy
lightnow login
lightnow import-config --client claude-desktop
lightnow sync --client claude-desktop --local-proxy

Config files

These are the files LightNow touches for Claude Desktop:

Claude Desktop config
~/Library/Application Support/Claude/claude_desktop_config.json
Local Proxy config
~/.lightnow/lightnow-proxy/claude-desktop.yaml

What gets written

Claude Desktop reads MCP servers from JSON. After sync, that JSON contains one top-level mcpServers.LightNow entry:

claude_desktop_config.json
{
"mcpServers": {
"LightNow": {
"command": "lightnow-proxy",
"args": [
"--config",
"~/.lightnow/lightnow-proxy/claude-desktop.yaml",
"--transport",
"stdio"
]
}
}
}

When LightNow can resolve the full lightnow-proxy path, it writes the absolute path. The proxy YAML stores the Claude Desktop client name, stdio transport, selected Runtime Profile, workspace context, policy settings, telemetry preference and secret-resolution mode. Claude Desktop does not receive the commands, URLs or secret values for every server in the profile.

Existing Claude Desktop config

When Local Proxy mode replaces direct MCP entries, LightNow removes the top-level JSON mcpServers and servers sections, then adds LightNow. Other Claude Desktop fields stay in the file, including preferences such as remoteToolsDeviceName.

Run import first when your current Claude Desktop config contains servers you want to keep:

Import before replacing direct Claude Desktop entries
lightnow import-config --client claude-desktop
lightnow sync --client claude-desktop --local-proxy

Team rollout

For a managed team rollout, switch to the organization context first, then let policy drive the sync:

Use LightNow-managed client policy
lightnow context --tenant acme
lightnow sync --client claude-desktop --from-settings
lightnow config-status --client claude-desktop --json

--from-settings lets LightNow choose the profile, telemetry setting, managed clients and unmanaged-entry policy for Claude Desktop. Use it after the organization profile is ready and the pilot setup works as expected.