mcp-registry/mcp-obsidian

    ==================
      
       /// MCP ///
      /// MCP ///
        
    ==================
        
    [server:online]
    [protocol:ready]

mcp-obsidian

by MarkusPfundstein

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.

1.6k
197
Specialized

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.

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.

Documentation

License: MIT License
Updated 7/30/2025

Table of Contents