Skip to main content
Glama
memory-mcp-visualization.md11.4 kB
# Memory MCP Visualization Guide **Author**: Scot Campbell **Date**: November 4, 2025 **Tool**: dzivkovi/mcp-memory-visualizer **Installation Location**: /Users/sc/GitHub/memory-visualizer ## Executive Summary After comparing two memory visualization tools for Anthropic's memory.json format, I chose **dzivkovi/mcp-memory-visualizer** because it offers three complementary visualization modes: 1. Web-based visualizer (zero installation, 100% private) 2. Python static analysis (statistical + high-res graphs) 3. Python interactive (browser-based with Python processing) The tool is installed and tested successfully. ## Why This Tool? ### Comparison: mjherich vs dzivkovi | Feature | mjherich/memory-visualizer | dzivkovi/mcp-memory-visualizer | |---------|---------------------------|-------------------------------| | **Installation** | npm + dependencies | None (web) OR pip (Python) | | **Tech Stack** | React + TypeScript + D3.js + Vite | D3.js (web) + NetworkX/PyVis (Python) | | **Stars** | 12 | 0 | | **Maintenance** | Active (13 commits, last Aug 2025) | Recent (4 commits, last Jun 2025) | | **Modes** | 1 (web app) | 3 (web + 2 Python) | | **Live Demo** | memviz.herich.tech | dzivkovi.github.io/mcp-memory-visualizer | | **Features** | Interactive graph, search, filters | Three modes: quick, statistical, deep | | **Best For** | Interactive exploration | Multiple use cases (exploration, analysis, research) | ### Decision: dzivkovi **Chosen: dzivkovi/mcp-memory-visualizer** **Reasons:** 1. **Three modes for different workflows**: Web (quick), Python static (research), Python interactive (deep analysis) 2. **Easier installation**: Web version = zero install, Python version = `pip install -r requirements.txt` 3. **Statistical analysis**: NetworkX provides graph metrics (centrality, clusters, redundancy detection) 4. **Export options**: PNG (static), HTML (interactive), screenshots (web) 5. **Simpler codebase**: Single HTML file (web) + 2 Python scripts vs full React build system mjherich's tool is more polished (React + TypeScript, better UI), but dzivkovi's three-mode approach better serves different use cases. ## Installation ### Method 1: Web Visualizer (Recommended) **Zero installation required!** Visit: https://dzivkovi.github.io/mcp-memory-visualizer/ Features: - Drag & drop memory.json file - 100% private (all processing in browser) - Interactive graph with physics simulation - Search entities and observations - Color-coded entity types - Detail panel with relationships ### Method 2: Python Tools (For Analysis) Already installed at: `/Users/sc/GitHub/memory-visualizer` ```bash # If you need to reinstall: cd ~/GitHub git clone https://github.com/dzivkovi/mcp-memory-visualizer.git memory-visualizer cd memory-visualizer pip install -r requirements.txt ``` Dependencies installed: - networkx (graph analysis) - matplotlib (static visualization) - pyvis (interactive HTML output) ## Usage ### Option 1: Web Visualizer (Quick Exploration) 1. Navigate to: https://dzivkovi.github.io/mcp-memory-visualizer/ 2. Locate your memory.json file (see "Finding Your Memory File" below) 3. Drag & drop the file into the browser 4. Explore: - Drag nodes to rearrange - Zoom with mouse wheel - Click nodes to see observations - Search for entities - View relationships in detail panel **Best for**: Quick visualization, on-the-fly debugging, sharing with others ### Option 2: Python Static Analysis (Research & Reports) ```bash cd /Users/sc/GitHub/memory-visualizer # Run static analysis (generates PNG + terminal output) python visualize_memory.py # Output: # - memory_graph.png (300 DPI high-res graph) # - Terminal: statistics, centrality, redundancy detection ``` **Provides:** - Network statistics (nodes, edges, connected components) - Centrality analysis (most connected entities) - Redundancy detection (similar entities, sparse nodes) - High-resolution graph (300 DPI) **Best for**: Research papers, reports, quantitative analysis, finding optimization opportunities ### Option 3: Python Interactive (Deep Analysis) ```bash cd /Users/sc/GitHub/memory-visualizer # Run interactive analysis (generates HTML) python visualize_memory_interactive.py # Output: # - memory_graph_interactive.html (opens in browser) ``` **Provides:** - Browser-based interactive visualization - Hover tooltips with full entity details - Physics-based node positioning - Zoom, pan, node dragging - HTML export for sharing **Best for**: Deep analysis, presentations, sharing with collaborators ## Finding Your Memory File ### Default Location (Problematic) Anthropic's Memory MCP server stores memory.json by default in: ``` # macOS ~/.cache/npm/_npx/[hash]/node_modules/@modelcontextprotocol/server-memory/dist/memory.json # Windows C:\Users\[username]\AppData\Local\npm-cache\_npx\[hash]\node_modules\@modelcontextprotocol\server-memory\dist\memory.json ``` **Warning**: This location is temporary and gets wiped during npm cache clears or package updates! ### Recommended: Configure Persistent Location Edit Claude Desktop config to use a persistent location: **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json` **Windows**: `%APPDATA%\Claude\claude_desktop_config.json` ```json { "mcpServers": { "memory": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-memory"], "env": { "MEMORY_FILE_PATH": "/Users/sc/Documents/claude-memory/memory.json" } } } } ``` **Recommended locations (macOS):** - `~/Documents/claude-memory/memory.json` - `~/Library/Application Support/claude-memory/memory.json` - `~/Dropbox/claude-memory/memory.json` (if you want cloud backup) **Note**: Create the directory first! ```bash mkdir -p ~/Documents/claude-memory ``` ## Memory File Format Anthropic's memory.json uses JSONL format (one JSON object per line): ```json {"type":"entity","name":"Python","entityType":"technology","observations":["Used for data analysis","Popular ML language"]} {"type":"relation","from":"Python","to":"Data Science","relationType":"used_in"} ``` **Entity types**: person, technology, project, event, organization, product, concept, research, feature, etc. **Relation types**: leads, organizes, collaborates_with, uses, powers, built_on, implements, analyzed_in, supports, etc. ## Demo Data The repo includes demo data at `/Users/sc/GitHub/memory-visualizer/memory.json`: - 16 entities across 9 types - 25 relationships - Complex connections (AI research, enterprise systems, academic collaboration) - Varied node sizes (1-10 observations) Use this to test the tools before using your own data. ## Technical Details ### Web Visualizer - **D3.js** for force-directed graph layout - **Client-side processing** (privacy-first) - **Responsive design** (works on mobile) - **No backend required** ### Python Static Analysis - **NetworkX** for graph analysis - **Matplotlib** for high-res visualization (300 DPI) - **Metrics**: degree centrality, betweenness, clustering - **Output**: PNG + terminal statistics ### Python Interactive - **PyVis** for interactive HTML output - **NetworkX** for graph processing - **Physics simulation** for natural layout - **HTML export** for sharing ## Workflow Examples ### Workflow 1: Quick Check (Web) 1. Open https://dzivkovi.github.io/mcp-memory-visualizer/ 2. Drop your memory.json 3. Visually scan for: - Disconnected entities (isolated nodes) - Overly connected entities (hubs) - Clusters (related concepts) ### Workflow 2: Research Analysis (Python Static) 1. `cd /Users/sc/GitHub/memory-visualizer` 2. `python visualize_memory.py > analysis.txt` 3. Review terminal output for: - Network statistics - Centrality rankings - Redundancy candidates 4. Include `memory_graph.png` in your paper/report ### Workflow 3: Deep Dive (Python Interactive) 1. `cd /Users/sc/GitHub/memory-visualizer` 2. `python visualize_memory_interactive.py` 3. Open generated HTML in browser 4. Explore with hover tooltips 5. Share HTML file with collaborators ### Workflow 4: Memory Cleanup 1. Run static analysis: `python visualize_memory.py` 2. Identify: - **Sparse nodes**: Entities with <2 observations (candidates for deletion) - **Redundant entities**: Similar names (e.g., "AI Project" vs "AI_Project") - **Disconnected nodes**: Entities with no relations (orphans) 3. Manually edit memory.json or use Claude Desktop to refine memories ## Comparison to mjherich's Tool If you want to try the React-based alternative: ```bash cd ~/GitHub git clone https://github.com/mjherich/memory-visualizer.git mjherich-visualizer cd mjherich-visualizer npm install npm run dev ``` **Live demo**: https://memviz.herich.tech **Pros:** - More polished UI (React + TypeScript + TailwindCSS) - Better keyboard shortcuts (documented in CLAUDE.md) - Theme system (light/dark modes) - More active maintenance (12 stars, recent commits) **Cons:** - Requires Node.js build setup (more complex) - Only one mode (interactive web) - No statistical analysis features - No export to PNG/HTML **When to use mjherich instead:** - You prefer modern React UI - You want theme support - You don't need statistical analysis - You're already familiar with npm/Vite workflows ## Troubleshooting ### Issue: "File not found" when running Python scripts **Solution**: Ensure you're in the correct directory: ```bash cd /Users/sc/GitHub/memory-visualizer ls # Should show: visualize_memory.py, memory.json, etc. ``` ### Issue: Matplotlib "building font cache" **Solution**: This is normal on first run. Wait 30-60 seconds. Subsequent runs will be faster. ### Issue: "ModuleNotFoundError" **Solution**: Reinstall dependencies: ```bash cd /Users/sc/GitHub/memory-visualizer pip install -r requirements.txt ``` ### Issue: Web visualizer not loading memory.json **Solution**: Check file format. Must be JSONL (one JSON object per line), not pretty-printed JSON array. **Wrong:** ```json [ {"type": "entity", ...}, {"type": "relation", ...} ] ``` **Correct:** ```json {"type":"entity",...} {"type":"relation",...} ``` ### Issue: Memory file in temporary npm cache location **Solution**: Configure persistent location (see "Finding Your Memory File" section above). ## Future Enhancements Potential extensions (mentioned in repo): - Export formats (GraphML, GEXF, JSON) - Filtering options (entity types, date ranges) - Advanced metrics (betweenness centrality, clustering coefficients) - Memory editing capabilities (add/remove entities, relations) ## Related Tools - **Anthropic Memory MCP Server**: https://github.com/modelcontextprotocol/servers/tree/main/src/memory - **mjherich's visualizer**: https://github.com/mjherich/memory-visualizer - **cortexgraph** (your temporal memory system): https://github.com/cortexgraphai/cortexgraph ## Credits **Tool**: dzivkovi/mcp-memory-visualizer **GitHub**: https://github.com/dzivkovi/mcp-memory-visualizer **Live Demo**: https://dzivkovi.github.io/mcp-memory-visualizer/ **Philosophy**: "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." - Antoine de Saint-Exupéry --- **Installation verified**: November 4, 2025 **Tool version**: Latest commit 7a0bb1e (Jun 20, 2025) **Python dependencies**: networkx, matplotlib, pyvis (installed) **Status**: Ready to use

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/prefrontalsys/mnemex'

If you have feedback or need assistance with the MCP directory API, please join our Discord server