MCP server that gives AI agents CRUD access to Obsidian notes via LiveSync's CouchDB backend.
Built with Deno and the official livesync-commonlib library. Handles encryption, compression, and path obfuscation transparently.
| Tool | Description |
|---|---|
vault_status |
Vault overview — document count, folders, encryption/compression status |
vault_list |
List notes, optionally filtered by folder or glob pattern |
vault_read |
Read a note's content and metadata |
vault_search |
Full-text search across all notes (case-insensitive) |
vault_write |
Create or update a note |
vault_delete |
Delete a note |
- Deno v2+
- A CouchDB instance with an Obsidian LiveSync database
-
Clone with submodules:
git clone --recurse-submodules https://github.com/edimuj/scribe-mcp.git cd scribe-mcp -
Copy and edit the environment file:
cp .env.example .env
Variable Required Description SCRIBE_COUCHDB_URLYes CouchDB URL (e.g. http://localhost:5984)SCRIBE_COUCHDB_USERYes CouchDB username SCRIBE_COUCHDB_PASSYes CouchDB password SCRIBE_COUCHDB_DBYes Database name (e.g. obsidian-livesync)SCRIBE_PASSPHRASEIf E2EE Vault passphrase (only needed if vault uses end-to-end encryption) -
Run:
deno task start
Add to your MCP client config (e.g. .claude.json):
{
"mcpServers": {
"scribe": {
"command": "deno",
"args": ["run", "-A", "--no-check", "/path/to/scribe-mcp/src/main.ts"],
"env": {
"SCRIBE_COUCHDB_URL": "http://localhost:5984",
"SCRIBE_COUCHDB_USER": "admin",
"SCRIBE_COUCHDB_PASS": "changeme",
"SCRIBE_COUCHDB_DB": "obsidian-livesync",
"SCRIBE_PASSPHRASE": "your-passphrase"
}
}
}
}MIT