memory-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@memory-mcpSearch my notes for project ideas"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Personal MCP Ecosystem
A modular, local-first infrastructure that exposes your personal data — files, notes, browser history, code activity, conversations — as unified semantic context via the Model Context Protocol (MCP).
Any AI agent can plug into this and instantly know you.
Features
Capability | Description |
Semantic Search | Query your notes by meaning using ChromaDB + sentence-transformers |
Knowledge Graph | Neo4j-backed entity extraction with relationship mapping |
Memory Write-back | AI agents can save new notes and append to existing ones |
File Reader | Read PDFs, DOCX, Markdown, code files from anywhere on disk |
Browser History | Search Chrome, Edge, and Firefox history (auto-detected) |
Code Activity | Git commits, repo stats, and VSCode recent files |
Conversations | Parse exported Claude & ChatGPT conversation JSON files |
Calendar | Google Calendar integration via OAuth 2.0 (requires setup) |
Event Logger | Real-time file change tracking via watchdog |
Unified Gateway | FastAPI + LangGraph agent that routes queries across all sources |
Incremental Indexing | Only re-indexes new/modified files — no full rebuilds needed |
Related MCP server: Hoard
Architecture
┌──────────────────────────────────────────────────────────────┐
│ Unified Gateway (:8000) │
│ FastAPI + LangGraph Agent Pipeline │
│ analyze → execute → aggregate → rank │
├──────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────────────┐ │
│ │ Core MCP │ │Files MCP │ │ Browser │ │ Code MCP │ │
│ │ │ │ │ │ MCP │ │ │ │
│ │• Notes │ │• PDF │ │• Chrome │ │• Git commits │ │
│ │• Search │ │• DOCX │ │• Edge │ │• Repo stats │ │
│ │• Events │ │• Text │ │• Firefox │ │• VSCode recent │ │
│ │• Save │ │ │ │ │ │ │ │
│ └──────────┘ └──────────┘ └──────────┘ └────────────────┘ │
│ │
│ ┌──────────────────┐ ┌──────────────────────────────────┐ │
│ │ Conversations MCP│ │ Knowledge Graph MCP │ │
│ │ │ │ │ │
│ │• Claude exports │ │• Entity extraction (regex-based) │ │
│ │• ChatGPT exports │ │• Graph search (Neo4j) │ │
│ │• Search & parse │ │• Path finding │ │
│ └──────────────────┘ └──────────────────────────────────┘ │
│ │
├──────────────────────────────────────────────────────────────┤
│ ChromaDB (vectors) │ Neo4j (graph) │ SQLite (events) │
└──────────────────────────────────────────────────────────────┘Quick Start
Prerequisites
Python 3.11+
uv — Python package manager
Docker — for Neo4j (optional)
A supported browser (Chrome, Edge, or Firefox) — for browser history (optional)
1. Clone & Install
git clone https://github.com/Shaktisinhchavda/memory-mcp.git
cd memory-mcp
uv sync2. Configure
cp .env.example .env
# Edit .env if needed — defaults work out of the box on any OS3. Add Your Notes
Place markdown or text files in data/notes/:
echo "# My Project Ideas" > data/notes/ideas.md4. Index & Build
# Index notes into ChromaDB (incremental — only new/modified files)
uv run python scripts/index_notes.py
# Full rebuild (if needed)
uv run python scripts/index_notes.py --force
# Start Neo4j (optional — for knowledge graph)
docker compose up -d
# Build knowledge graph from notes
uv run python scripts/build_graph.py5. Run
Option A — Claude Desktop Integration (recommended)
Add to your Claude Desktop config:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"memory-mcp": {
"command": "uv",
"args": ["--directory", "/path/to/memory-mcp", "run", "python", "core_mcp/server.py"]
},
"files-mcp": {
"command": "uv",
"args": ["--directory", "/path/to/memory-mcp", "run", "python", "connectors/files_mcp/server.py"]
},
"browser-mcp": {
"command": "uv",
"args": ["--directory", "/path/to/memory-mcp", "run", "python", "connectors/browser_mcp/server.py"]
},
"code-mcp": {
"command": "uv",
"args": ["--directory", "/path/to/memory-mcp", "run", "python", "connectors/code_mcp/server.py"]
},
"conversations-mcp": {
"command": "uv",
"args": ["--directory", "/path/to/memory-mcp", "run", "python", "connectors/conversations_mcp/server.py"]
},
"graph-mcp": {
"command": "uv",
"args": ["--directory", "/path/to/memory-mcp", "run", "python", "knowledge_graph/server.py"]
}
}
}Replace
/path/to/memory-mcpwith the actual absolute path to this project.
Option B — Unified Gateway (HTTP API)
uv run uvicorn gateway.server:app --host 127.0.0.1 --port 8000Open Swagger UI at http://localhost:8000/docs.
Tools Reference (25 tools)
Core MCP (6 tools)
Tool | Description |
| List and read personal notes |
| Query knowledge base by meaning |
| Recent file change events |
| Vector store diagnostics |
| Save new notes (memory write-back) |
| Append to existing notes |
Files MCP (3 tools)
Tool | Description |
| Read PDF, DOCX, text files |
| List files in a directory |
| Search by filename pattern |
Browser MCP (5 tools)
Tool | Description |
| Recent history (Chrome/Edge/Firefox) |
| Top sites by visit count |
| Search by keyword |
| Stats across all browsers |
| List installed browsers |
Code MCP (5 tools)
Tool | Description |
| Git commit history |
| Single commit details |
| Modified/staged/untracked files |
| Repo stats and contributors |
| Recently opened in VSCode |
Conversations MCP (3 tools)
Tool | Description |
| List exported JSON files |
| Parse Claude/ChatGPT exports |
| Search by keyword |
Note: Conversation support is export-based. Export your Claude or ChatGPT conversations as JSON and place them in
data/conversations/. Live sync is not supported due to API limitations.
Calendar MCP (3 tools)
Tool | Description |
| Future calendar events |
| Today's events |
| Search events by keyword |
Setup required: Create a Google Cloud project, enable the Calendar API, download
credentials.jsontoconfig/, and run the server once to complete OAuth. See Google Calendar API Quickstart.
Knowledge Graph MCP (4 tools)
Tool | Description |
| Find entity and its connections |
| Shortest path between entities |
| Node/relationship counts |
| Extract entities into graph |
Technical Details
Entity Extraction
The knowledge graph uses regex and pattern-based extraction (no LLM required):
People: Capitalized multi-word names (e.g., "John Smith")
Technologies: Matched against a curated keyword list (56 terms)
Topics: Extracted from markdown headers
Projects: Detected by naming patterns (e.g., "VizDataAI", "FastAPI")
Tasks: Parsed from
- [ ]/- [x]markdown checkboxes
This is intentionally lightweight and local-only. For higher accuracy, swap in spaCy NER or an LLM-based extractor in knowledge_graph/extractor.py.
Incremental Indexing
Both index_notes.py and build_graph.py track file modification times in a manifest file. Only new or changed files are re-processed. Use --force for a full rebuild.
Browser Support
The browser connector auto-detects installed browsers:
Browser | Windows | macOS | Linux |
Chrome | Yes | Yes | Yes |
Edge | Yes | Yes | Yes |
Firefox | Yes | Yes | Yes |
Project Structure
memory-mcp/
├── core_mcp/ # Phase 1 — Core MCP server
│ ├── server.py # Main MCP server (stdio)
│ ├── tools/ # Notes + search + write-back tools
│ ├── vector_store/ # ChromaDB integration
│ └── event_logger/ # File watcher + SQLite
├── connectors/ # Phase 2 — Data connectors
│ ├── files_mcp/ # PDF, DOCX, text reader
│ ├── browser_mcp/ # Chrome, Edge, Firefox history
│ ├── calendar_mcp/ # Google Calendar (OAuth)
│ ├── code_mcp/ # Git + VSCode activity
│ └── conversations_mcp/ # Claude/ChatGPT exports
├── knowledge_graph/ # Phase 3 — Neo4j graph
│ ├── extractor.py # Entity extraction (regex-based)
│ ├── graph_store.py # Neo4j CRUD + search
│ └── server.py # Graph MCP server
├── gateway/ # Phase 4 — Unified gateway
│ ├── agent.py # LangGraph orchestrator
│ ├── router.py # Smart query router
│ ├── ranker.py # Multi-signal ranking
│ ├── context.py # PersonalContext model
│ └── server.py # FastAPI gateway
├── scripts/ # Utility scripts
│ ├── index_notes.py # Build vector index (incremental)
│ ├── build_graph.py # Build knowledge graph
│ └── start_watcher.py # Start file watcher
├── data/ # Your personal data (git-ignored)
│ ├── notes/ # Markdown notes
│ ├── files/ # Documents
│ └── conversations/ # Exported AI chats
├── docker-compose.yml # Neo4j container
├── pyproject.toml # Dependencies
└── .env.example # Config templatePrivacy
100% local-first — all processing runs on your machine
No cloud APIs required — embeddings, search, and graph are local
Personal data never committed —
data/is git-ignoredSecrets excluded —
.env, credentials, and tokens are git-ignoredCross-platform — works on Windows, macOS, and Linux
Known Limitations
Conversations: Export-only (Claude/ChatGPT JSON). No live sync due to API restrictions.
Calendar: Requires a one-time Google Cloud setup for OAuth credentials.
Entity extraction: Uses structural heuristics (word count, length, non-name word filter) to reduce false positives. Still regex-based — for higher accuracy, swap in spaCy NER or an LLM-based extractor in
knowledge_graph/extractor.py.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Shaktisinhchavda/memory-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server