New:Microsoft Teams Notifications Are Now Available in Socket.Learn more
Get Started

mcp-obsidian-cli

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mcp-obsidian-cli

MCP server wrapping the Obsidian CLI — full native API access over Model Context Protocol

Source
npmnpm
Version
1.3.2
Version published
Weekly downloads
122
9.91%
Maintainers
1
Weekly downloads
 
Created
Source

mcp-obsidian-cli

Trademark Notice: "Obsidian" is a trademark of Obsidian Publishing, Inc. This project is not affiliated with or endorsed by Obsidian Publishing.

MCP server that wraps the Obsidian CLI, giving AI assistants full access to Obsidian's native API — search index, wikilink resolution, tasks, properties, daily notes, backlinks, and 80+ commands — through the Model Context Protocol.

Why this exists

Every existing Obsidian MCP server takes one of two approaches: the Local REST API plugin (requires API keys, HTTP overhead, limited command surface) or raw filesystem access (no Obsidian awareness — no search index, no wikilink resolution, no task queries). Both miss the point.

mcp-obsidian-cli wraps the Obsidian CLI plugin, which talks directly to the running Obsidian instance via IPC. This means full access to Obsidian's internal APIs with zero configuration — no API keys, no REST plugins, no token management.

Quick start

npx mcp-obsidian-cli

Claude Desktop config

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "obsidian": {
      "command": "npx",
      "args": ["-y", "mcp-obsidian-cli"],
      "env": {
        "OBSIDIAN_VAULT": "my-vault"
      }
    }
  }
}

Requirements

  • Obsidian running with the CLI plugin active
  • obsidian-cli on your PATH (typically /Applications/Obsidian.app/Contents/MacOS/obsidian-cli on macOS)
  • Node.js >= 18

How it works

The server exposes Obsidian CLI commands as MCP tools. A generic pass-through tool handles the full CLI surface (80+ commands), plus typed convenience tools for common operations:

ToolDescription
obsidianGeneric pass-through — run any CLI command
obsidian_daily_readRead today's daily note
obsidian_daily_appendAppend to daily note
obsidian_readRead a note by name or path
obsidian_searchFull-text search with context
obsidian_tagsList tags with counts
obsidian_tasksQuery tasks (daily, todo, done)
obsidian_propertiesRead frontmatter properties
obsidian_createCreate a new note
obsidian_property_setSet a frontmatter property
obsidian_backlinksList backlinks to a note
obsidian_filesList vault files
obsidian_recentsRecently opened files

The generic obsidian tool means the MCP server never falls behind the CLI — new CLI commands work immediately without a server update.

Environment variables

VariableDefaultDescription
OBSIDIAN_VAULT(none)Target vault by name
OBSIDIAN_CLI_PATHobsidian-cliPath to CLI binary
OBSIDIAN_TIMEOUT_MS15000Command timeout
XDG_CONFIG_HOME~/.configBase path for config file

Config file

The server can read settings from a YAML config file:

  • Default: ~/.config/mcp-obsidian-cli/config.yaml
  • With XDG_CONFIG_HOME: $XDG_CONFIG_HOME/mcp-obsidian-cli/config.yaml

Config file format:

vault: "my-vault"
cliPath: "obsidian-cli"
timeoutMs: 15000

Config precedence: env vars > config file > hardcoded defaults

Compared to alternatives

mcp-obsidian-cliREST API serversFilesystem servers
Search indexYesYesNo
Wikilink resolutionYesPartialNo
Task queriesYesNoNo
Property typesYesPartialNo
Daily notesYesNoNo
BacklinksYesYesNo
API keysNoneRequiredNone
Obsidian pluginsCLI pluginREST API pluginNone
Commands80+~10~6

Bugs / requests

File an issue: https://github.com/stonematt/mcp-obsidian-cli/issues/new/choose. Bug template asks for version, MCP client, tool call, and response — quick to fill, fast to act on.

License

MIT

ko-fi

Maintained by @stonematt Licensed under the MIT License

Keywords

mcp

FAQs

Package last updated on 16 May 2026

Related posts