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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
91ffa16c39e5b9d0f60c8a927863f5cd52da828624b1f9c5fbc4462cd9b33509
|
|
| MD5 |
b80970dc091d95eafe08ba6077775fca
|
|
| BLAKE2b-256 |
b860daff37b7ca68f4afce8eee3cabea7062809f9ee5f351be36b85df83bd356
|
Provenance
The following attestation bundles were made for fast_obsidian_mcp-0.1.3.tar.gz:
Publisher:
publish.yml on nthomsencph/fast-obsidian-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_obsidian_mcp-0.1.3.tar.gz -
Subject digest:
91ffa16c39e5b9d0f60c8a927863f5cd52da828624b1f9c5fbc4462cd9b33509 - Sigstore transparency entry: 1186982703
- Sigstore integration time:
-
Permalink:
nthomsencph/fast-obsidian-mcp@54d2d71b5f022de8607cc17b37bec5e0831f6c7c -
Branch / Tag:
refs/tags/v0.1.3 - Owner: https://github.com/nthomsencph
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@54d2d71b5f022de8607cc17b37bec5e0831f6c7c -
Trigger Event:
release
-
Statement type:
File details
Details for the file fast_obsidian_mcp-0.1.3-py3-none-any.whl.
File metadata
- Download URL: fast_obsidian_mcp-0.1.3-py3-none-any.whl
- Upload date:
- Size: 2.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8216be10faaddbcbfe6335d4f6e6e7e60d2c5534f619e1fcaa2e19d5ffa66922
|
|
| MD5 |
c9184313b83964dbdf759f15570a4530
|
|
| BLAKE2b-256 |
c4999a47937f6e06c86e1e82b7bde44bbae167d3db9c1579bbeefd28c40c685e
|
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
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fast_obsidian_mcp-0.1.3-py3-none-any.whl -
Subject digest:
8216be10faaddbcbfe6335d4f6e6e7e60d2c5534f619e1fcaa2e19d5ffa66922 - Sigstore transparency entry: 1186982746
- Sigstore integration time:
-
Permalink:
nthomsencph/fast-obsidian-mcp@54d2d71b5f022de8607cc17b37bec5e0831f6c7c -
Branch / Tag:
refs/tags/v0.1.3 - Owner: https://github.com/nthomsencph
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@54d2d71b5f022de8607cc17b37bec5e0831f6c7c -
Trigger Event:
release
-
Statement type: