Files
obsidian-mcp/manifest.json
2026-04-30 20:12:09 -05:00

173 lines
7.2 KiB
JSON

{
"manifest_version": "0.3",
"name": "obsidian-mcp",
"version": "1.2.0",
"display_name": "Obsidian CLI Bundle",
"description": "MCP Bundle for Obsidian CLI - Enable AI assistants to manage Obsidian vaults through conversational interface",
"long_description": "This MCP bundle provides a comprehensive set of tools for AI assistants to interact with and manage Obsidian vaults. It includes capabilities for creating, reading, updating, and deleting notes, managing links and tags, handling tasks, and more. With this bundle, AI assistants can seamlessly integrate with Obsidian to help users organize their knowledge and workflows.",
"author": {
"name": "Peter Morton",
"email": "Peter.Morton@verint.com",
"url": "https://git.mortons.site/Peter.Morton/obsidian-mcp"
},
"repository": {
"type": "git",
"url": "https://git.mortons.site/Peter.Morton/obsidian-mcp.git"
},
"homepage": "https://git.mortons.site/Peter.Morton/obsidian-mcp",
"documentation": "https://git.mortons.site/Peter.Morton/obsidian-mcp/src/branch/main/README.md",
"support": "https://git.mortons.site/Peter.Morton/obsidian-mcp/issues",
"keywords": [
"obsidian",
"notes",
"note-taking",
"knowledge management",
"vault",
"markdown",
"daily notes"
],
"license": "MIT",
"icon": "assets/icon.png",
"server": {
"type": "node",
"entry_point": "dist/index.js",
"mcp_config": {
"command": "node",
"args": ["${__dirname}/dist/index.js"],
"env": {
"OBSIDIAN_VAULT": "${user_config.vault_name}",
"MCP_LOG_LEVEL": "info"
}
}
},
"compatibility": {
"claude_desktop": ">=1.1.0",
"platforms": ["darwin", "win32", "linux"],
"runtimes": {
"node": ">=24.13.0"
}
},
"user_config": {
"vault_name": {
"type": "string",
"title": "Vault Name",
"description": "Name of the Obsidian vault to manage (case-sensitive)",
"required": true
}
},
"tools": [
{
"name": "obsidian_create_note",
"description": "Create a new note in the Obsidian vault. Optionally specify path, content, template, and whether to overwrite existing notes or open after creation."
},
{
"name": "obsidian_read_note",
"description": "Read the content of a note from the Obsidian vault. Specify either the note name (file) or full path (path)."
},
{
"name": "obsidian_append_to_note",
"description": "Append content to the end of an existing note. Specify either file name or path, and the content to append. Use inline flag to append without a new line."
},
{
"name": "obsidian_prepend_to_note",
"description": "Prepend content to the beginning of an existing note. Specify either file name or path, and the content to prepend."
},
{
"name": "obsidian_delete_note",
"description": "Delete a note from the Obsidian vault. By default moves to trash; use permanent flag for permanent deletion. Specify either file name or path."
},
{
"name": "obsidian_move_note",
"description": "Move a note to a different location in the vault. Specify the current note (file or path) and the new path (newPath)."
},
{
"name": "obsidian_rename_note",
"description": "Rename a note in the vault. Specify the current note (file or path) and the new name (newName)."
},
{
"name": "obsidian_open_note",
"description": "Open a note in the Obsidian application. Specify either file name or path. Use newtab flag to open in a new tab."
},
{
"name": "obsidian_get_file_info",
"description": "Get metadata and information about a note file. Specify either file name or path. Returns file size, dates, path, and other metadata."
},
{
"name": "obsidian_search",
"description": "Search vault for text. Returns matching files and optionally match counts. Supports path filtering, result limits, case sensitivity, and multiple output formats (text/json)."
},
{
"name": "obsidian_get_backlinks",
"description": "Get all backlinks (incoming links) to a note. Shows which notes reference this note. Optionally include link counts."
},
{
"name": "obsidian_get_outgoing_links",
"description": "Get all outgoing links from a note. Shows which notes this note references. Useful for understanding note connections."
},
{
"name": "obsidian_list_unresolved_links",
"description": "List all unresolved (broken) wikilinks in the vault. Shows links pointing to notes that don't exist. Useful for finding content gaps."
},
{
"name": "obsidian_list_deadends",
"description": "List all dead-end notes (notes with no outgoing links). These notes don't connect to anything else in the vault."
},
{
"name": "obsidian_list_orphans",
"description": "List all orphan notes (notes with no incoming links/backlinks). These notes aren't referenced by any other notes."
},
{
"name": "obsidian_list_tags",
"description": "List all tags in the vault or in a specific note. Optionally include usage counts and sort by frequency or name."
},
{
"name": "obsidian_search_by_tag",
"description": "Get detailed information about a specific tag, including which notes use it and how many times."
},
{
"name": "obsidian_list_aliases",
"description": "List all aliases in the vault or for a specific note. Aliases are alternative names for notes."
},
{
"name": "obsidian_list_properties",
"description": "List all properties used in the vault. Shows property keys and optionally their types and usage counts."
},
{
"name": "obsidian_get_property_count",
"description": "Get the usage count for a specific property across the vault. Shows how many notes use this property."
},
{
"name": "obsidian_list_tasks",
"description": "List all tasks in the vault or specific file. Filter by status (done/todo), show line numbers with verbose flag."
},
{
"name": "obsidian_toggle_task",
"description": "Toggle a task status between done and todo. Specify task by ref (path:line) or by file/path + line number."
},
{
"name": "obsidian_mark_task_done",
"description": "Mark a task as done (completed). Specify task by ref (path:line) or by file/path + line number."
},
{
"name": "obsidian_mark_task_todo",
"description": "Mark a task as todo (incomplete). Specify task by ref (path:line) or by file/path + line number."
},
{
"name": "obsidian_update_task_status",
"description": "Set a custom status character for a task (e.g., '-', '>', '!', '?'). Specify task by ref or file/path + line."
},
{
"name": "obsidian_get_property",
"description": "Read a single property value from a file. Specify property name and file (by name or path)."
},
{
"name": "obsidian_set_property",
"description": "Set or update a property on a file. Specify property name, value, optional type, and file."
},
{
"name": "obsidian_remove_property",
"description": "Remove a property from a file. Specify property name and file (by name or path)."
}
]
}