Skip to main content
Glama
shaynemeyer

obsidian-mcp

by shaynemeyer

obsidian_get_active_note

Read-onlyIdempotent

Read the note currently active in Obsidian to get its content without specifying a file path. Returns markdown or JSON.

Instructions

Read whichever note is currently open in the Obsidian window.

Requires Obsidian to be running with the Local REST API plugin — there is no filesystem equivalent of "the active note".

Args: params (EmptyInput): - response_format (str): 'markdown' or 'json'

Returns: str: Same shape as obsidian_read_note. On failure: "Error: Cannot read the active note: "

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful context by disclosing the runtime dependency on Obsidian and the plugin, plus the exact failure message shape, which goes beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the core purpose, and structured into Args and Returns sections. However, the Args section is inaccurate because it omits the vault parameter, which is a small structural flaw.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low schema coverage, the description does well by stating prerequisites, return shape, and failure behavior. The only significant gap is the undocumented vault parameter, but the schema does provide a description for vault, so the overall context is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate for parameter meaning. It mentions response_format with allowed values, but that duplicates the schema's enum, and it completely omits the vault parameter entirely. The description's Args section is incomplete and misleading about what parameters exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and resource: read whichever note is currently open in the Obsidian window. This clearly differentiates it from obsidian_read_note (read by path) and obsidian_open_note (open a specific note). It also directly references the active-note concept rather than relying on the title.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the key operational prerequisite: Obsidian must be running with the Local REST API plugin, and there is no filesystem equivalent of the active note. This implies when this tool is appropriate, though it does not explicitly list alternatives or say when NOT to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.