Skip to main content
Glama
codeafix

obsidian-mcp-guard

by codeafix

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
WRITE_VAULTNoName of the only vault where write operations are permittedClaude
HOST_VAULT_PATHYesAbsolute path to the directory containing your vaults as subdirectories

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
read_noteA

Return the full markdown content of a note. source is in vault/relative/path.md format, as returned by search_notes. The full filesystem path is HOST_VAULT_PATH / source.

list_notesA

List note paths within a vault, optionally scoped to a subfolder. Returns paths in vault/relative/path.md format — the same format as the source field from search_notes — so results can be passed directly to read_note. Set recursive=False to list only the immediate folder (non-recursive).

create_noteA

Create a new note at source (vault/relative/path.md format). Refuses with a structured error if the target vault is not WRITE_VAULT. Refuses to overwrite an existing file unless overwrite=True. Creates intermediate directories as needed.

update_noteA

Update an existing note. mode must be 'overwrite' (replace entire content) or 'append' (add content to the end of the file). Refuses with a structured error if the target vault is not WRITE_VAULT.

delete_noteA

Move a note to the .trash folder at the vault root rather than deleting it permanently. The directory structure within the vault is preserved under .trash so the file can be recovered if needed. Refuses with a structured error if the target vault is not WRITE_VAULT.

move_noteA

Move a note from source_path to dest_path (vault/relative/path.md format). Both paths must be within WRITE_VAULT. Fails if dest_path already exists — there is no overwrite option. If create_dirs=True (default), creates missing parent directories. After a successful move, wikilinks in all vault .md files that referenced the old filename are rewritten to use the new filename. Returns {"success": bool, "source": str, "destination": str, "links_updated": int}.

lint_noteA

Pre-validate markdown content without writing it to disk. Returns {"valid": bool, "errors": [...], "warnings": [...]}. Use this to check content before calling create_note or update_note.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.4/5.0

Scored across 7 tools

Disambiguation5/5

Each tool targets a distinct operation: create, read, update, delete, move, list, and lint. No two tools overlap in purpose, so an agent can clearly differentiate them.

Naming Consistency5/5

All tool names follow the verb_note/verb_notes pattern (delete_note, move_note, lint_note, read_note, list_notes, create_note, update_note), demonstrating a highly consistent naming convention.

Tool Count5/5

Seven tools is a well-scoped set for a note management server, covering the essential operations without unnecessary bloat or sparse coverage.

Completeness4/5

The set covers the full CRUD lifecycle plus move, list, and lint, but the descriptions reference a search_notes tool that is not exposed. This creates a potential dead end for agents that rely on that referenced capability.

Maintenance

ActivityInactive
ResponsivenessNo issues