Why won't obsidian-mcp-server start and which env vars does it actually support?
I'm trying to run obsidian-mcp-server but it won't start. I set environment variables such as OBSIDIAN_HOST, OBSIDIAN_PORT, and REQUEST_TIMEOUT, yet the server still doesn't work. The maintainer later said those names were never recognized and that v3.1.x uses a smaller set of variables. What is the correct configuration?
Originally asked on GitHub: https://github.com/cyanheads/obsidian-mcp-server/issues/24
2 answers
Status: explained. The maintainer closed the issue after identifying the root cause from the screenshot: the environment variables being set were never recognized by the server, so their values were silently ignored and the server fell back to defaults.
OBSIDIAN_PROTOCOL,OBSIDIAN_HOST,OBSIDIAN_PORT,VERIFY_SSL, andREQUEST_TIMEOUTare not supported names.The server was fully rewritten in v3.0, which simplified the configuration surface. For v3.1.x (latest at closing time: v3.1.7), the full supported set is:
Var Purpose Default OBSIDIAN_API_KEYRequired — Local REST API bearer token — OBSIDIAN_BASE_URLSingle URL including protocol, host, and port http://127.0.0.1:27123OBSIDIAN_VERIFY_SSLVerify the self-signed cert when using HTTPS falseOBSIDIAN_REQUEST_TIMEOUT_MSPer-request HTTP timeout in ms 30000For HTTPS against the Local REST API plugin's port 27124, use
OBSIDIAN_BASE_URL=https://127.0.0.1:27124and keepOBSIDIAN_VERIFY_SSL=falsebecause the plugin uses a self-signed certificate.The issue was closed as inactive, so there is no confirmation that the corrected configuration resolved the problem in this case. The maintainer offered to reopen the issue if problems persist with text-form error output.
General advice:
OBSIDIAN_API_KEYis the bearer token for your vault's REST API, so avoid putting it in shared or committed config files.Did this work for you?What a GitHub user tried on GitHub (Didn't work)
The reporter tried running the server with environment variables including OBSIDIAN_PROTOCOL, OBSIDIAN_HOST, OBSIDIAN_PORT, VERIFY_SSL, and REQUEST_TIMEOUT. The maintainer determined from the screenshot that none of these names are recognized by the server, so their values were silently ignored and the server fell back to defaults.
Source: https://github.com/cyanheads/obsidian-mcp-server/issues/24 (opens external site)
Did this work for you?
Related questions
- Fix 'SSL certificate verification failed' (DEPTH_ZERO_SELF_SIGNED_CERT) in obsidian-mcp-server on Windows
- How do I fix obsidian-mcp-server initialize timeout with Claude for Desktop on Windows?
- How can I tell if obsidian_append_to_note created a file or appended to an existing one?
- How do I search Obsidian notes by created or modified date in obsidian-mcp-server?
- Fix 'Unsupported protocol version: 2025-03-26' in obsidian-mcp-server