Obsidian

Interact with your Obsidian vault via the Local REST API

Usage Instructions

Read, create, update, search, and delete notes in your Obsidian vault. Manage periodic notes, execute commands, and patch content at specific locations. Requires the Obsidian Local REST API plugin.

Tools

obsidian_append_active

Append content to the currently active file in Obsidian

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
contentstringYesMarkdown content to append to the active file

Output

ParameterTypeDescription
appendedbooleanWhether content was successfully appended

obsidian_append_note

Append content to an existing note in your Obsidian vault

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
filenamestringYesPath to the note relative to vault root (e.g. "folder/note.md")
contentstringYesMarkdown content to append to the note

Output

ParameterTypeDescription
filenamestringPath of the note
appendedbooleanWhether content was successfully appended

obsidian_append_periodic_note

Append content to the current periodic note (daily, weekly, monthly, quarterly, or yearly). Creates the note if it does not exist.

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
periodstringYesPeriod type: daily, weekly, monthly, quarterly, or yearly
contentstringYesMarkdown content to append to the periodic note

Output

ParameterTypeDescription
periodstringPeriod type of the note
appendedbooleanWhether content was successfully appended

obsidian_create_note

Create or replace a note in your Obsidian vault

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
filenamestringYesPath for the note relative to vault root (e.g. "folder/note.md")
contentstringYesMarkdown content for the note

Output

ParameterTypeDescription
filenamestringPath of the created note
createdbooleanWhether the note was successfully created

obsidian_delete_note

Delete a note from your Obsidian vault

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
filenamestringYesPath to the note to delete relative to vault root

Output

ParameterTypeDescription
filenamestringPath of the deleted note
deletedbooleanWhether the note was successfully deleted

obsidian_execute_command

Execute a command in Obsidian (e.g. open daily note, toggle sidebar)

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
commandIdstringYesID of the command to execute (use List Commands operation to discover available commands)

Output

ParameterTypeDescription
commandIdstringID of the executed command
executedbooleanWhether the command was successfully executed

obsidian_get_active

Retrieve the content of the currently active file in Obsidian

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API

Output

ParameterTypeDescription
contentstringMarkdown content of the active file
filenamestringPath to the active file

obsidian_get_note

Retrieve the content of a note from your Obsidian vault

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
filenamestringYesPath to the note relative to vault root (e.g. "folder/note.md")

Output

ParameterTypeDescription
contentstringMarkdown content of the note
filenamestringPath to the note

obsidian_get_periodic_note

Retrieve the current periodic note (daily, weekly, monthly, quarterly, or yearly)

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
periodstringYesPeriod type: daily, weekly, monthly, quarterly, or yearly

Output

ParameterTypeDescription
contentstringMarkdown content of the periodic note
periodstringPeriod type of the note

obsidian_list_commands

List all available commands in Obsidian

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API

Output

ParameterTypeDescription
commandsjsonList of available commands with IDs and names
idstringCommand identifier
namestringHuman-readable command name

obsidian_list_files

List files and directories in your Obsidian vault

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
pathstringNoDirectory path relative to vault root. Leave empty to list root.

Output

ParameterTypeDescription
filesjsonList of files and directories
pathstringFile or directory path
typestringWhether the entry is a file or directory

obsidian_open_file

Open a file in the Obsidian UI (creates the file if it does not exist)

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
filenamestringYesPath to the file relative to vault root
newLeafbooleanNoWhether to open the file in a new leaf/tab

Output

ParameterTypeDescription
filenamestringPath of the opened file
openedbooleanWhether the file was successfully opened

obsidian_patch_active

Insert or replace content at a specific heading, block reference, or frontmatter field in the active file

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
contentstringYesContent to insert at the target location
operationstringYesHow to insert content: append, prepend, or replace
targetTypestringYesType of target: heading, block, or frontmatter
targetstringYesTarget identifier (heading text, block reference ID, or frontmatter field name)
targetDelimiterstringNoDelimiter for nested headings (default: "::")
trimTargetWhitespacebooleanNoWhether to trim whitespace from target before matching (default: false)

Output

ParameterTypeDescription
patchedbooleanWhether the active file was successfully patched

obsidian_patch_note

Insert or replace content at a specific heading, block reference, or frontmatter field in a note

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
filenamestringYesPath to the note relative to vault root (e.g. "folder/note.md")
contentstringYesContent to insert at the target location
operationstringYesHow to insert content: append, prepend, or replace
targetTypestringYesType of target: heading, block, or frontmatter
targetstringYesTarget identifier (heading text, block reference ID, or frontmatter field name)
targetDelimiterstringNoDelimiter for nested headings (default: "::")
trimTargetWhitespacebooleanNoWhether to trim whitespace from target before matching (default: false)

Output

ParameterTypeDescription
filenamestringPath of the patched note
patchedbooleanWhether the note was successfully patched

Search for text across notes in your Obsidian vault

Input

ParameterTypeRequiredDescription
apiKeystringYesAPI key from Obsidian Local REST API plugin settings
baseUrlstringYesBase URL for the Obsidian Local REST API
querystringYesText to search for across vault notes
contextLengthnumberNoNumber of characters of context around each match (default: 100)

Output

ParameterTypeDescription
resultsjsonSearch results with filenames, scores, and matching contexts
filenamestringPath to the matching note
scorenumberRelevance score
matchesjsonMatching text contexts
contextstringText surrounding the match

On this page

Start building today
Trusted by over 70,000 builders.
Build Agentic workflows visually on a drag-and-drop canvas or with natural language.
Get started