Skip to main content
Glama
zoeynine

Obsidian Server MCP

by zoeynine

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OBSIDIAN_VAULT_ROOTYesAbsolute path to the Vault directory. The stdio entry requires only OBSIDIAN_VAULT_ROOT.

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
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
reference_queryA

Find references to a file/heading/block within explicit source and resolution scopes. Read-only; returns matches plus uncertainties and exact source versions. Outside-scope incoming links remain unknown. See help topic references.

obsidian_helpB

Usage manual; omit topic for the topic index.

vault_listA

List a Vault directory; omit path or use "" for root. Directory names end in /. Protected/symlink entries are omitted; overflow errors, never truncation.

vault_readA

Read a Vault text file or target with its version. Discover targets via vault_get_document_map; targeted heading levels are relative. No link graph.

vault_get_document_mapB

Get heading paths, block IDs, property names and exact-byte version. Copy returned keys unchanged for targeted reads/patches.

search_queryA

Query Markdown with JsonLogic over path, content, tags, frontmatter and stat. Returns truthy values. Only scope limits the scan; query path/glob conditions only filter results. Overflow errors, never truncation. No link graph.

tag_listA

List tags and parent tags with per-file counts; names omit #. Scan/result limits fail explicitly. Inline recognition may differ from Obsidian Desktop.

vault_writeA

Create or replace UTF-8 text. Existing files require ifMatch; no force bypass. Creates parents. Binary/NUL refused; no automatic retry.

vault_appendA

Append UTF-8 text; creates missing files. Existing files require ifMatch; missing final LF is added first. Binary/NUL refused; no automatic retry.

vault_patchB

Patch a heading/block/property with exact-byte ifMatch from a read/map. Copy map keys unchanged. Heading content uses relative levels. No automatic retry.

vault_moveA

Move a file; no link/history updates. Creates parents; trailing / retains filename. Overwrite requires allowOverwrite. ifMatch checks source only. No retry or cross-filesystem fallback.

vault_deleteA

Delete a file to recoverable Vault .trash; permanent=true is irreversible. ifMatch checks source. No automatic retry or permanent fallback.

vault_read_binaryA

Read images and non-PDF attachments. auto: raster preview or signed HTTPS download link. bytes: original data up to 4 MiB. PDF is unsupported in every mode; use the client's native file upload/attachments.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 13 tools

Disambiguation4/5

The vault_* tools carve out distinct operations (read vs write vs append vs patch vs move vs delete), and search_query vs reference_query serve different purposes. Minor overlap between vault_read/vault_get_document_map and vault_read vs vault_read_binary could cause slight confusion, but descriptions clarify.

Naming Consistency3/5

The vault_* family is consistently verb-suffixed (vault_list, vault_read, vault_write), but other tools mix conventions (search_query, reference_query, tag_list, obsidian_help). Readable overall but not a single predictable pattern.

Tool Count5/5

13 tools is well-scoped for an Obsidian vault server, covering the essential file, query, tag, and reference operations without bloat.

Completeness4/5

Strong lifecycle coverage: read, write, append, patch, move, delete, list, search, references, tags, and document mapping. Notable gap is no binary write (only vault_read_binary) and no copy operation, but these are minor workarounds.

Maintenance

ActivityMaintained
ResponsivenessNo issues