{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.13.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.13.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools (true/false, default true)","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC discovery endpoint URL (e.g. https://auth.example.com/.well-known/openid-configuration)","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-18T21:26:26.171164Z","publishedAt":"2026-03-18T21:26:26.171164Z","updatedAt":"2026-03-18T21:26:26.171164Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.13.3","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.13.3","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Logging verbosity","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"MARKDOWN_VAULT_MCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.13.3","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Logging verbosity","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"MARKDOWN_VAULT_MCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-19T05:37:38.579149Z","publishedAt":"2026-03-19T05:37:38.579149Z","updatedAt":"2026-03-19T05:37:38.579149Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.13.4","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.13.4","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Logging verbosity","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"MARKDOWN_VAULT_MCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.13.4","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Logging verbosity","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"MARKDOWN_VAULT_MCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-19T10:46:31.289297Z","publishedAt":"2026-03-19T10:46:31.289297Z","updatedAt":"2026-03-19T10:46:31.289297Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.14.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.14.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Logging verbosity","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"MARKDOWN_VAULT_MCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.14.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Logging verbosity","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"MARKDOWN_VAULT_MCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-19T12:43:48.686759Z","publishedAt":"2026-03-19T12:43:48.686759Z","updatedAt":"2026-03-19T12:43:48.686759Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.15.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.15.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.15.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-21T12:41:10.136301Z","publishedAt":"2026-03-21T12:41:10.136301Z","updatedAt":"2026-03-21T12:41:10.136301Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.16.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.16.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.16.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-23T09:25:55.343013Z","publishedAt":"2026-03-23T09:25:55.343013Z","updatedAt":"2026-03-23T09:25:55.343013Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.17.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.17.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.17.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-24T20:18:51.798992Z","publishedAt":"2026-03-24T20:18:51.798992Z","updatedAt":"2026-03-24T20:18:51.798992Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.18.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.18.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.18.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-03-31T13:49:51.755546Z","publishedAt":"2026-03-31T13:49:51.755546Z","updatedAt":"2026-03-31T13:49:51.755546Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.18.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.18.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.18.1","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-02T09:57:23.469257Z","publishedAt":"2026-04-02T09:57:23.469257Z","updatedAt":"2026-04-02T09:57:23.469257Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.19.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.19.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.19.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-04T07:20:26.659696Z","publishedAt":"2026-04-04T07:20:26.659696Z","updatedAt":"2026-04-04T07:20:26.659696Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.19.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.19.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.19.1","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-04T10:23:57.420489Z","publishedAt":"2026-04-04T10:23:57.420489Z","updatedAt":"2026-04-04T10:23:57.420489Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.20.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.20.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.20.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-08T15:14:07.893447Z","publishedAt":"2026-04-08T15:14:07.893447Z","updatedAt":"2026-04-08T15:14:07.893447Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.20.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.20.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.20.1","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-10T09:52:49.617588Z","publishedAt":"2026-04-10T09:52:49.617588Z","updatedAt":"2026-04-10T09:52:49.617588Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.21.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.21.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.21.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-10T17:41:36.003531Z","publishedAt":"2026-04-10T17:41:36.003531Z","updatedAt":"2026-04-10T17:41:36.003531Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.22.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.22.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.22.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-16T13:54:02.042583Z","publishedAt":"2026-04-16T13:54:02.042583Z","updatedAt":"2026-04-16T13:54:02.042583Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.22.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.22.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.22.1","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-17T08:17:10.627452Z","publishedAt":"2026-04-17T08:17:10.627452Z","updatedAt":"2026-04-17T08:17:10.627452Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.23.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.23.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.23.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-19T19:34:01.156426Z","publishedAt":"2026-04-19T19:34:01.156426Z","updatedAt":"2026-04-19T19:34:01.156426Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.23.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.23.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.23.1","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-20T05:35:52.919224Z","publishedAt":"2026-04-20T05:35:52.919224Z","updatedAt":"2026-04-20T05:35:52.919224Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.25.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.25.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.25.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-20T16:57:23.492491Z","publishedAt":"2026-04-20T16:57:23.492491Z","updatedAt":"2026-04-20T16:57:23.492491Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.27.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.27.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.27.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-21T05:22:04.994741Z","publishedAt":"2026-04-21T05:22:04.994741Z","updatedAt":"2026-04-21T05:22:04.994741Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"1.27.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"1.27.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v1.27.1","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Event store backend for HTTP session persistence (file:///path or memory://)","default":"file:///data/state/events","name":"MARKDOWN_VAULT_MCP_EVENT_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-23T08:45:47.249726Z","publishedAt":"2026-04-23T08:45:47.249726Z","updatedAt":"2026-04-23T08:45:47.249726Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"3.0.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"3.0.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v3.0.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-17T16:07:11.415738Z","publishedAt":"2026-06-17T16:07:11.415738Z","updatedAt":"2026-06-17T16:07:11.415738Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"3.0.1","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"3.0.1","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v3.0.1","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Persistent-state backend URL for pvl-core subsystems. Schemes: file:///path (survives restarts), memory:// (dev/ephemeral).","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-22T16:35:47.24393Z","publishedAt":"2026-06-22T16:35:47.24393Z","updatedAt":"2026-06-22T16:35:47.24393Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"3.0.2","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"3.0.2","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v3.0.2","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Persistent-state backend URL for pvl-core subsystems. Schemes: file:///path (survives restarts), memory:// (dev/ephemeral).","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-25T09:39:53.208451Z","publishedAt":"2026-06-25T09:39:53.208451Z","updatedAt":"2026-06-25T09:39:53.208451Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"3.0.3","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"3.0.3","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v3.0.3","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Persistent-state backend URL for pvl-core subsystems. Schemes: file:///path (survives restarts), memory:// (dev/ephemeral).","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-26T13:23:34.83305Z","publishedAt":"2026-06-26T13:23:34.83305Z","updatedAt":"2026-06-26T13:23:34.83305Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"3.0.4","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"3.0.4","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v3.0.4","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Persistent-state backend URL for pvl-core subsystems. Schemes: file:///path (survives restarts), memory:// (dev/ephemeral).","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-27T13:01:30.816788Z","publishedAt":"2026-06-27T13:01:30.816788Z","updatedAt":"2026-06-27T13:01:30.816788Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.pvliesdonk/markdown-vault-mcp","description":"Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing","title":"Markdown Vault MCP","repository":{"url":"https://github.com/pvliesdonk/markdown-vault-mcp","source":"github"},"version":"3.1.0","websiteUrl":"https://pvliesdonk.github.io/markdown-vault-mcp/","packages":[{"registryType":"pypi","identifier":"markdown-vault-mcp","version":"3.1.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the markdown vault directory","isRequired":true,"format":"filepath","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Unified key-value backend for HTTP session persistence (file:///path or memory://). Legacy alias: MARKDOWN_VAULT_MCP_EVENT_STORE_URL","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]},{"registryType":"oci","identifier":"ghcr.io/pvliesdonk/markdown-vault-mcp:v3.1.0","transport":{"type":"streamable-http","url":"http://localhost:{--port}/mcp"},"packageArguments":[{"description":"Port for the HTTP transport","default":"8000","type":"named","name":"--port"}],"environmentVariables":[{"description":"Path to the vault directory inside the container","format":"filepath","default":"/data/vault","name":"MARKDOWN_VAULT_MCP_SOURCE_DIR"},{"description":"Disable write tools","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_READ_ONLY"},{"description":"Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG","default":"INFO","choices":["DEBUG","INFO","WARNING","ERROR"],"name":"FASTMCP_LOG_LEVEL"},{"description":"Persistent-state backend URL for pvl-core subsystems. Schemes: file:///path (survives restarts), memory:// (dev/ephemeral).","default":"file:///data/state","name":"MARKDOWN_VAULT_MCP_KV_STORE_URL"},{"description":"MCP server name shown to clients","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_SERVER_NAME"},{"description":"Directory for index and embeddings state files","format":"filepath","default":"/data/state","name":"MARKDOWN_VAULT_MCP_STATE_PATH"},{"description":"Path to the FTS5 SQLite index file","format":"filepath","name":"MARKDOWN_VAULT_MCP_INDEX_PATH"},{"description":"Path to the numpy embeddings file","format":"filepath","name":"MARKDOWN_VAULT_MCP_EMBEDDINGS_PATH"},{"description":"Comma-separated frontmatter fields to index for search","name":"MARKDOWN_VAULT_MCP_INDEXED_FIELDS"},{"description":"Comma-separated frontmatter fields required on every document","name":"MARKDOWN_VAULT_MCP_REQUIRED_FIELDS"},{"description":"Comma-separated glob patterns to exclude from indexing","name":"MARKDOWN_VAULT_MCP_EXCLUDE"},{"description":"Embedding provider to use","choices":["openai","ollama","fastembed","fastembed-gpu"],"name":"MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER"},{"description":"OpenAI API key (required when MARKDOWN_VAULT_MCP_EMBEDDING_PROVIDER=openai)","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"OpenAI-compatible API base URL (e.g. SiliconFlow, Together, internal gateways); also accepts MARKDOWN_VAULT_MCP_OPENAI_BASE_URL","default":"https://api.openai.com/v1","name":"OPENAI_BASE_URL"},{"description":"OpenAI-compatible embedding model name; also accepts MARKDOWN_VAULT_MCP_OPENAI_EMBEDDING_MODEL","default":"text-embedding-3-small","name":"OPENAI_EMBEDDING_MODEL"},{"description":"Ollama embedding model name","default":"nomic-embed-text","name":"MARKDOWN_VAULT_MCP_OLLAMA_MODEL"},{"description":"Force CPU-only inference for Ollama","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OLLAMA_CPU_ONLY"},{"description":"Ollama server base URL","default":"http://localhost:11434","name":"OLLAMA_HOST"},{"description":"Git authentication token for push/pull","isSecret":true,"name":"MARKDOWN_VAULT_MCP_GIT_TOKEN"},{"description":"Remote git repository URL for managed mode","name":"MARKDOWN_VAULT_MCP_GIT_REPO_URL"},{"description":"Git username for token auth","default":"x-access-token","name":"MARKDOWN_VAULT_MCP_GIT_USERNAME"},{"description":"Git committer name","default":"markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_NAME"},{"description":"Git committer email","default":"noreply@markdown-vault-mcp","name":"MARKDOWN_VAULT_MCP_GIT_COMMIT_EMAIL"},{"description":"Seconds to wait before pushing (batches writes)","format":"number","default":"30","name":"MARKDOWN_VAULT_MCP_GIT_PUSH_DELAY_S"},{"description":"Enable Git LFS support","format":"boolean","default":"true","name":"MARKDOWN_VAULT_MCP_GIT_LFS"},{"description":"Seconds between periodic git pulls (0 to disable)","format":"number","default":"600","name":"MARKDOWN_VAULT_MCP_GIT_PULL_INTERVAL_S"},{"description":"Comma-separated allowed attachment extensions, or * for all","name":"MARKDOWN_VAULT_MCP_ATTACHMENT_EXTENSIONS"},{"description":"Maximum attachment size in MB (0 for unlimited)","format":"number","default":"10","name":"MARKDOWN_VAULT_MCP_MAX_ATTACHMENT_SIZE_MB"},{"description":"Folder name for note templates within the vault","default":"_templates","name":"MARKDOWN_VAULT_MCP_TEMPLATES_FOLDER"},{"description":"Path to user-defined MCP prompt templates","format":"filepath","name":"MARKDOWN_VAULT_MCP_PROMPTS_FOLDER"},{"description":"Run as this UID (Docker entrypoint)","format":"number","default":"1000","name":"PUID"},{"description":"Run as this GID (Docker entrypoint)","format":"number","default":"1000","name":"PGID"},{"description":"Bearer token for authentication","isSecret":true,"name":"MARKDOWN_VAULT_MCP_BEARER_TOKEN"},{"description":"OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.","name":"MARKDOWN_VAULT_MCP_AUTH_MODE"},{"description":"Public base URL of this server (required for OIDC)","name":"MARKDOWN_VAULT_MCP_BASE_URL"},{"description":"OIDC discovery endpoint URL","name":"MARKDOWN_VAULT_MCP_OIDC_CONFIG_URL"},{"description":"OIDC client ID","name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_ID"},{"description":"OIDC client secret","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_CLIENT_SECRET"},{"description":"Signing key for OIDC session JWTs (critical on Linux/Docker)","isSecret":true,"name":"MARKDOWN_VAULT_MCP_OIDC_JWT_SIGNING_KEY"},{"description":"Expected OIDC token audience","name":"MARKDOWN_VAULT_MCP_OIDC_AUDIENCE"},{"description":"Space-separated required OIDC scopes","default":"openid","name":"MARKDOWN_VAULT_MCP_OIDC_REQUIRED_SCOPES"},{"description":"Verify access token JWT instead of id_token","format":"boolean","default":"false","name":"MARKDOWN_VAULT_MCP_OIDC_VERIFY_ACCESS_TOKEN"},{"description":"Override Claude app domain for MCP Apps iframe sandboxing","name":"MARKDOWN_VAULT_MCP_APP_DOMAIN"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-08T05:22:57.445285Z","publishedAt":"2026-07-08T05:22:57.445285Z","updatedAt":"2026-07-08T05:22:57.445285Z","isLatest":true}}}],"metadata":{"count":27}}
