← Obsidian MCP

Obsidian MCP 1.6.0

npm · @huangyihe/obsidian-mcp · current release

10
Tools
0
Resources
0
Templates
0
Prompts

Observation

Observed 2026-08-14T07:43:53.305Z using mcpSecurity-inventory. Status: partial. Negotiated protocol: 2025-06-18.

Server capabilities
{
  "resources": {},
  "tools": {}
}

Tools 10

ToolCategoryAnnotationsRisk
auto_backlink_vaultAutomatically add backlinks throughout the entire vault by detecting note names in content and converting them to wikilinks
Input schema
{
  "type": "object",
  "properties": {
    "dryRun": {
      "type": "boolean",
      "description": "Preview changes without applying them (default: true)",
      "default": true
    },
    "excludePatterns": {
      "type": "array",
      "description": "Array of glob patterns to exclude from processing (e.g., [\"template/*\", \"archive/*\"])",
      "items": {
        "type": "string"
      },
      "default": []
    },
    "minLength": {
      "type": "number",
      "description": "Minimum note name length to consider for linking (default: 3)",
      "default": 3
    },
    "caseSensitive": {
      "type": "boolean",
      "description": "Whether matching should be case sensitive (default: false)",
      "default": false
    },
    "wholeWords": {
      "type": "boolean",
      "description": "Whether to match only whole words (default: true)",
      "default": true
    },
    "batchSize": {
      "type": "number",
      "description": "Number of notes to process in each batch (default: 50)",
      "default": 50
    }
  },
  "required": []
}
— · —
create_noteCreate a new note in the Obsidian vault
Input schema
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Path where the note should be created"
    },
    "content": {
      "type": "string",
      "description": "Content of the note"
    }
  },
  "required": [
    "path",
    "content"
  ]
}
— · —
delete_noteDelete a note from the Obsidian vault
Input schema
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Path to the note within the vault"
    }
  },
  "required": [
    "path"
  ]
}
— · —
list_notesList all notes in the Obsidian vault
Input schema
{
  "type": "object",
  "properties": {
    "folder": {
      "type": "string",
      "description": "Folder path within the vault (optional)"
    }
  },
  "required": []
}
— · —
manage_folderCreate, rename, move, or delete a folder in the Obsidian vault
Input schema
{
  "type": "object",
  "properties": {
    "operation": {
      "type": "string",
      "description": "The operation to perform: create, rename, move, or delete",
      "enum": [
        "create",
        "rename",
        "move",
        "delete"
      ]
    },
    "path": {
      "type": "string",
      "description": "Path to the folder within the vault"
    },
    "newPath": {
      "type": "string",
      "description": "New path for the folder (required for rename and move operations)"
    }
  },
  "required": [
    "operation",
    "path"
  ]
}
— · —
move_noteMove or rename a note to a new location in the Obsidian vault
Input schema
{
  "type": "object",
  "properties": {
    "sourcePath": {
      "type": "string",
      "description": "Current path to the note within the vault"
    },
    "destinationPath": {
      "type": "string",
      "description": "New path where the note should be moved"
    }
  },
  "required": [
    "sourcePath",
    "destinationPath"
  ]
}
— · —
read_multiple_notesRead content from multiple notes simultaneously
Input schema
{
  "type": "object",
  "properties": {
    "paths": {
      "type": "array",
      "description": "Array of note paths to read",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "paths"
  ]
}
— · —
read_noteRead the content of a note in the Obsidian vault
Input schema
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Path to the note within the vault"
    }
  },
  "required": [
    "path"
  ]
}
— · —
search_vaultSearch for content in the Obsidian vault
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search query"
    }
  },
  "required": [
    "query"
  ]
}
— · —
update_noteUpdate content in an existing note using text replacements or precise insertions
Input schema
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Path to the note within the vault"
    },
    "edits": {
      "type": "array",
      "description": "Array of edit operations to apply",
      "items": {
        "type": "object",
        "properties": {
          "oldText": {
            "type": "string",
            "description": "Text to search for and replace (for replace mode)"
          },
          "newText": {
            "type": "string",
            "description": "Text to replace with (for replace mode)"
          },
          "mode": {
            "type": "string",
            "enum": [
              "replace",
              "insert"
            ],
            "description": "Edit mode: replace (default) or insert",
            "default": "replace"
          },
          "heading": {
            "type": "string",
            "description": "Target heading for insert mode"
          },
          "content": {
            "type": "string",
            "description": "Content to insert (for insert mode)"
          },
          "position": {
            "type": "string",
            "enum": [
              "before",
              "after",
              "append",
              "prepend"
            ],
            "description": "Where to insert relative to heading: before (above heading), after (below heading), append (end of section), prepend (start of section)",
            "default": "after"
          },
          "level": {
            "type": "number",
            "minimum": 1,
            "maximum": 6,
            "description": "Heading level (1-6) for more precise targeting"
          },
          "blockId": {
            "type": "string",
            "description": "Block ID for block-based insertion (^block-id)"
          }
        },
        "anyOf": [
          {
            "required": [
              "oldText",
              "newText"
            ]
          },
          {
            "required": [
              "mode",
              "heading",
              "content"
            ]
          },
          {
            "required": [
              "mode",
              "blockId",
              "content"
            ]
          }
        ]
      }
    },
    "dryRun": {
      "type": "boolean",
      "description": "Preview changes without applying them",
      "default": false
    }
  },
  "required": [
    "path",
    "edits"
  ]
}
— · —

Resources 0

Resource templates 0

Prompts 0

Let’s talk about MCP security.

Share your details and our security team will contact you.