Skip to main content

MCP server giving Claude Code read/write access to Obsidian vaults

Project description

Obsidian MCP Server

An MCP (Model Context Protocol) server that gives Claude Code read/write access to your Obsidian vault.

Features

  • Read & write notes - Create, edit, and append to markdown files
  • Search - Full-text search across your vault
  • Daily notes - Read or append to daily notes with configurable date format
  • Browse - List files and folders in your vault
  • Secure - Only accesses your configured vault directory

Installation

Via pip

pip install obsidian-mcp-server

Via pipx (recommended for CLI tools)

pipx install obsidian-mcp-server

From source

git clone https://github.com/bbdaniels/obsidian-mcp-server.git
cd obsidian-mcp-server
pip install -e .

Configure Claude Code

Add the MCP server to Claude Code:

claude mcp add obsidian -- python3 -m obsidian_mcp.server

Or if installed via pipx:

claude mcp add obsidian -- obsidian-mcp

Then restart Claude Code.

First-Time Setup

Once configured, tell Claude:

"Configure obsidian vault at /path/to/your/vault"

Claude will run obsidian_configure to set up the vault path. Your configuration is stored at ~/.config/obsidian-mcp/config.json.

Available Tools

Tool Description
obsidian_configure Set vault path and daily notes settings
obsidian_status Show current configuration and vault stats
obsidian_read Read a note's contents
obsidian_write Create or overwrite a note
obsidian_append Append to a note (optionally under a heading)
obsidian_search Search notes by content
obsidian_list Browse vault structure
obsidian_daily Read/append to daily notes

Built-in Prompts

The server includes MCP prompts that provide structured workflows for common note-taking patterns. These show up as invocable prompts in Claude Code.

Prompt Description
session-start Review daily notes and project context before starting work
session-end Document accomplishments, decisions, and open questions at end of session
project-checkin Review and update a specific project's documentation

Each prompt accepts an optional project argument to focus on a specific project folder.

Automatic Instructions

When this server is connected, Claude automatically receives guidance about when and how to use the Obsidian tools -- no CLAUDE.md configuration needed. The built-in instructions tell Claude to:

  • Check for project context at the start of sessions
  • Document decisions as they're made (not just at the end)
  • Update daily notes with session summaries
  • Search for existing notes before creating new ones

Example Usage

Once configured, you can ask Claude things like:

  • "Search my notes for authentication patterns"
  • "Read my project architecture note"
  • "Append today's session summary to my daily note"
  • "Create a new note at Projects/my-project/decisions.md"
  • "List all notes in my Work folder"

Configuration

Config is stored at ~/.config/obsidian-mcp/config.json:

{
  "vault_path": "/path/to/your/vault",
  "daily_notes_folder": "Daily Notes",
  "daily_notes_format": "%Y-%m-%d"
}

Options

Option Default Description
vault_path (required) Absolute path to your Obsidian vault
daily_notes_folder Daily Notes Folder for daily notes
daily_notes_format %Y-%m-%d Date format for daily note filenames

Customizing Claude Instructions (Optional)

The server includes built-in instructions that guide Claude's note-taking behavior automatically. For additional customization, you can add to ~/.claude/CLAUDE.md:

## Obsidian Note-Taking

### Project Notes
- Vault uses project folders (e.g., MyProject/) with notes like Technical Notes.md, Overview.md
- Always update BOTH daily notes AND project-specific notes
- Include commit hashes and file references in technical notes

License

MIT

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

obsidian_mcp_server-0.2.0.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

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

obsidian_mcp_server-0.2.0-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file obsidian_mcp_server-0.2.0.tar.gz.

File metadata

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

File hashes

Hashes for obsidian_mcp_server-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2eab9a2b4a80e8435242890360ebeac2a909dab5c2b173507e46f3e49625511f
MD5 10011b77c283015cb5dfad3f96756c13
BLAKE2b-256 08eefd24a35032f97015224edf3cc532eef9b28a89628e39d6451ff5c0887ba4

See more details on using hashes here.

Provenance

The following attestation bundles were made for obsidian_mcp_server-0.2.0.tar.gz:

Publisher: publish.yml on bbdaniels/obsidian-mcp-server

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

File details

Details for the file obsidian_mcp_server-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for obsidian_mcp_server-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8270921706ee2c84b4089e36a185bdf0de7d2703a4799ed0e0d753a8b0fe09ad
MD5 98b7e1cee06ad9ef671f91b59f11e614
BLAKE2b-256 5322da0ee5b196f7e954dcad5617df390c5371f02c71c510db937e9b2dbfd87b

See more details on using hashes here.

Provenance

The following attestation bundles were made for obsidian_mcp_server-0.2.0-py3-none-any.whl:

Publisher: publish.yml on bbdaniels/obsidian-mcp-server

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