UNPKG

obsidian-mcp-server

Version:

MCP server for Obsidian vaults — read, write, search, and surgically edit notes, tags, and frontmatter via the Local REST API plugin. STDIO or Streamable HTTP.

101 lines (100 loc) 3.62 kB
{ "manifest_version": "0.3", "name": "obsidian-mcp-server", "version": "3.2.4", "description": "MCP server for Obsidian vaults — read, write, search, and surgically edit notes, tags, and frontmatter via the Local REST API plugin. STDIO or Streamable HTTP.", "author": { "name": "cyanheads" }, "repository": { "type": "git", "url": "https://github.com/cyanheads/obsidian-mcp-server" }, "homepage": "https://github.com/cyanheads/obsidian-mcp-server#readme", "license": "Apache-2.0", "server": { "type": "node", "entry_point": "dist/index.js", "mcp_config": { "command": "node", "args": ["${__dirname}/dist/index.js"], "env": { "MCP_TRANSPORT_TYPE": "stdio", "MCP_AUTH_MODE": "none", "NODE_ENV": "production", "OBSIDIAN_API_KEY": "${OBSIDIAN_API_KEY}", "OBSIDIAN_BASE_URL": "${OBSIDIAN_BASE_URL}", "OBSIDIAN_VERIFY_SSL": "${OBSIDIAN_VERIFY_SSL}", "OBSIDIAN_REQUEST_TIMEOUT_MS": "${OBSIDIAN_REQUEST_TIMEOUT_MS}", "OBSIDIAN_ENABLE_COMMANDS": "${OBSIDIAN_ENABLE_COMMANDS}", "OBSIDIAN_READ_PATHS": "${OBSIDIAN_READ_PATHS}", "OBSIDIAN_WRITE_PATHS": "${OBSIDIAN_WRITE_PATHS}", "OBSIDIAN_READ_ONLY": "${OBSIDIAN_READ_ONLY}", "MCP_LOG_LEVEL": "${MCP_LOG_LEVEL}" } } }, "compatibility": { "runtimes": { "node": ">=24.0.0" } }, "tools_generated": true, "prompts_generated": true, "user_config": { "OBSIDIAN_API_KEY": { "title": "Obsidian API Key", "description": "Bearer token for the Obsidian Local REST API plugin (Settings → Community Plugins → Local REST API).", "type": "string", "required": true }, "OBSIDIAN_BASE_URL": { "title": "Obsidian Base URL", "description": "Base URL of the Obsidian Local REST API. Default: http://127.0.0.1:27123. Use https://127.0.0.1:27124 for the HTTPS port.", "type": "string", "required": false }, "OBSIDIAN_VERIFY_SSL": { "title": "Verify SSL", "description": "Whether to verify the TLS certificate. Default false (plugin uses a self-signed cert).", "type": "string", "required": false }, "OBSIDIAN_REQUEST_TIMEOUT_MS": { "title": "Request Timeout (ms)", "description": "Per-request timeout in milliseconds. Default: 30000.", "type": "string", "required": false }, "OBSIDIAN_ENABLE_COMMANDS": { "title": "Enable Commands", "description": "Opt-in flag for the command-palette pair (obsidian_list_commands + obsidian_execute_command). Off by default.", "type": "string", "required": false }, "OBSIDIAN_READ_PATHS": { "title": "Read Path Allowlist", "description": "Comma-separated vault-relative folder allowlist for reads. Unset = full vault. Example: 'public/,projects/'.", "type": "string", "required": false }, "OBSIDIAN_WRITE_PATHS": { "title": "Write Path Allowlist", "description": "Comma-separated vault-relative folder allowlist for writes. Unset = full vault. Example: 'projects/,scratch/'.", "type": "string", "required": false }, "OBSIDIAN_READ_ONLY": { "title": "Read-Only Mode", "description": "Global read-only kill switch. When true, every write is denied. Default: false.", "type": "string", "required": false }, "MCP_LOG_LEVEL": { "title": "Log Level", "description": "Minimum log level for output (debug, info, warn, error). Default: info.", "type": "string", "required": false } } }