Skip to main content
Glama

Smart Connections MCP Server

by dan6684
QUICK_ANSWERS.md8.12 kB
# Quick Answers - Migration & Setup ## Q: Should I keep the Smart Connections MCP in a different GitHub repository than my Obsidian Vault? ### A: YES - Keep them separate! ✅ **Recommended structure:** ``` ~/ ├── obsidian-vaults/ │ └── Daedalus/ # Git repo #1 - Your notes │ └── .git/ │ └── mcp-servers/ └── smart-connections-mcp/ # Git repo #2 - Infrastructure └── .git/ ``` ### Why Separate? | Aspect | Vault Repo | MCP Repo | |--------|------------|----------| | **Purpose** | Personal notes (data) | Infrastructure (code) | | **Change frequency** | Daily/hourly | Rarely | | **Privacy** | Often private | Can be public | | **Size** | Large (MB-GB) | Small (KB) | | **Dependencies** | None | Python, venv, binaries | | **Portability** | Sync everywhere | One-time setup per machine | ### Benefits: 1. **Clean separation of concerns** - Don't mix data with infrastructure 2. **Easier updates** - Update MCP code without touching your notes 3. **Better security** - Can share MCP code publicly without exposing notes 4. **Multi-vault support** - One MCP server can serve multiple vaults 5. **Smaller vault** - No Python code/dependencies cluttering your notes --- ## Q: How do I migrate my MCPs when I move to another machine? ### A: 5-Minute Migration Process #### On NEW machine: ```bash # 1. Clone MCP server repo git clone https://github.com/dan6684/smart-connections-mcp.git ~/mcp-servers/smart-connections-mcp # 2. Run installer cd ~/mcp-servers/smart-connections-mcp ./install.sh # 3. Done! ✅ ``` The `install.sh` script handles: - Installing UV - Creating virtual environment - Installing dependencies - Auto-detecting your vault - Configuring `~/.mcp.json` - Verifying the setup #### Your vault syncs separately: - Use Obsidian Sync, or - Git clone your vault repo, or - Manual rsync/copy **Total time:** ~5 minutes (most is dependency download) --- ## Q: What files should I commit to git? ### Smart Connections MCP Repo (Commit ✅) ``` smart-connections-mcp/ ├── .git/ ✅ Git metadata ├── .gitignore ✅ Ignore rules ├── server.py ✅ Server code ├── requirements.txt ✅ Dependencies ├── install.sh ✅ Setup script ├── README.md ✅ Documentation ├── DEPLOYMENT.md ✅ Migration guide ├── TROUBLESHOOTING.md ✅ Debug help └── LICENSE ✅ License file ``` ### Don't Commit (❌): ``` .venv/ ❌ Virtual environment (recreate on each machine) __pycache__/ ❌ Python cache *.pyc ❌ Compiled Python .DS_Store ❌ macOS metadata *.log ❌ Log files ``` ### Obsidian Vault Repo (Separate) **Commit:** - ✅ Your notes (`.md` files) - ✅ Attachments/images (optional) - ✅ `.obsidian/` config (themes, plugins) **Don't commit:** - ❌ `.smart-env/` - Embeddings (large, machine-specific) - ❌ `.obsidian/workspace.json` - Personal workspace state - ❌ Private/sensitive notes (use `.gitignore`) --- ## Q: What about `~/.mcp.json` config? ### Option 1: Manual (Simple) Each machine has its own `~/.mcp.json` with machine-specific paths. **Migration:** Re-run `./install.sh` on new machine. ### Option 2: Dotfiles Repo (Advanced) Keep `~/.mcp.json` in a dotfiles repository with templating: ```bash # In dotfiles repo ~/dotfiles/ └── mcp.json.template # Template with $HOME placeholders ``` **Migration:** Script replaces placeholders with actual paths. ### Recommendation: For most users: **Option 1 (manual)** is simpler. The `install.sh` script handles it automatically. --- ## Q: Can I use one MCP server for multiple vaults? ### A: Yes! Configure multiple instances In `~/.mcp.json`: ```json { "mcpServers": { "smart-connections-personal": { "command": "/Users/you/mcp-servers/smart-connections-mcp/.venv/bin/python", "args": ["/Users/you/mcp-servers/smart-connections-mcp/server.py"], "env": { "OBSIDIAN_VAULT_PATH": "/Users/you/vaults/Personal" } }, "smart-connections-work": { "command": "/Users/you/mcp-servers/smart-connections-mcp/.venv/bin/python", "args": ["/Users/you/mcp-servers/smart-connections-mcp/server.py"], "env": { "OBSIDIAN_VAULT_PATH": "/Users/you/vaults/Work" } } } } ``` **Key insight:** Same code, different `OBSIDIAN_VAULT_PATH` environment variable. --- ## Q: What if I use multiple machines (MacBook + Desktop)? ### A: Standard workflow works great! 1. **MCP repo** - Clone once on each machine, run `./install.sh` 2. **Vault** - Syncs automatically via Obsidian Sync or git **Example:** ```bash # MacBook Pro ~/mcp-servers/smart-connections-mcp/ # Local clone ~/.mcp.json # Machine-specific config ~/vaults/Daedalus/ # Synced via Obsidian # Desktop ~/mcp-servers/smart-connections-mcp/ # Local clone (same repo) ~/.mcp.json # Machine-specific config ~/vaults/Daedalus/ # Synced via Obsidian ``` **Smart Connections embeddings (`.smart-env/`):** - ❌ Don't sync between machines (large, can differ) - ✅ Smart Connections regenerates automatically on each machine --- ## Q: What about backing up? ### What to Backup: | Item | Backup Priority | Method | |------|----------------|--------| | **Vault notes** | 🔴 CRITICAL | Git + Obsidian Sync | | **MCP server code** | 🟡 Medium | Git (public repo) | | **`~/.mcp.json`** | 🟡 Medium | Dotfiles or manual | | **`.smart-env/`** | ⚪ Skip | Regenerate (too large) | | **`.venv/`** | ⚪ Skip | Recreate from requirements.txt | ### Backup Strategy: **Critical (daily):** ```bash # Vault automatically backed up via Obsidian Sync + git cd ~/vaults/Daedalus git push origin main ``` **Medium (after changes):** ```bash # MCP server - only when you modify code cd ~/mcp-servers/smart-connections-mcp git push origin main ``` **Optional:** ```bash # Copy MCP config to Dropbox/cloud cp ~/.mcp.json ~/Dropbox/backups/mcp.json.backup ``` --- ## Q: How do I update the MCP server code? ```bash cd ~/mcp-servers/smart-connections-mcp # Pull latest changes git pull origin main # Reinstall dependencies (if requirements.txt changed) uv pip install -r requirements.txt # Restart Claude Code (to reload server) # Or just start a new session ``` No need to update `~/.mcp.json` unless paths changed. --- ## Q: Can I share my MCP server publicly? ### YES! ✅ The MCP server code is infrastructure - safe to share publicly: **Public repo can include:** - ✅ `server.py` - Generic code - ✅ `requirements.txt` - Dependencies - ✅ Documentation - ✅ Installation scripts **Private repo (vault) should include:** - 🔒 Your personal notes - 🔒 Attachments - 🔒 Any sensitive content **Example public repos:** - https://github.com/dan6684/smart-connections-mcp ← MCP server - https://github.com/yourusername/my-vault (private) ← Your notes --- ## Full Documentation - **[DEPLOYMENT.md](DEPLOYMENT.md)** - Complete migration guide with all strategies - **[TROUBLESHOOTING.md](TROUBLESHOOTING.md)** - Detailed debugging help - **[README.md](README.md)** - Usage and installation --- ## TL;DR 1. ✅ **Separate repos** - MCP server ≠ Vault 2. ✅ **Use `./install.sh`** - Automates migration 3. ✅ **Keep `.venv/` local** - Don't commit to git 4. ✅ **One server, multiple vaults** - Use different env vars 5. ✅ **5-minute migration** - Clone + run install.sh **Migration command:** ```bash git clone https://github.com/dan6684/smart-connections-mcp.git ~/mcp-servers/smart-connections-mcp && cd ~/mcp-servers/smart-connections-mcp && ./install.sh ``` Done! 🎉

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/dan6684/smart-connections-mcp'

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