← Index

Markdown Vault MCP

io.github.pvliesdonk/markdown-vault-mcpv3.1.0Search

Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing

In-path gate · all MCP tools

Using Markdown Vault MCP in Claude, Cursor, Gemini CLI, Cline, or Zed?

MCP tool contracts can change remotely with no version bump. The mcpindex gate pins each contract and HOLDs the call when it drifts-before your agent acts. Zero credentials. This is not the package install for this server itself (use Install this server for that).

Install the mcpindex gate (one command)

Rewrites your MCP host config so each server launches behind the gate. Inspect first: curl -fsSL https://mcpindex.ai/install.sh | less

uv tool install mcpindex-gate && mcpindex-config-wire
Trust verdict · v1 advisory · method
REVIEWstatus: PARTIALfresh until 2026-08-06 11:04 UTC
screened 2026-07-07tier: scannedgranularity: description-levelsource: registry

Semantic screen found no manipulation pattern in the description. Conformance probe not yet run.

mcpindex.integrity.descriptionpassINFO

evidenceNo malicious instructions foundvia static_description

Limits of this verdict
  • - Semantic screen only - the deterministic conformance probe has not run on this server
  • - Confidence is reported but not yet calibrated (v1)
  • - Screen reads the tool description, not the live behavior
  • - advisory
  • - registry description only no input schema
  • - screen model 8b

Semantic screen: an LLM judge reads the tool description for hidden instructions (status PARTIAL). A pass means the description is not lying, not that the tool is safe: a high-capability tool with an honest description still warrants caution. The deterministic conformance probe has not been run on this server yet, so the screen here is semantic-only. Posture: advisory. Confidences are reported but not yet calibrated (calibrated=false at v1). Full verdict history is not shown on this page.

Own this server? Screen its description →

That verdict was true at screening time (snapshot 2026-07-31).

Contracts can change after screening, with no version bump. The gate pins Markdown Vault MCP’s tool contracts on first sight and holds any silent change before your agent acts - the check that keeps being true on Tuesday.

See your first HOLD in 2 minutes →

Related: how to trust an MCP server · screen before install · silent contract drift

Embed this badge

A live verdict badge for your README or listing. It reflects the current screen, links back here, and updates when the verdict does.

Markdown
[![mcpindex](https://mcpindex.ai/api/v1/badge/io-github-pvliesdonk-markdown-vault-mcp)](https://mcpindex.ai/server/io-github-pvliesdonk-markdown-vault-mcp)
HTML
<a href="https://mcpindex.ai/server/io-github-pvliesdonk-markdown-vault-mcp"><img src="https://mcpindex.ai/api/v1/badge/io-github-pvliesdonk-markdown-vault-mcp" alt="mcpindex verdict" height="20" /></a>
Environment variables
MARKDOWN_VAULT_MCP_SOURCE_DIR
required

Absolute path to the markdown vault directory

MARKDOWN_VAULT_MCP_READ_ONLY

Disable write tools

FASTMCP_LOG_LEVEL

Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG

MARKDOWN_VAULT_MCP_KV_STORE_URL

Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL

MARKDOWN_VAULT_MCP_SERVER_NAME

MCP server name shown to clients

MARKDOWN_VAULT_MCP_STATE_PATH

Directory for index and embeddings state files

MARKDOWN_VAULT_MCP_INDEX_PATH

Path to the FTS5 SQLite index file

MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH

Path to the numpy embeddings file

MARKDOWN_VAULT_MCP_INDEXED_FIELDS

Comma-separated frontmatter fields to index for search

MARKDOWN_VAULT_MCP_REQUIRED_FIELDS

Comma-separated frontmatter fields required on every document

MARKDOWN_VAULT_MCP_EXCLUDE

Comma-separated glob patterns to exclude from indexing

MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER

Embedding provider to use

OPENAI_API_KEY
secret

OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)

OPENAI_BASE_URL

OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL

OPENAI_EMBEDDING_MODEL

OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL

MARKDOWN_VAULT_MCP_OLLAMA_MODEL

Ollama embedding model name

MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY

Force CPU-only inference for Ollama

OLLAMA_HOST

Ollama server base URL

MARKDOWN_VAULT_MCP_GIT_TOKEN
secret

Git authentication token for push/pull

MARKDOWN_VAULT_MCP_GIT_REPO_URL

Remote git repository URL for managed mode

MARKDOWN_VAULT_MCP_GIT_USERNAME

Git username for token auth

MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME

Git committer name

MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL

Git committer email

MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S

Seconds to wait before pushing (batches writes)

MARKDOWN_VAULT_MCP_GIT_LFS

Enable Git LFS support

MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S

Seconds between periodic git pulls (0 to disable)

MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS

Comma-separated allowed attachment extensions, or * for all

MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB

Maximum attachment size in MB (0 for unlimited)

MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER

Folder name for note templates within the vault

MARKDOWN_VAULT_MCP_PROMPTS_FOLDER

Path to user-defined MCP prompt templates

MARKDOWN_VAULT_MCP_BEARER_TOKEN
secret

Bearer token for authentication

MARKDOWN_VAULT_MCP_AUTH_MODE

OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.

MARKDOWN_VAULT_MCP_BASE_URL

Public base URL of this server (required for OIDC)

MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL

OIDC discovery endpoint URL

MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID

OIDC client ID

MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET
secret

OIDC client secret

MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY
secret

Signing key for OIDC session JWTs (critical on Linux/Docker)

MARKDOWN_VAULT_MCP_OIDC_AUDIENCE

Expected OIDC token audience

MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES

Space-separated required OIDC scopes

MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN

Verify access token JWT instead of id_token

MARKDOWN_VAULT_MCP_APP_DOMAIN

Override Claude app domain for MCP Apps iframe sandboxing

MARKDOWN_VAULT_MCP_SOURCE_DIR

Path to the vault directory inside the container

MARKDOWN_VAULT_MCP_READ_ONLY

Disable write tools

FASTMCP_LOG_LEVEL

Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG

MARKDOWN_VAULT_MCP_KV_STORE_URL

Persistent-state backend URL for pvl-core subsystems. Schemes: file:///path (survives restarts), memory:// (dev/ephemeral).

MARKDOWN_VAULT_MCP_SERVER_NAME

MCP server name shown to clients

MARKDOWN_VAULT_MCP_STATE_PATH

Directory for index and embeddings state files

MARKDOWN_VAULT_MCP_INDEX_PATH

Path to the FTS5 SQLite index file

MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH

Path to the numpy embeddings file

MARKDOWN_VAULT_MCP_INDEXED_FIELDS

Comma-separated frontmatter fields to index for search

MARKDOWN_VAULT_MCP_REQUIRED_FIELDS

Comma-separated frontmatter fields required on every document

MARKDOWN_VAULT_MCP_EXCLUDE

Comma-separated glob patterns to exclude from indexing

MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER

Embedding provider to use

OPENAI_API_KEY
secret

OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)

OPENAI_BASE_URL

OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL

OPENAI_EMBEDDING_MODEL

OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL

MARKDOWN_VAULT_MCP_OLLAMA_MODEL

Ollama embedding model name

MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY

Force CPU-only inference for Ollama

OLLAMA_HOST

Ollama server base URL

MARKDOWN_VAULT_MCP_GIT_TOKEN
secret

Git authentication token for push/pull

MARKDOWN_VAULT_MCP_GIT_REPO_URL

Remote git repository URL for managed mode

MARKDOWN_VAULT_MCP_GIT_USERNAME

Git username for token auth

MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME

Git committer name

MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL

Git committer email

MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S

Seconds to wait before pushing (batches writes)

MARKDOWN_VAULT_MCP_GIT_LFS

Enable Git LFS support

MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S

Seconds between periodic git pulls (0 to disable)

MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS

Comma-separated allowed attachment extensions, or * for all

MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB

Maximum attachment size in MB (0 for unlimited)

MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER

Folder name for note templates within the vault

MARKDOWN_VAULT_MCP_PROMPTS_FOLDER

Path to user-defined MCP prompt templates

PUID

Run as this UID (Docker entrypoint)

PGID

Run as this GID (Docker entrypoint)

MARKDOWN_VAULT_MCP_BEARER_TOKEN
secret

Bearer token for authentication

MARKDOWN_VAULT_MCP_AUTH_MODE

OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.

MARKDOWN_VAULT_MCP_BASE_URL

Public base URL of this server (required for OIDC)

MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL

OIDC discovery endpoint URL

MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID

OIDC client ID

MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET
secret

OIDC client secret

MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY
secret

Signing key for OIDC session JWTs (critical on Linux/Docker)

MARKDOWN_VAULT_MCP_OIDC_AUDIENCE

Expected OIDC token audience

MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES

Space-separated required OIDC scopes

MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN

Verify access token JWT instead of id_token

MARKDOWN_VAULT_MCP_APP_DOMAIN

Override Claude app domain for MCP Apps iframe sandboxing

MCP quality score · maturity, not trust · methodology
freshness
25
completeness
20
installability
25
documentation
15
stability
10
Alternatives in Search