Skip to main content
Glama

Obsidian MCP Server

by natestrong

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OBSIDIAN_API_URLNoOverride the default API endpoint (default: https://localhost:27124)https://localhost:27124
OBSIDIAN_REST_API_KEYYesAPI key from the Local REST API plugin in Obsidian

Schema

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Tools

Functions exposed to the LLM to take actions

NameDescription
read_note_tool
Read the content and metadata of a specific note. When to use: - Displaying note contents to the user - Analyzing or processing existing note data - ALWAYS before updating a note to preserve existing content - Verifying a note exists before making changes When NOT to use: - Searching multiple notes (use search_notes instead) - Getting only metadata (use get_note_info for efficiency) Returns: Note content and metadata including tags, aliases, and frontmatter
create_note_tool
Create a new note or overwrite an existing one. When to use: - Creating new notes with specific content - Setting up templates or structured notes - Programmatically generating documentation When NOT to use: - Updating existing notes (use update_note unless you want to replace entirely) - Appending content (use update_note with merge_strategy="append") Returns: Created note information with path and metadata
update_note_tool
Update the content of an existing note. ⚠️ IMPORTANT: By default, this REPLACES the entire note content. Always read the note first if you need to preserve existing content. When to use: - Updating a note with completely new content (replace) - Adding content to the end of a note (append) - Programmatically modifying notes When NOT to use: - Making small edits (read first, then update with full content) - Creating new notes (use create_note instead) Returns: Update status with path, metadata, and operation performed
delete_note_tool
Delete a note from the vault. Args: path: Path to the note to delete Returns: Deletion status
search_notes_tool
Search for notes containing specific text or matching search criteria. When to use: - Finding notes by content keywords - Locating notes with specific tags - Searching within specific folders When NOT to use: - Searching by date (use search_by_date instead) - Listing all notes (use list_notes for better performance) - Finding a specific known note (use read_note directly) Returns: Search results with matched notes, relevance scores, and context
search_by_date_tool
Search for notes by creation or modification date. When to use: - Finding recently modified notes - Locating notes created in a specific time period - Reviewing activity from specific dates When NOT to use: - Content-based search (use search_notes) - Finding notes by tags or path (use search_notes) Returns: Notes matching the date criteria with paths and timestamps
list_notes_tool
List notes in the vault or a specific directory. Args: directory: Specific directory to list (optional, defaults to root) recursive: Whether to list all subdirectories recursively (default: true) Returns: Vault structure and note paths
list_folders_tool
List folders in the vault or a specific directory. When to use: - Exploring vault organization structure - Verifying folder names before creating notes - Checking if a specific folder exists - Understanding the hierarchy of the vault When NOT to use: - Listing notes (use list_notes instead) - Searching for content (use search_notes) Returns: Folder structure with paths and names
move_note_tool
Move a note to a new location, optionally updating all links. Args: source_path: Current path of the note destination_path: New path for the note update_links: Whether to update links in other notes (default: true) Returns: Move status and updated links count
create_folder_tool
Create a new folder in the vault, including all parent folders in the path. When to use: - Setting up project structure in advance - Creating deep folder hierarchies (e.g., "Apple/Studies/J71P") - Creating archive folders before moving notes - Establishing organizational hierarchy - Preparing folders for future content When NOT to use: - If you're about to create a note in that path (folders are created automatically) - For temporary organization (just create notes directly) Note: Will create all necessary parent folders. For example, "Apple/Studies/J71P" will create Apple, Apple/Studies, and Apple/Studies/J71P if they don't exist. Returns: Creation status with list of folders created and placeholder file path
move_folder_tool
Move an entire folder and all its contents to a new location. When to use: - Reorganizing vault structure - Archiving completed projects - Consolidating related notes - Seasonal organization (e.g., moving to year-based archives) When NOT to use: - Moving individual notes (use move_note instead) - Moving to a subfolder of the source (creates circular reference) Returns: Move status with count of notes and folders moved
add_tags_tool
Add tags to a note's frontmatter. When to use: - Organizing notes with tags - Bulk tagging operations - Adding metadata for search When NOT to use: - Adding tags in note content (use update_note) - Replacing all tags (use update_note with new frontmatter) Returns: Updated tag list for the note
update_tags_tool
Update tags on a note - either replace all tags or merge with existing. When to use: - After analyzing a note's content to suggest relevant tags - Reorganizing tags across your vault - Setting consistent tags based on note types or projects - AI-driven tag suggestions ("What is this note about? Add appropriate tags") When NOT to use: - Just adding a few tags (use add_tags) - Just removing specific tags (use remove_tags) Returns: Previous tags, new tags, and operation performed
remove_tags_tool
Remove tags from a note's frontmatter. Args: path: Path to the note tags: List of tags to remove (without # prefix) Returns: Updated tag list
get_note_info_tool
Get metadata and information about a note without retrieving its full content. Args: path: Path to the note Returns: Note metadata and statistics
get_backlinks_tool
Find all notes that link to a specific note (backlinks). When to use: - Understanding which notes reference a concept or topic - Discovering relationships between notes - Finding notes that depend on the current note - Building a mental map of note connections When NOT to use: - Finding links FROM a note (use get_outgoing_links) - Searching for broken links (use find_broken_links) Performance note: - Fast for small vaults (<100 notes) - May take several seconds for large vaults (1000+ notes) - Consider using search_notes for specific link queries Returns: All notes linking to the target with optional context
get_outgoing_links_tool
List all links from a specific note (outgoing links). When to use: - Understanding what a note references - Checking note dependencies before moving/deleting - Exploring the structure of index or hub notes - Validating links after changes When NOT to use: - Finding notes that link TO this note (use get_backlinks) - Searching across multiple notes (use find_broken_links) Returns: All outgoing links with their types and optional validity status
find_broken_links_tool
Find all broken links in the vault or a specific directory. When to use: - After renaming or deleting notes - Regular vault maintenance - Before reorganizing folder structure - Cleaning up after imports When NOT to use: - Checking links in a single note (use get_outgoing_links with check_validity) - Finding backlinks (use get_backlinks) Returns: All broken links grouped by source note
list_tags_tool
List all unique tags used across the vault with usage statistics. When to use: - Before adding tags to maintain consistency - Getting an overview of your tagging taxonomy - Finding underused or overused tags - Discovering tag variations (e.g., 'project' vs 'projects') When NOT to use: - Getting tags for a specific note (use get_note_info) - Searching notes by tag (use search_notes with tag: prefix) Performance note: - For vaults with <1000 notes: Fast (1-3 seconds) - For vaults with 1000-5000 notes: Moderate (3-10 seconds) - For vaults with >5000 notes: May be slow (10+ seconds) - Uses batched concurrent requests to optimize performance Returns: All unique tags with optional usage counts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/natestrong/obsidian-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server