Skip to main content

Thin MCP server wrapping the Obsidian CLI

Project description

obsidian-mcp

A minimal MCP server that gives Claude Desktop and Cowork access to your local Obsidian vault via the official Obsidian CLI.

Why

Claude Desktop and Cowork run in a sandbox and cannot call the Obsidian CLI directly. This server bridges that gap over the MCP protocol.

Design

One tool: obsidian_run(command). It executes obsidian <command> as a subprocess and returns the output. All CLI knowledge lives in a SKILL.md that the agent loads for syntax reference — not in tool schemas. This keeps the agent's context footprint minimal.

Setup

Requires Python 3.11+, the Obsidian desktop app running, and the obsidian CLI in your PATH.

uvx install fast-obsidian-mcp

Or from a local clone:

uv tool install .

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "obsidian": {
      "command": "obsidian-mcp",
      "env": {
        "PATH": "/usr/local/bin:/opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin"
      }
    }
  }
}

The PATH env is required because Claude Desktop launches MCP servers in a minimal sandbox environment that doesn't inherit your shell's PATH. Without it, the server can't find the obsidian CLI binary. Adjust the paths if your obsidian binary is installed elsewhere (which obsidian to check).

Usage examples

The agent calls obsidian_run with CLI command strings:

read path="Notes/Todo.md"
append path="Notes/Todo.md" "Log" content="New entry"
search query="meeting notes" json
daily:append content="- completed review"
tasks json

See SKILL.md for the full command reference.

Project structure

obsidian_mcp/
  server.py    # FastMCP server, one tool
pyproject.toml
SKILL.md       # CLI syntax reference for the agent

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fast_obsidian_mcp-0.1.3.tar.gz (2.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fast_obsidian_mcp-0.1.3-py3-none-any.whl (2.8 kB view details)

Uploaded Python 3

File details

Details for the file fast_obsidian_mcp-0.1.3.tar.gz.

File metadata

  • Download URL: fast_obsidian_mcp-0.1.3.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fast_obsidian_mcp-0.1.3.tar.gz
Algorithm Hash digest
SHA256 91ffa16c39e5b9d0f60c8a927863f5cd52da828624b1f9c5fbc4462cd9b33509
MD5 b80970dc091d95eafe08ba6077775fca
BLAKE2b-256 b860daff37b7ca68f4afce8eee3cabea7062809f9ee5f351be36b85df83bd356

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_obsidian_mcp-0.1.3.tar.gz:

Publisher: publish.yml on nthomsencph/fast-obsidian-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_obsidian_mcp-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for fast_obsidian_mcp-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8216be10faaddbcbfe6335d4f6e6e7e60d2c5534f619e1fcaa2e19d5ffa66922
MD5 c9184313b83964dbdf759f15570a4530
BLAKE2b-256 c4999a47937f6e06c86e1e82b7bde44bbae167d3db9c1579bbeefd28c40c685e

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_obsidian_mcp-0.1.3-py3-none-any.whl:

Publisher: publish.yml on nthomsencph/fast-obsidian-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page