io.github.cyanheads

obsidian-mcp-server

MCP server for Obsidian vaults — read, write, search, and edit notes via the Local REST API plugin.

communityapplication

Package Details

Transportstdio
Runtimenode

Package Arguments

Positional
Position 0
run
Position 1
start:stdio

Environment Variables

OBSIDIAN_API_KEY(str)
Required

Bearer token for the Obsidian Local REST API plugin (Settings → Community Plugins → Local REST API).

OBSIDIAN_BASE_URL(str)
Default:http://127.0.0.1:27123

Base URL of the Obsidian Local REST API. Default: http://127.0.0.1:27123 (enable "Non-encrypted (HTTP) Server" in plugin settings). Use https://127.0.0.1:27124 for the always-on HTTPS port (self-signed cert; pair with OBSIDIAN_VERIFY_SSL=false).

OBSIDIAN_VERIFY_SSL(str)
Default:false

Whether to verify the TLS certificate on the Obsidian endpoint. Default false because the plugin uses a self-signed cert.

OBSIDIAN_REQUEST_TIMEOUT_MS(str)
Default:30000

Per-request timeout in milliseconds.

OBSIDIAN_ENABLE_COMMANDS(str)
Default:false

Opt-in flag for the command-palette pair (obsidian_list_commands + obsidian_execute_command). Off by default — Obsidian commands are opaque and can be destructive.

MCP_LOG_LEVEL(str)
Default:info

Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

TransportStreamable HTTP
Runtimenode

Package Arguments

Positional
Position 0
run
Position 1
start:http

Environment Variables

OBSIDIAN_API_KEY(str)
Required

Bearer token for the Obsidian Local REST API plugin (Settings → Community Plugins → Local REST API).

OBSIDIAN_BASE_URL(str)
Default:http://127.0.0.1:27123

Base URL of the Obsidian Local REST API. Default: http://127.0.0.1:27123 (enable "Non-encrypted (HTTP) Server" in plugin settings). Use https://127.0.0.1:27124 for the always-on HTTPS port (self-signed cert; pair with OBSIDIAN_VERIFY_SSL=false).

OBSIDIAN_VERIFY_SSL(str)
Default:false

Whether to verify the TLS certificate on the Obsidian endpoint. Default false because the plugin uses a self-signed cert.

OBSIDIAN_REQUEST_TIMEOUT_MS(str)
Default:30000

Per-request timeout in milliseconds.

OBSIDIAN_ENABLE_COMMANDS(str)
Default:false

Opt-in flag for the command-palette pair (obsidian_list_commands + obsidian_execute_command). Off by default — Obsidian commands are opaque and can be destructive.

MCP_HTTP_HOST(str)
Default:127.0.0.1

The hostname for the HTTP server.

MCP_HTTP_PORT(str)
Default:3010

The port to run the HTTP server on.

MCP_HTTP_ENDPOINT_PATH(str)
Default:/mcp

The endpoint path for the MCP server.

MCP_AUTH_MODE(str)
Default:none

Authentication mode to use: 'none', 'jwt', or 'oauth'.

MCP_LOG_LEVEL(str)
Default:info

Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').