Skip to main content
Glama
sunub
by sunub

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
VAULT_DIR_PATHYesThe absolute path to your Obsidian vault directory

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
vault

Retrieves and searches the content of Markdown (.md, .mdx) documents stored in an Obsidian vault. Use this tool to find notes related to a specific topic or keyword and understand their core content.

When to use:

  • When you need to find a specific note by its title or a keyword to check its content.

  • When you want to synthesize and summarize information scattered across multiple notes.

  • When looking for answers to questions based on your saved records, such as "What was the project deadline?"

  • To discover connections by finding all notes that link to a specific note.

  • When you need to retrieve a list of unfinished tasks (- [ ]) from daily notes or meeting minutes.

Returns the content of the most relevant document(s) in text format. It can also include metadata such as the document's title, tags, and creation date.

Requirements: The user's Obsidian Vault path must be correctly configured in an environment variable or a similar setting. For searches, use the exact filename or include core keywords for content-based queries.

generate_property

Analyzes the content of a specified Obsidian Markdown file to automatically generate the most suitable properties (frontmatter) and updates the file directly.

Use Cases:

  • After Completing a Draft: Use when the body of the text is complete, and you want to generate all properties at once.

  • Updating Information: Use when you want to update existing properties with more accurate information reflecting the latest content.

  • Completing Missing Info: Use when you want to automatically add missing properties like tags or a summary to a document that only has a title.

Parameters:

filename: The name or path of the file to analyze and add properties to (e.g., "my-first-post.md"). overwrite: If set to true, existing properties will be overwritten by the AI-generated content. Default: false.

Generated Properties:

The AI analyzes the context of the content to generate the following properties:

  • aliases: An array of alternative names or synonyms based on the content.

  • title: A title that best represents the core topic of the document.

  • tags: An array of tags extracted from the core keywords of the content (e.g., [AI, Obsidian, productivity]).

  • summary: A one to two-sentence summary of the entire document.

  • slug: A hyphenated-string suitable for URLs, containing the core keywords from the content.

  • date: The event date or creation date inferred from the content (in ISO 8601 format).

  • completed: A boolean (true or false) indicating whether the content is considered a final version.

Return Value:

Upon success, returns a JSON object containing a success message that includes the modified filename. { "status": "success", "message": "Successfully updated properties for my-first-post.md" }

Requirements:

The user's absolute path to the Obsidian vault must be correctly set in an environment variable.

write_property

Description: Adds or updates properties within the frontmatter section at the top of a specified Obsidian markdown file. This tool is primarily used to apply metadata generated by the generate_obsidian_properties tool to an actual file.

Parameters:

  • filePath (string, required): The path to the target markdown file to which properties will be added or updated. Example: "my-first-post.md"

  • properties (object, required): A JSON object containing the key-value pairs to be written to the file's frontmatter. If a property with the same key already exists in the file, it will be overwritten with the new value.

Example:

JSON { "title": "Optimizing I/O Handling in a Serverless Environment", "date": "2025-04-03", "tags": ["serverless", "optimization"], "summary": "A case study on optimizing I/O in a serverless environment by benchmarking Promise.all and Workers.", "completed": true }

Return Value:

Upon successful execution, it returns a JSON object containing the status, a confirmation message, and the property object that was applied to the file.

Example:

JSON { "status": "success", "message": "Successfully updated properties for my-first-post.md", "properties": { "title": "Optimizing I/O Handling in a Serverless Environment", "date": "2025-04-03", "tags": ["serverless", "optimization"], "summary": "A case study on optimizing I/O in a serverless environment by benchmarking Promise.all and Workers.", "completed": true } }

Dependencies & Requirements:

  • Input Data: The properties parameter should typically be the JSON object output from the generate_obsidian_properties tool.

  • Environment Setup: The absolute path to the user's Obsidian Vault must be correctly set as an environment variable.

create_document_with_properties

Initiates an integrated workflow to read a document, guide an AI to generate properties, and then write those properties to a file.

This tool acts as a workflow manager for an AI agent. It reads the content of a specified document and returns a structured, multi-step plan. The AI agent must follow this plan by first calling the 'generate_obsidian_property' tool to get the document's content for analysis, and then, after generating the properties, calling the 'write_obsidian_property' tool to save them.

Use this tool to start the end-to-end process of enriching a document with AI-generated metadata.

organize_attachments

Scans a specified markdown file for linked images (or other attachments), moves them to a dedicated folder named after the document's title, and updates the links within the markdown file automatically.

Use Cases:

  • When a post is finalized and you want to clean up all associated images into a neat folder.

  • To automatically organize attachments for better vault management.

Example Workflow:

  1. Specify 'my-awesome-post.md' as the fileName.

  2. The tool finds the 'title' property in the frontmatter (e.g., "My Awesome Post").

  3. It finds all image links like ![[my-image.png]].

  4. It creates a folder at '{vault}/images/My Awesome Post/'.

  5. It moves 'my-image.png' into that new folder.

  6. It updates the link in the markdown file to ![[images/My Awesome Post/my-image.png]].

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sunub/obsidian-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server