Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Obsidian Sync MCP

by es617version 0.5.2i★ –iRuns on your computer
Registry nameio.github.es617/obsidian-sync-mcp

Install

Overview

Description from the maker (original English)

Give AI agents access to your Obsidian vault via local files or Self-hosted LiveSync.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: Streamable HTTP
  • Category: Docs, sheets & office work
  • You need to fill in: COUCHDB_PASSWORD, COUCHDB_PASSPHRASE, MCP_AUTH_TOKEN

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: VAULT_PATH, COUCHDB_URL, COUCHDB_USER, COUCHDB_PASSWORD, COUCHDB_DATABASE, COUCHDB_PASSPHRASE, COUCHDB_OBFUSCATE_PROPERTIES, VAULT_NAME, MCP_AUTH_TOKEN, BASE_URL, PORT

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "obsidian-sync": {
      "command": "npx",
      "args": [
        "-y",
        "obsidian-sync-mcp"
      ],
      "env": {
        "VAULT_PATH": "your-value",
        "COUCHDB_URL": "your-value",
        "COUCHDB_USER": "your-value",
        "COUCHDB_PASSWORD": "your-value",
        "COUCHDB_DATABASE": "your-value",
        "COUCHDB_PASSPHRASE": "your-value",
        "COUCHDB_OBFUSCATE_PROPERTIES": "your-value",
        "VAULT_NAME": "your-value",
        "MCP_AUTH_TOKEN": "your-value",
        "BASE_URL": "your-value",
        "PORT": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add obsidian-sync --env VAULT_PATH=your-value --env COUCHDB_URL=your-value --env COUCHDB_USER=your-value --env COUCHDB_PASSWORD=your-value --env COUCHDB_DATABASE=your-value --env COUCHDB_PASSPHRASE=your-value --env COUCHDB_OBFUSCATE_PROPERTIES=your-value --env VAULT_NAME=your-value --env MCP_AUTH_TOKEN=your-value --env BASE_URL=your-value --env PORT=your-value -- npx -y obsidian-sync-mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "obsidian-sync": {
      "command": "npx",
      "args": [
        "-y",
        "obsidian-sync-mcp"
      ],
      "env": {
        "VAULT_PATH": "your-value",
        "COUCHDB_URL": "your-value",
        "COUCHDB_USER": "your-value",
        "COUCHDB_PASSWORD": "your-value",
        "COUCHDB_DATABASE": "your-value",
        "COUCHDB_PASSPHRASE": "your-value",
        "COUCHDB_OBFUSCATE_PROPERTIES": "your-value",
        "VAULT_NAME": "your-value",
        "MCP_AUTH_TOKEN": "your-value",
        "BASE_URL": "your-value",
        "PORT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "obsidian-sync": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "obsidian-sync-mcp"
      ],
      "env": {
        "VAULT_PATH": "your-value",
        "COUCHDB_URL": "your-value",
        "COUCHDB_USER": "your-value",
        "COUCHDB_PASSWORD": "your-value",
        "COUCHDB_DATABASE": "your-value",
        "COUCHDB_PASSPHRASE": "your-value",
        "COUCHDB_OBFUSCATE_PROPERTIES": "your-value",
        "VAULT_NAME": "your-value",
        "MCP_AUTH_TOKEN": "your-value",
        "BASE_URL": "your-value",
        "PORT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • VAULT_PATH env
    Path to your Obsidian vault directory (filesystem mode)
  • COUCHDB_URL env
    CouchDB server URL (CouchDB mode)
  • COUCHDB_USER env
    CouchDB username
  • COUCHDB_PASSWORD secret env
    CouchDB password (required in CouchDB mode)
  • COUCHDB_DATABASE env
    CouchDB database name
  • COUCHDB_PASSPHRASE secret env
    LiveSync E2E encryption passphrase (must match plugin setting)
  • COUCHDB_OBFUSCATE_PROPERTIES env
    Set to 'true' if 'Obfuscate Properties' is enabled in LiveSync (obfuscates file paths, sizes, dates)
  • VAULT_NAME env
    Vault name for deep links and index storage
  • MCP_AUTH_TOKEN secret env
    Password for OAuth authentication
  • BASE_URL env
    Public URL for OAuth callbacks (required when using a tunnel)
  • PORT env
    HTTP port

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account es617, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Docs, sheets & office worki

  • More stars than 0% of the other 2197 servers in this category
  • Published to the registry more recently than 6% of the other 2197 servers in this category
  • Basic checks equal to or better than 100% of the other 2197 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Obsidian Sync MCP safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: COUCHDB_PASSWORD, COUCHDB_PASSPHRASE, MCP_AUTH_TOKEN

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.5.2) reached the registry 7 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Agent-Native Google Calendar - manage events, sync, and public booking

Runs in the cloud★ 7,620MITUpdated 2 months ago
Install

Excel MCP Server

by haris-musa

Lets AI create and edit Excel files itself, including formulas, charts and PivotTables, without Excel installed.

Runs on your computer★ 4,276MITUpdated 6 days ago
Install

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

Runs on your computer★ 847MITUpdated 4 days ago
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Obsidian Sync MCP

Give any AI agent access to your Obsidian vault over MCP. Run it locally against your vault files, or pair it with Self-hosted LiveSync and deploy to the cloud so it works even when your machine is off.

Example: From your phone, ask your AI: "What's in my daily note for today?" — and get the full content back, with a link to open it in Obsidian.


How it works

The server connects to your vault in two ways:

  • Filesystem mode — reads .md files directly from your vault folder. No database needed.
  • CouchDB mode — reads from a CouchDB database, locally or in the cloud. Your vault syncs to CouchDB via Self-hosted LiveSync, the community Obsidian plugin (600k+ downloads). The MCP server reads from CouchDB directly using livesync-commonlib — the same library that powers the plugin — for proper chunk handling and E2E encryption support.

Both modes expose the same MCP tools over HTTP, so any MCP-compatible agent can connect: Claude, Copilot, custom agents, anything that speaks the Model Context Protocol.


Choose your setup

Need it always available?Have LiveSync?Go to
YesYesSetup A — add MCP alongside your existing CouchDB
YesNoSetup B — CouchDB + MCP + LiveSync from scratch
No—Setup C — filesystem or CouchDB, npx or Docker

A. Deploy MCP to the cloud

You already have LiveSync and CouchDB on an always-on server. You just need the MCP server deployed alongside it.

Using Fly.io setup script (macOS/Linux, or WSL on Windows):

git clone https://github.com/es617/obsidian-sync-mcp.git

cd obsidian-sync-mcp ./deploy/setup.sh # choose option 2 (MCP only)

The script asks for your CouchDB connection details, vault name, and encryption passphrase.

Or run the Docker image on any always-on server:

docker run -p 8787:8787 \

-v mcp-data:/data -e DATA_DIR=/data \ -e COUCHDB_URL=https://your-couchdb:5984 \ -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=yourpassword \ -e COUCHDB_DATABASE=obsidian -e VAULT_NAME=MyVault \ -e COUCHDB_PASSPHRASE=your-encryption-passphrase \ -e COUCHDB_OBFUSCATE_PROPERTIES=false \ -e MCP_AUTH_TOKEN=yourpassword \ -e BASE_URL=https://your-server-url \ ghcr.io/es617/obsidian-sync-mcp:latest

Set COUCHDB_PASSPHRASE if you use E2E encryption in LiveSync. Set COUCHDB_OBFUSCATE_PROPERTIES=true if "Obfuscate Properties" is also enabled in your LiveSync settings. For an existing vault the server detects the actual setting from the database at startup and corrects a mismatch with a warning; only for a brand-new empty database does the value need to match your LiveSync settings. If the vault was created with LiveSync 1.0.33+ and path obfuscation, also set COUCHDB_ID_DERIVATION_KEY to your LiveSync recovery code (sls-id-v1:..., from "Show current recovery code") so the server can resolve note paths. Set BASE_URL to your public URL (required for OAuth callbacks when agents connect over HTTPS).

Your MCP endpoint is https://your-app.fly.dev/mcp (Fly.io) or https://your-server:8787/mcp (Docker behind HTTPS).

See Cost for Fly.io pricing.

Requires flyctl for the Fly.io path:

curl -L https://fly.io/install.sh | sh

export PATH="$HOME/.fly/bin:$PATH" # add to ~/.zshrc or ~/.bashrc fly auth login


B. Deploy everything to the cloud

Starting fresh — no LiveSync yet. Deploy CouchDB and MCP together, then set up LiveSync in Obsidian.

Using Fly.io setup script (macOS/Linux, or WSL on Windows):

git clone https://github.com/es617/obsidian-sync-mcp.git

cd obsidian-sync-mcp ./deploy/setup.sh # choose option 1 (CouchDB + MCP)

The script generates credentials, creates the database, and deploys. Save the credentials it prints.

Or with Docker Compose on any always-on server:

git clone https://github.com/es617/obsidian-sync-mcp.git

cd obsidian-sync-mcp

cat > .env <<EOF COUCHDB_PASSWORD=changeme MCP_AUTH_TOKEN=changeme-too VAULT_NAME=MyVault EOF

docker compose up -d

After deployment:

  1. In Obsidian, install Self-hosted LiveSync and configure it with the credentials from the setup output
  2. Your MCP endpoint is https://your-app.fly.dev/mcp (Fly.io). With Docker Compose the MCP port is published on localhost:8787 only; to reach it from other machines, put an HTTPS tunnel or reverse proxy in front (see remote access) and set BASE_URL to its public URL
  3. The MCP_AUTH_TOKEN is the password you enter when an agent connects
Always-on server

├── CouchDB + persistent storage └── MCP server ↑ ↑ Obsidian + LiveSync AI agents

Requires flyctl for the Fly.io path:

curl -L https://fly.io/install.sh | sh

export PATH="$HOME/.fly/bin:$PATH" # add to ~/.zshrc or ~/.bashrc fly auth login


Cost (Fly.io)

Applies to both Setup A and Setup B.

ComponentCost
CouchDB + MCP VM (shared, 512MB)~$3-4/month (kept alive by LiveSync)
MCP-only VM (shared, 256MB)~$0-2/month (suspends when idle)
1GB persistent volume~$0.15/month

As of March 2026, Fly.io may waive charges under $5/month, which could make this effectively free with a shared IPv4. Either way, cheaper than Obsidian Sync ($4/month) and you own the data.


C. Run on your machine

Run the MCP server locally. Works with filesystem mode (reads vault files directly) or CouchDB mode (if you have LiveSync). Machine must stay on for agents to reach it.

Filesystem mode (simplest):

VAULT_PATH=~/Documents/MyVault \

VAULT_NAME=MyVault \ npx obsidian-sync-mcp

CouchDB mode (if you have LiveSync):

COUCHDB_URL=http://localhost:5984 \

COUCHDB_USER=admin \ COUCHDB_PASSWORD=yourpassword \ COUCHDB_DATABASE=obsidian \ COUCHDB_PASSPHRASE=your-encryption-passphrase \ COUCHDB_OBFUSCATE_PROPERTIES=false \ VAULT_NAME=MyVault \ npx obsidian-sync-mcp

Omit COUCHDB_PASSPHRASE if you don't use E2E encryption in LiveSync. Set COUCHDB_OBFUSCATE_PROPERTIES=true if "Obfuscate Properties" is also enabled in your LiveSync settings. For an existing vault the server detects the actual setting from the database at startup and corrects a mismatch with a warning; only for a brand-new empty database does the value need to match your LiveSync settings. If the vault was created with LiveSync 1.0.33+ and path obfuscation, also set COUCHDB_ID_DERIVATION_KEY to your LiveSync recovery code (sls-id-v1:...) so the server can resolve note paths.

Or with Docker:

docker run -p 127.0.0.1:8787:8787 \

-v mcp-data:/data -e DATA_DIR=/data \ -e VAULT_PATH=/vault -v ~/Documents/MyVault:/vault \ -e VAULT_NAME=MyVault \ ghcr.io/es617/obsidian-sync-mcp:latest

Your MCP endpoint is http://localhost:8787/mcp.

Want remote access? Add a tunnel (machine must stay on):

cloudflared tunnel --url http://localhost:8787    # free

tailscale funnel 8787 # or Tailscale ngrok http 8787 # or ngrok

Set BASE_URL to the tunnel URL when using authentication.


Tools

ToolDescription
read_noteRead a note's markdown content by path
write_noteCreate or overwrite a note (replaces entire content)
edit_noteEdit a note without rewriting it — append, prepend (after frontmatter), or replace exact text
list_foldersList all folders in the vault with note counts — use to discover folder names
list_tagsList all tags in the vault with counts — use to discover tags before filtering
list_notesList notes with timestamps. Filter by folder, name, tag, or date. Sort by name or modified.
search_notesSearch note text for terms (OR, case-insensitive substrings); paths and frontmatter titles are searched first. Filter by folder, tag, or date. Returns paths with one context line each, never the note body, after a status line that states which CouchDB sequence the index is caught up with.
delete_noteDelete a note
move_noteMove or rename a note — works across folders, creates destination folders automatically
get_note_metadataGet frontmatter, tags, outgoing links, backlinks, size, and timestamps — navigate the knowledge graph

Every tool response includes an Obsidian deep link (obsidian://open?vault=...&file=...) that works on Mac and iOS.

"Add a bullet point to my daily note." "Find my notes about the MCP server and fix the typo in the second one."


Authentication

Set MCP_AUTH_TOKEN to a password to enable authentication:

MCP_AUTH_TOKEN=mysecretpassword npx obsidian-sync-mcp

The server includes a self-contained OAuth 2.1 provider. When an agent connects:

  1. A browser window opens with a password page
  2. Enter the MCP_AUTH_TOKEN password
  3. The agent gets an access token and refreshes it transparently

The session is shared across all your Claude interfaces (Desktop, Web, Mobile) and persists across server restarts. You'll need to re-enter the password after 14 days of inactivity (configurable via MCP_REFRESH_DAYS).

For non-OAuth clients (curl, MCP Inspector, custom agents), you can also pass the token directly as Authorization: Bearer .

Without MCP_AUTH_TOKEN, the server runs without authentication — suitable for local use or behind a private network.


Environment variables

VariableRequiredDefaultDescription
VAULT_PATHFilesystem mode—Path to your Obsidian vault directory
COUCHDB_URLCouchDB mode—CouchDB server URL
COUCHDB_USERCouchDB modeadminCouchDB username
COUCHDB_PASSWORDCouchDB mode—CouchDB password (required)
COUCHDB_DATABASECouchDB modeobsidianCouchDB database name. The server never creates it: if it doesn't exist, startup fails with an error
COUCHDB_PASSPHRASECouchDB mode—LiveSync E2E encryption passphrase (must match plugin setting)
COUCHDB_OBFUSCATE_PROPERTIESCouchDB modefalseSet to true if "Obfuscate Properties" is enabled in LiveSync (obfuscates file paths, sizes, dates in the database). For existing vaults the actual setting is auto-detected at startup; this value only decides the format for a brand-new empty database
COUCHDB_ID_DERIVATION_KEYCouchDB mode—LiveSync "independent ID derivation" recovery code (sls-id-v1:...). Needed to read and write notes on vaults created with LiveSync 1.0.33+ that use path obfuscation; leave unset for older (passphrase-derived) vaults. Get it from LiveSync's "Show current recovery code"
COUCHDB_CASE_SENSITIVECouchDB modefalseSet to true only if your LiveSync vault has "Handle filenames as case-sensitive" enabled. It must match the vault, or obfuscated document IDs won't resolve (the server fails to start with a clear message). Leave unset otherwise
VAULT_NAMEBothMyVaultVault name (used for deep links and index storage)

| MCP_AUTH_TOKEN | Optional | — | Password fo

Only the beginning is shown; read the rest in the repo

Ask PopNx