Claude Desktop

  • 2025/03/12
  • LLM Claude Desktop MCP

As of 13/03/2025, Claude Desktop is not available for Linux.

./images/claude-desktop.png

However, I have this installed on Ubuntu 22.04 using this repo - https://github.com/aaddrick/claude-desktop-debian.

Per the README,

Claude Desktop is an Electron application packaged as a Windows executable. Our build script performs several key operations to make it work on Linux:

  1. Downloads and extracts the Windows installer
  2. Unpacks the app.asar archive containing the application code
  3. Replaces the Windows-specific native module with a Linux-compatible implementation
  4. Repackages everything into a proper Debian package

The process works because Claude Desktop is largely cross-platform, with only one platform-specific component that needs replacement.

$ sudo ./build-deb.sh                                                                                                                   
System Information:
Distribution: Ubuntu 22.04.5 LTS
Debian version: bookworm/sid
Checking dependencies...
✓ p7zip found
✓ wget found
✓ wrestool found
✓ icotool found
✓ convert found
✓ npx found
✓ dpkg-deb found
✓ electron found
📥 Downloading Claude Desktop installer...
--2025-03-13 06:21:14--  https://storage.googleapis.com/osprey-downloads-c02f6a0d-347c-492b-a752-3e0651722e97/nest-win-x64/Claude-Setup-x64.exe
Resolving storage.googleapis.com (storage.googleapis.com)...
...
Saving to: ‘~/claude-desktop-debian/build/Claude-Setup-x64.exe’
...
Creating stub native module...
📦 Building .deb package...
dpkg-deb: building package 'claude-desktop' in '~/claude-desktop-debian/build/electron-app/claude-desktop_0.8.0_amd64.deb'.
✓ Package built successfully at: ~/claude-desktop-debian/build/electron-app/claude-desktop_0.8.0_amd64.deb
🎉 Done! You can now install the package with: sudo dpkg -i ~/claude-desktop-debian/build/electron-app/claude-desktop_0.8.0_amd64.deb
sudo dpkg -i ~/claude-desktop-debian/build/electron-app/claude-desktop_0.8.0_amd64.deb

Starting Claude Desktop

$ claude-desktop

Using Claude Desktop as MCP client

The MCP servers need to be configured using File -> Settings -> Developer -> Edit Config. The config is a JSON file located at ~/.config/Claude/claude_desktop_config.json.

./images/claude-desktop-settings.png

I used the time server downloaded from https://github.com/modelcontextprotocol/servers/tree/main/src/time.

{
  "mcpServers": {
    "time": {
      "command": "docker",
      "args": [
      	"run", 
      	"-i", 
      	"--rm", 
      	"mcp/time"]
    }
  }
}

Once updated the config file, restarted Claude Desktop. This time settings looked like this:

./images/running-mcp-servers.png

Viewing available tools

./images/claude-desktop-tools.png

./images/claude-desktop-available-tools.png

now, Claude can invoke local MCP server:

./images/invoking-local-mcp-server.png

Logs

Claude Desktop logs are stored at ~/.config/Claude/logs/.