Install
mcp-registry/mcp-obsidian
mcp-obsidian logo

mcp-obsidian

Author: MarkusPfundstein

Description: MCP server that interacts with Obsidian via the Local REST API community plugin, exposing tools for listing, reading, searching and modifying notes inside an Obsidian vault.

Stars: 1.6k

Forks: 197

License: MIT License

Category: Specialized

Overview

Installation

1. Clone the repository
git clone https://github.com/MarkusPfundstein/mcp-obsidian.git cd mcp-obsidian
2. Create & activate a virtual environment (recommended)
python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate
3. Install Python dependencies
pip install -r requirements.txt
4. Configure the server – create a .env file or set environment variables:
OBSIDIAN_BASE_URL=https://127.0.0.1:27123 # URL where the Obsidian REST-API plugin is listening OBSIDIAN_API_TOKEN=<your-obsidian-token> # Token generated in the plugin MCP_HOST=0.0.0.0 MCP_PORT=8000
5. Launch the server
python -m mcp_obsidian # or: uvicorn mcp_obsidian.app:app --host $MCP_HOST --port $MCP_PORT
6. Verify
curl http://localhost:8000/healthz # Should return OK
7. (Optional) Reverse proxy
Configure nginx/Caddy/Traefik if you want TLS or a public URL.

01

list_files_in_vault

Lists all files and directories in the root directory of the Obsidian vault.

02

list_files_in_dir

Lists all files and directories inside a specified directory within the Obsidian vault.

03

get_file_contents

Returns the content of a single file in the vault.

04

search

Searches across all files in the vault for documents matching a given text query.

05

patch_content

Inserts content into an existing note relative to a heading, block reference, or front-matter field.

06

append_content

Appends content to a new or existing file in the vault.

07

delete_file

Deletes a file or directory from the vault.

License: MIT License
Updated 7/30/2025