Home › Knowledge & Memory › maxkuminov/obsidian-mcp

maxkuminov/obsidian-mcp

Self-hosted agent memory as a markdown vault: semantic and keyword search, wikilink graph, OAuth

Python Local macOSWindowsLinux
★ 18 stars Last pushed 2026-11-11 License: MIT

Topics: Knowledge & Memory

Connect

Review any command before running it. Package names and URLs come from the server's own registry entry.

Package (oci)

Package: oci ghcr.io/maxkuminov/obsidian-mcp:v1.4.0

  • DATABASE_URL required secret — PostgreSQL 16 + pgvector (0.8.0+) connection URL for the app's NON-superuser role, e.g. postgresql+asyncpg://obsidian_mcp:<password>@postgres:5432/obsidian_mcp. A superuser role or a CHANGE_ME password is refused at startup.
  • VAULT_PATH required — Path of the Obsidian vault inside the container (mount your vault read-write there).
  • SECRET_KEY required secret — itsdangerous signer for cookies/sessions. Generate with `openssl rand -hex 32`; the app refuses to start on a placeholder.
  • MCP_HOSTNAME required — Public hostname your reverse proxy routes to. Also derives BASE_URL, ALLOWED_ORIGINS and ALLOWED_HOSTS as https://<MCP_HOSTNAME> unless those are set explicitly.
  • EMBEDDING_PROVIDER — Embedding provider: `ollama` (self-hosted, default), `openai` (bring your own key) or `tei` (Hugging Face Text Embeddings Inference, native /embed). Switching after deploy requires `make reset-embeddings`.
  • OLLAMA_URL — Ollama endpoint serving bge-m3 (used when EMBEDDING_PROVIDER=ollama). Must be https or loopback unless EMBEDDING_ALLOW_PLAINTEXT is set.
  • OPENAI_API_KEY secret — OpenAI (or OpenAI-compatible) API key for text-embedding-3-* (required when EMBEDDING_PROVIDER=openai; the server refuses to start without it).
  • TEI_URL — TEI endpoint (used when EMBEDDING_PROVIDER=tei). Must be https or loopback unless EMBEDDING_ALLOW_PLAINTEXT is set.
  • TEI_EMBEDDING_MODEL — Must equal the model_id the TEI server reports at GET /info, exactly (a local path included); a different value refuses startup. A change needs `make reset-embeddings`.
  • TEI_EMBED_BATCH_SIZE — Inputs per TEI /embed request (1-256). A value above the server's max_client_batch_size refuses startup.

Related servers

Listed in punkpeye/awesome-mcp-servers (MIT)

Data from the Official MCP Registry