Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/pvliesdonk/markdown-vault-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/plugins/pvliesdonk/markdown-vault-mcp/plugin)<a href="https://agentmods.dev/plugins/pvliesdonk/markdown-vault-mcp/plugin"><img src="https://agentmods.dev/badge/plugins/pvliesdonk/markdown-vault-mcp/plugin/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/plugins/pvliesdonk/markdown-vault-mcp/plugin"><img src="https://agentmods.dev/badge/plugins/pvliesdonk/markdown-vault-mcp/plugin.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
markdown-vault-mcp scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 15d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 133 lines — stays where its author put it; the contents beside it link to each section on GitHub.
{
"name": "markdown-vault-mcp",
"description": "Generic markdown vault MCP with hybrid search",
"version": "5.1.0",
"author": {
"name": "Peter van Liesdonk"
},
"homepage": "https://pvliesdonk.github.io/markdown-vault-mcp/",
"repository": "https://github.com/pvliesdonk/markdown-vault-mcp",
"license": "MIT",
"keywords": [
"markdown",
"vault",
"obsidian",
"search",
"mcp"
],
"userConfig": {
"source_dir": {
"type": "directory",
"title": "Vault directory",
"description": "Path to the markdown vault directory. When it does not exist, or the server cannot access it, the server starts but every tool fails with a message saying which until it is fixed (managed git mode clones into it). Symbolic links inside the vault are followed on Python 3.13+.",
"required": true
},
"read_only": {
"type": "boolean",
"title": "Read-only mode",
"description": "Set to true to hide the write tools (write, edit, append, delete, rename, move_folder, fetch, git_sync, the okf_* tools, create_upload_link) and serve a search-only vault.",
"required": false,
"default": false
},
"exclude_patterns": {
"type": "string",
"title": "Exclude patterns",
"description": "Comma-separated glob patterns excluded from scanning, e.g. .obsidian/**,.trash/**.",
"required": false,
"default": ".obsidian/**,.trash/**,.git/**"
},
"embedding_provider": {
"type": "string",
"title": "Embedding provider",
"description": "Semantic-search backend: fastembed, ollama, openai, or voyage. Leave empty to disable embeddings.",
"required": false
},
"ollama_host": {
"type": "string",
"title": "Ollama host",
"description": "Ollama server URL for the ollama embedding provider. Bare (not MARKDOWN_VAULT_MCP_-prefixed), matching the Ollama ecosystem convention.",
"required": false,
"default": "http://localhost:11434"
},
What it installs
The manifest is a name and a version. 3 skills, 1 agent, 1 hook travel with it, and installing the plugin installs all of them — 202 tokens a session between them. Each is measured on its own page, and each can be installed alone.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 15d ago Changed 3d201ac75de8
- 25d ago Changed 41d89dbc14df
- 26d ago Changed 8db3ce1577d8
- 28d ago Changed d09654ecd12a
- 29d ago Changed 1617b925d5ad
- 1mo ago Changed ddc02c38cf35
- 1mo ago Changed 63334a6fe733
- 1mo ago Changed 25253fdb40f4
- 1mo ago Changed f9d499c6abdd
- 1mo ago First seen · 133 lines scan A 847dd2810fa4
markdown-vault-mcp is a plugin published in the GitHub repository pvliesdonk/markdown-vault-mcp (35 stars, last pushed today), licensed MIT. Its token cost is not measured: this kind of file is read by the harness, not the model. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other plugins, from other repositories
llm-wiki
Self-maintaining LLM wiki (Karpathy pattern): recall, observe, retro, capture sources, ensure pages, lint, and ingest. 15 tools over MCP.
agent-knowledge
Cross-session memory for AI coding agents. Git-synced Markdown knowledge base with hybrid semantic + TF-IDF search, typed knowledge graph, and session auto-distillation with secrets scrubbing.
arscontexta
Conversational derivation engine — generate agent-native memory architecture from natural conversation. 15 kernel primitives, 26 commands, 17 feature blocks, 3 presets.
context
Your Context notes in your coding agent: the MCP server, skills that say when to read and write them, and hooks that orient at session start and save the session at the end.
context
Your Context notes in your coding agent: the MCP server, skills that say when to read and write them, and hooks that orient at session start and save the session at the end.
vellum
Connect Claude to your self-hosted vellum markdown vault: read, write, search, tags, tasks and backlinks.