Skip to main content
Glama

Get Daily Note

get_daily_note
Read-onlyIdempotent

Reads today's or a specific date's daily note from your Obsidian vault, returning its path, frontmatter, and body. Use it to check what is planned for a date; errors if the note is missing.

Instructions

Read the daily note for today or for a specific date, resolved via the vault's configured daily-note folder and filename format. Returns the note path, parsed frontmatter (as a labeled header block), and body. Errors if no daily note exists for that date — use create_daily_note to create one.

Input Schema

NameRequiredDescriptionDefault
dateNoTarget date in YYYY-MM-DD format (defaults to today's local date)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv4.1.1
    • removedInput schema / additionalProperties
      Removed value: -false
  2. Addedv2.0.0
  3. Removedv1.9.0
  4. Addedv0.1.6
  5. Removedv0.1.4
  6. Changed2 schema fields changedv0.1.2
    • changedInput schema / properties / date / description
      Previous value: -"Date in YYYY-MM-DD format (defaults to today)"New value: +"Target date in YYYY-MM-DD format (defaults to today's local date)"
    • addedInput schema / properties / date / pattern
      Added value: +"^\\d{4}-\\d{2}-\\d{2}$"
  7. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

Goes beyond the annotations (which already declare readOnly/idempotent/openWorld=false) by disclosing the resolution mechanism, the return shape (path, parsed frontmatter as a labeled header block, body), and the error condition when no note exists. That is substantive behavioral context an agent cannot infer from the flags.

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

Conciseness5/5

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

Three sentences, front-loaded with the action and scope, then resolution mechanics, then error handling. Every sentence carries information the agent needs; nothing is restated from the name or schema.

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

Completeness5/5

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

There is no output schema, but the description covers the return contents (path, frontmatter, body) and the failure mode, so an agent knows what to expect on both success and error. Nothing material is missing for a single optional-parameter read tool.

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

Parameters4/5

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

Schema coverage is 100% and already documents YYYY-MM-DD format and the local-today default, so the baseline is 3. The description adds value by explaining how the date is interpreted (resolved through the vault's configured folder/filename format) rather than being a raw path lookup.

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?

States a specific verb and resource (read the daily note) plus scope (today or a specific date), and immediately distinguishes it from the generic get_note by explaining that the path is resolved via the vault's daily-note folder and filename format. An agent can tell this apart from get_note and create_daily_note without opening any schema.

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?

Explicitly names the fallback: 'Errors if no daily note exists for that date — use create_daily_note to create one.' That is real when-to-use-something-else guidance. It doesn't explicitly contrast against get_note for the read case, but the resolution semantics imply the distinction.

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