Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing
io.github.pvliesdonk/markdown-vault-mcp
https://pvliesdonk.github.io/markdown-vault-mcp/
STDIO
1 required env var
Hosted endpoint — paste into any MCP client.
Configuration this server reads at startup.
Absolute path to the markdown vault directory
Disable write tools
Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG
Event store backend for HTTP session persistence (file:///path or memory://)
MCP server name shown to clients
Directory for index and embeddings state files
Path to the FTS5 SQLite index file
Path to the numpy embeddings file
Comma-separated frontmatter fields to index for search
Comma-separated frontmatter fields required on every document
Comma-separated glob patterns to exclude from indexing
Embedding provider to use
OpenAI API key (required when EMBEDDING_PROVIDER=openai)
Ollama embedding model name
Force CPU-only inference for Ollama
Ollama server base URL
Git authentication token for push/pull
Remote git repository URL for managed mode
Git username for token auth
Git committer name
Git committer email
Seconds to wait before pushing (batches writes)
Enable Git LFS support
Seconds between periodic git pulls (0 to disable)
Comma-separated allowed attachment extensions, or * for all
Maximum attachment size in MB (0 for unlimited)
Folder name for note templates within the vault
Path to user-defined MCP prompt templates
Bearer token for authentication
OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.
Public base URL of this server (required for OIDC)
OIDC discovery endpoint URL
OIDC client ID
OIDC client secret
Signing key for OIDC session JWTs (critical on Linux/Docker)
Expected OIDC token audience
Space-separated required OIDC scopes
Verify access token JWT instead of id_token
Override Claude app domain for MCP Apps iframe sandboxing
Path to the vault directory inside the container
Disable write tools
Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG
Event store backend for HTTP session persistence (file:///path or memory://)
MCP server name shown to clients
Directory for index and embeddings state files
Path to the FTS5 SQLite index file
Path to the numpy embeddings file
Comma-separated frontmatter fields to index for search
Comma-separated frontmatter fields required on every document
Comma-separated glob patterns to exclude from indexing
Embedding provider to use
OpenAI API key (required when EMBEDDING_PROVIDER=openai)
Ollama embedding model name
Force CPU-only inference for Ollama
Ollama server base URL
Git authentication token for push/pull
Remote git repository URL for managed mode
Git username for token auth
Git committer name
Git committer email
Seconds to wait before pushing (batches writes)
Enable Git LFS support
Seconds between periodic git pulls (0 to disable)
Comma-separated allowed attachment extensions, or * for all
Maximum attachment size in MB (0 for unlimited)
Folder name for note templates within the vault
Path to user-defined MCP prompt templates
Run as this UID (Docker entrypoint)
Run as this GID (Docker entrypoint)
Bearer token for authentication
OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.
Public base URL of this server (required for OIDC)
OIDC discovery endpoint URL
OIDC client ID
OIDC client secret
Signing key for OIDC session JWTs (critical on Linux/Docker)
Expected OIDC token audience
Space-separated required OIDC scopes
Verify access token JWT instead of id_token
Override Claude app domain for MCP Apps iframe sandboxing
Where to find authoritative docs and source for Markdown Vault MCP.
Open MCP Agent Studio and connect this server to Claude, GPT, Gemini, DeepSeek and more — no install required.
Open Agent Studio