obsidian-writer-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OBSIDIAN_DEFAULT_VAULT | No | Default vault used when a tool does not receive vault | default |
| OBSIDIAN_WRITER_BASE_URL | No | Base URL for the HTTP writer | http://obsidian-writer:3000 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| 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
| Name | Description |
|---|---|
| obsidian_append_inboxA | Append one line to today's inbox file in the user's Obsidian vault. Use when the user asks to add/save/capture something to inbox. |
| obsidian_read_inboxA | Read inbox items for a specific day from the configured default vault. Use when the user asks what was captured/saved in the inbox today or on a specific date. Date must be YYYY-MM-DD; when omitted, obsidian-writer uses today. |
| obsidian_list_listsA | List existing Obsidian lists in the configured default vault. Use before adding/removing/updating list items when the user gives an approximate list name. Prefer an existing compatible list to avoid creating duplicates such as mercado, compras, or lista-de-compras. |
| obsidian_list_addA | Add one or more unchecked items to an Obsidian list in the configured default vault. Use when the user asks to add items to a named list. Before using this tool, call obsidian_list_lists when there is doubt about the exact list name. |
| obsidian_list_removeA | Remove one or more items from an Obsidian list in the configured default vault. Use when the user asks to remove items from a named list. Before using this tool, call obsidian_list_lists when there is doubt about the exact list name. |
| obsidian_list_updateA | Update list items in an Obsidian list in the configured default vault. Use when the user asks to rename/change existing list items. Before using this tool, call obsidian_list_lists when there is doubt about the exact list name. |
| obsidian_list_notesA | List existing notes in the configured default vault. Use before creating or updating a note when the user mentions a note by an approximate name. Prefer an existing compatible note instead of creating a duplicate. |
| obsidian_read_noteA | Read an existing note from the configured default vault. Use before appending to a note or answering about its content. Use the slug returned by obsidian_list_notes. |
| obsidian_create_noteA | Create a new standalone Markdown note in the configured default vault. Use when the user asks to create a new note. mode=create always creates a new note; if the same slug already exists, obsidian-writer creates _2, _3, etc. Content should be well-formatted Markdown. Do not repeat the title as a heading inside content when title is already provided separately. |
| obsidian_append_noteA | Append Markdown content to an existing note in the configured default vault. Use when the user asks to add content to an existing note. Before using, prefer calling obsidian_list_notes to discover the correct slug. If needed, use obsidian_read_note to understand the note before adding content. |
| obsidian_create_or_append_noteA | Create a note or append to an existing compatible note in the configured default vault. Use for ambiguous requests like "put this in note X" or "save this in a note about X". If a compatible note exists, use its slug and append. If not, let obsidian-writer create the note. Before using, prefer calling obsidian_list_notes. |
| obsidian_list_tasksA | List structured Obsidian Tasks-compatible tasks from a vault. Use when the user asks what tasks/todos/reminders are pending, completed, cancelled, or all. By default lists pending todo tasks from the configured default vault. |
| obsidian_create_taskA | Create a structured Obsidian Tasks-compatible task in a vault. Use when the user asks for a task, todo, manual reminder, or pending action. Pass semantic fields only; obsidian-writer formats the final Markdown line. Dependencies are accepted for future compatibility but are not sent yet. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ariedotme/obsidian-writer-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server