Skip to main content
Glama
CoolJohn-lab

Cursidian

by CoolJohn-lab

Cursidian

MCP server for local Obsidian vaults, optimised for Cursor agents — safe note editing, lean tool surface, direct filesystem access. No Local REST API plugin required; Obsidian does not need to be open.

npm package: cursidian.

Features

  • 13 agent-focused tools — including list_tags, search_by_tags, and get_note_neighborhood

  • Safe writespatch inferred when old_string/new_string are set; replace_section for heading edits

  • Token-AND search — multi-word vault search requires all terms to appear in a note

  • Optimistic concurrencycontentHash on read, optional expectedHash on write

  • Signature-based caches — index and search snapshots invalidate when files change on disk (including Obsidian edits)

Related MCP server: Obsidian MCP Server

Tools (v1)

Tool

Purpose

read_note

Read note body + frontmatter; returns contentHash, outgoingLinks

update_note

Safe edits: patch, replace_section, append, prepend, replace

create_note

Create a new note

delete_note

Delete a note

list_notes

List notes in the vault

list_recent

Recently modified notes

search_content

Full-text search (token-AND); optional tags frontmatter filter

search_by_tags

Frontmatter tag search (index only, fast)

list_tags

All frontmatter tags with counts

get_note_neighborhood

One-hop graph: outgoingLinks + backlinks

manage_frontmatter

Get/set YAML frontmatter

manage_folders

Create/list vault folders

get_backlinks

Notes linking to a given note

Requirements

  • Node.js >= 20

  • An absolute Obsidian vault path via OBSIDIAN_VAULT_PATH

Quick start (published package)

Add to ~/.cursor/mcp.json (Windows: %USERPROFILE%\.cursor\mcp.json):

{
  "mcpServers": {
    "cursidian": {
      "command": "npx",
      "args": ["-y", "cursidian"],
      "env": {
        "OBSIDIAN_VAULT_PATH": "C:\\Users\\you\\Documents\\MyVault"
      }
    }
  }
}

Unix:

"OBSIDIAN_VAULT_PATH": "/Users/you/Documents/MyVault"

Reload Cursor. The config key "cursidian" appears as MCP server user-cursidian.

See also examples/cursor-mcp.json and examples/.env.example.

Local development setup

git clone https://github.com/CoolJohn-lab/Cursidian.git
cd Cursidian
npm install
npm run build
npm test

Point Cursor at the built entrypoint:

{
  "mcpServers": {
    "cursidian": {
      "command": "node",
      "args": ["/absolute/path/to/Cursidian/dist/index.js"],
      "env": {
        "OBSIDIAN_VAULT_PATH": "/absolute/path/to/your/vault"
      }
    }
  }
}

Wiki skills

Tracked skills live in skills/wiki/. Copy them into ~/.cursor/skills/ (do not symlink). Full steps: skills/wiki/INSTALL.md.

Skill

Purpose

llm-wiki

Theory, schema, Cursidian MCP protocol

wiki-query

Read-only Q&A

wiki-lint

Vault health

wiki-setup

Bootstrap a wiki vault

wiki-ingest

Distill sources into wiki pages

wiki-capture

Capture a session into the wiki

wiki-update

Sync a project into the wiki

wiki-status

Status / delta / hot.md

Safe write workflow

  1. Read the note — note the contentHash in the response.

  2. Edit using the safest mode (patch, replace_section, append, prepend, or replace).

  3. Pass expectedHash from step 1 to detect concurrent edits.

Environment variables

Variable

Required

Description

OBSIDIAN_VAULT_PATH

Yes

Absolute path to your Obsidian vault (~ / %USERPROFILE% expanded)

OBSIDIAN_READ_ONLY

No

Set to true to disable writes

OBSIDIAN_MAX_FILE_SIZE

No

Max file size in bytes (default 10 MB)

OBSIDIAN_BACKUP_ENABLED

No

Pre-write backups to .cursidian-trash (default true; set false to disable)

OBSIDIAN_LOG_LEVEL

No

debug, info, warn, error (default info)

Development

npm run dev      # run server directly (stdio)
npm test         # vitest with coverage
npm run lint     # eslint
npm run typecheck
npm run build
npm run verify   # lint + typecheck + test + build
npm run smoke    # live smoke against OBSIDIAN_VAULT_PATH

Isolated tool calls:

npm run mcp:test -- read_note --path index
npm run mcp:test -- search_content --query "wiki index" --limit 10
npm run mcp:test -- --list

Credits

Upstream filesystem MCP: @istrejo/obsidian-mcp. See LICENSE.

License

MIT — see LICENSE.

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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/CoolJohn-lab/Cursidian'

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