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.
π Python
π MCP
π Neo4j
π Docker
π License
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
This server cannot be installed
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
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
