---
title: Claude Desktop MCP
description: Use claude-mem memory search in Claude Desktop with MCP tools
icon: desktop
---

<Note>
**Availability:** Claude-mem MCP tools work with Claude Desktop on macOS and Windows.
</Note>

## Overview

Claude Desktop can access your claude-mem memory database through **MCP tools**. This allows you to search past sessions, decisions, and observations directly from Claude Desktop conversations.

## Prerequisites

Before configuring MCP tools, ensure:

1. **claude-mem is installed** and the worker service is running
2. **MCP server is configured** in Claude Desktop (uses the `mcp-search` MCP server)

### Verify Worker is Running

```bash
WORKER_PORT=$(jq -r .CLAUDE_MEM_WORKER_PORT ~/.claude-mem/settings.json)
curl http://127.0.0.1:$WORKER_PORT/api/health
# Should return: {"status":"ok"}
```

## Installation

### Step 1: Configure MCP Server

The skill requires the `mcp-search` MCP server. Add this to your Claude Desktop configuration:

<Tabs>
  <Tab title="macOS">
    Edit `~/Library/Application Support/Claude/claude_desktop_config.json`:

    ```json
    {
      "mcpServers": {
        "mcp-search": {
          "command": "node",
          "args": [
            "/Users/YOUR_USERNAME/.claude/plugins/marketplaces/thedotmack/plugin/scripts/mcp-server.cjs"
          ]
        }
      }
    }
    ```
  </Tab>
  <Tab title="Windows">
    Edit `%APPDATA%\Claude\claude_desktop_config.json`:

    ```json
    {
      "mcpServers": {
        "mcp-search": {
          "command": "node",
          "args": [
            "C:\\Users\\YOUR_USERNAME\\.claude\\plugins\\marketplaces\\thedotmack\\plugin\\scripts\\mcp-server.cjs"
          ]
        }
      }
    }
    ```
  </Tab>
</Tabs>

<Warning>
Replace `YOUR_USERNAME` with your actual username. Restart Claude Desktop after editing the configuration.
</Warning>

### Step 2: Restart Claude Desktop

Close and reopen Claude Desktop for the MCP server configuration to take effect.

## Usage

Once installed, the skill auto-activates when you ask about past work:

```
"What did we do last session?"
"Did we fix this bug before?"
"How did we implement authentication?"
"What decisions did we make about the API?"
"Show me changes to worker-service.ts"
```

## Available MCP Tools

The skill provides three core MCP tools following a 3-layer workflow pattern:

| Tool | Description |
|------|-------------|
| `search` | Search memory index. Returns compact results with IDs for filtering |
| `timeline` | Get chronological context around a query or observation ID |
| `get_observations` | Fetch full observation details by ID (use after filtering with search/timeline) |

### Token-Efficient Workflow

1. **Search** → Get index with IDs (~50-100 tokens/result)
2. **Timeline** → Get context around interesting results
3. **Get Observations** → Fetch full details ONLY for filtered IDs

This 3-layer approach provides ~10x token savings compared to fetching full details upfront.

## Troubleshooting

### Skill Not Appearing

1. Verify the zip file was properly installed
2. Check Claude Desktop's skill installation logs
3. Restart Claude Desktop

### MCP Server Connection Failed

1. Verify the worker is running: `curl http://127.0.0.1:$WORKER_PORT/api/health`
2. Check the MCP server path in configuration
3. Look for errors in Claude Desktop logs

<Tabs>
  <Tab title="macOS">
    ```bash
    # View Claude Desktop logs
    tail -f ~/Library/Logs/Claude/claude.log
    ```
  </Tab>
  <Tab title="Windows">
    Check `%APPDATA%\Claude\logs\`
  </Tab>
</Tabs>

### Search Returns No Results

1. Ensure claude-mem has recorded sessions (check http://127.0.0.1:$WORKER_PORT)
2. Verify the database exists: `ls ~/.claude-mem/claude-mem.db`
3. Test the API directly: `curl "http://127.0.0.1:$WORKER_PORT/api/search?query=test"`

## Related

<CardGroup cols={2}>
  <Card title="Search Tools" icon="magnifying-glass" href="/usage/search-tools">
    Complete search API reference
  </Card>
  <Card title="Platform Integration" icon="plug" href="/platform-integration">
    Build custom integrations
  </Card>
</CardGroup>
