MCP Resources¶
MCP resources expose vault metadata as structured JSON that clients can read directly without invoking tools. All resources return application/json.
Quick Reference¶
| URI | Description |
|---|---|
config://vault |
Current collection configuration |
stats://vault |
Collection statistics |
tags://vault |
All tags grouped by indexed field |
tags://vault/{field} |
Tags for a specific field |
folders://vault |
All folder paths |
toc://vault/{path} |
Table of contents for a document |
config://vault¶
Current collection configuration and runtime state.
Response:
{
"source_dir": "/data/vault",
"read_only": true,
"indexed_fields": ["tags", "cluster"],
"required_fields": [],
"exclude_patterns": [".obsidian/**", ".trash/**"],
"semantic_search_available": true,
"attachment_extensions": ["pdf", "png", "jpg"]
}
stats://vault¶
Collection statistics — document count, chunk count, and capabilities.
Response:
{
"document_count": 42,
"chunk_count": 156,
"folder_count": 5,
"semantic_search_available": true,
"indexed_frontmatter_fields": ["tags", "cluster"],
"attachment_extensions": ["pdf", "png", "jpg"]
}
tags://vault¶
All frontmatter tag values grouped by indexed field.
Response:
tags://vault/{field}¶
Tag values for a specific indexed frontmatter field. This is a URI template — replace {field} with the field name.
Example: tags://vault/tags
Response:
folders://vault¶
All folder paths in the vault.
Response:
The empty string "" represents the root folder (top-level documents).
toc://vault/{path}¶
Table of contents (heading outline) for a specific document. This is a URI template — replace {path} with the document's relative path.
Example: toc://vault/Journal/note.md
Response:
[
{"level": 1, "title": "My Note"},
{"level": 2, "title": "Introduction"},
{"level": 2, "title": "Main Points"},
{"level": 3, "title": "First Point"},
{"level": 2, "title": "Conclusion"}
]
The TOC prepends a synthetic H1 from the document title and deduplicates if the first real heading matches the title.