- Home
- MCP servers
- Obsidian
Obsidian
- javascript
6
GitHub Stars
javascript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"kynlos-obsidian-mcp": {
"command": "node",
"args": [
"/absolute/path/to/Obsidian-MCP/index.js"
]
}
}
}Connect Obsidian MCP Server to Amp to automate note creation, linking, and management inside your Obsidian vault. This server lets Amp run locally to interact with Obsidian data, enabling AI-powered note creation, templates, metadata management, and advanced vault operations from your preferred MCP client.
How to use
You connect a client to the Obsidian MCP Server to perform AI-assisted note actions directly in your vault. Use the MCP client to issue tasks like creating structured notes, generating templates, managing frontmatter, querying vault data, and producing export bundles. You can build knowledge graphs, analyze connections between notes, and automate routine formatting or maintenance tasks. Start by configuring the server, then run commands from your MCP client to perform actions such as creating notes, adding content, or generating reports.
How to install
Prerequisites you need before installing: Node.js v18 or higher, Amp installed, Obsidian installed.
Step-by-step installation and setup flow you should follow exactly as written.
- Clone the repository and navigate into it.
git clone https://github.com/Kynlos/Obsidian-MCP.git
cd Obsidian-MCP
- Install dependencies.
npm install
- Run the setup wizard to configure everything automatically.
npm run setup
The setup wizard will prompt you for your Obsidian vault path, create an .env configuration file, and configure Amp for your platform.
-
Restart Amp to pick up the new MCP configuration.
-
Test the server to ensure it is working.
npm test
Configuration
Configure Amp to load the Obsidian MCP Server. The setup instructions provide a ready-made stdio configuration that runs the server locally.
If you tailor the configuration manually, add a stdio MCP server that points to your local Obsidian MCP entry point.
The following example shows how Amp can start the Obsidian MCP Server as a local process using Node.
{
"mcpServers": {
"obsidian": {
"command": "node",
"args": ["/absolute/path/to/Obsidian-MCP/index.js"]
}
}
}
Testing and troubleshooting
Verify you can connect via the MCP client and that the server can access the Obsidian vault. Common checks include ensuring the vault path is correct, Amp can load the configuration, and Node.js is available.
If issues arise, restart Amp after changes and re-run tests to confirm environments are aligned.
Platform and support notes
The Obsidian MCP Server is designed to work with Windows, macOS, and Linux environments where Amp and Obsidian are installed. Use the setup wizard to configure platform-specific details automatically.
Available tools
create_canvas
Create new Obsidian Canvas boards by generating and saving canvas JSON structures.
add_card_to_canvas
Add text or media cards to an existing Obsidian Canvas board.
add_connection_to_canvas
Connect cards with lines or arrows to visualize relationships.
create_canvas_group
Group multiple canvas items for organized layout.
read_canvas
Parse and read the structure of a canvas board.
update_canvas_card
Modify properties of a canvas card.
execute_dataview_query
Run Dataview-like queries against vault content and metadata.
create_dataview_codeblock
Insert a formatted Dataview query block into a note.
validate_dataview_query
Check syntax and validity of a Dataview query.
generate_graph_data
Build a knowledge graph from vault links with nodes and edges.
find_note_clusters
Identify groups of related notes based on connections.
calculate_note_centrality
Compute centrality scores to find influential notes.
get_shortest_path
Find the shortest link path between two notes.
find_isolated_notes
Identify notes with few or no connections.
generate_obsidian_uri
Create obsidian:// URIs for deep linking to notes or workspaces.
create_workspace_uri
Generate a URI to open a specific workspace.
create_append_uri
Create a URI to append text to a specific note.
create_search_uri
Generate a URI to perform a vault-wide search.
list_attachments
List all media files stored in the vault.
attach_file
Copy external files into the vault’s attachments folder.
delete_attachment
Remove attachment files from the vault.
find_orphaned_attachments
Identify media files not referenced by notes.
get_attachment_references
Find which notes reference a given attachment.
regex_search_and_replace
Perform regex-based search and replace across notes.
search_in_frontmatter
Search within YAML frontmatter for specific fields or values.
search_by_link_type
Find notes by link style (wiki vs markdown) patterns.
multi_file_replace
Batch find/replace across multiple notes.
update_frontmatter_field
Edit a YAML frontmatter field without rewriting the whole note.
batch_update_metadata
Update a metadata property across multiple notes.
validate_frontmatter_schema
Check frontmatter against a schema for consistency.
list_all_properties
List all unique frontmatter properties used in the vault.
rename_property_globally
Rename a frontmatter property across all notes.
get_property_values
List all values for a given frontmatter property.
create_from_template_with_prompts
Create notes from templates with variable substitution.
create_book_note
Generate a structured book/literature note.
create_person_note
Generate a structured person/contact note.
create_meeting_note
Create meeting notes with agenda and actions.
create_project_note
Create a project planning note structure.
get_tasks_by_criteria
Filter tasks by status, due date, priority, and tags.
move_task_between_notes
Relocate a task from one note to another.
add_task_metadata
Attach due dates, priorities, and tags to a task.
create_task_report
Generate a summary report of tasks.
find_blocked_tasks
Identify tasks waiting on dependencies.
convert_to_callout
Wrap selected text in an Obsidian callout block.
create_markdown_table
Programmatically generate a Markdown table.
add_table_of_contents
Generate a TOC based on document headings.
create_mermaid_diagram
Create Mermaid diagrams from data relationships.
create_math_block
Insert LaTeX math blocks into notes.
standardize_formatting
Normalize Markdown formatting across notes.
find_duplicate_notes
Detect similar or duplicate content across notes.
find_empty_notes
Identify notes with no content.
find_large_notes
Find notes exceeding a size threshold.
analyze_vault_health
Provide overall vault statistics and health insights.
cleanup_broken_references
Fix or remove broken links across notes.
compare_notes
Show diffs between two notes to track changes.
find_similar_notes
Analyze content similarity to suggest consolidations.
track_note_changes
Compare note versions over time to capture edits.
merge_notes_enhanced
Smart merge of notes with conflict resolution options.
split_note_by_headings
Split a large note into smaller notes based on headings.
save_code_snippet
Save code snippets with syntax highlighting and metadata.
save_thread_summary
Store AI conversation summaries with key insights.
save_knowledge_note
Create general knowledge notes with tags for quick retrieval.
create_daily_note
Create daily entries with optional templates.
read_note
Read the full content of a note.
update_note
Update note content while preserving metadata.
delete_note
Delete a note from the vault.
append_to_note
Append content to an existing note.
rename_note
Rename a note file.