Mmcp.market

kObsidian MCP server

by bezata·io.github.bezata/kobsidian-mcp·v0.2.1·8 stars

Filesystem-first MCP for Obsidian — an LLM-maintained wiki inspired by Karpathy's LLM Wiki.

B75/100grade B
What users say
No reviews yet
Be the first
Safety scan
B75/100

full report

Adoption
Growing

8 stars119 downloads/wk

Reviews

Write one

Nobody has reviewed kObsidian yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

kObsidian tools (92, 28 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • canvas.addEdge

    Connect two nodes in a canvas.

  • canvas.addNode

    Add a text or file node to an Obsidian canvas.

  • canvas.connections

    Get incoming and outgoing edges for a canvas node.

  • canvas.createwrite action

    Create a new empty Obsidian canvas (.canvas) file.

  • canvas.parse

    Parse an Obsidian canvas file.

  • canvas.removeNodewrite action

    Remove a node and its edges from a canvas.

  • commands.executewrite action

    Execute an Obsidian command by ID.

  • commands.list

    List all available Obsidian commands.

  • commands.search

    Search Obsidian commands by ID or name.

  • dataview.fields.addwrite action

    Insert a Dataview field into a note.

  • dataview.fields.extract

    Extract scoped Dataview fields from a note.

  • dataview.fields.removewrite action

    Remove a Dataview field from a note.

  • dataview.fields.search

    Search notes by Dataview field key and optional value.

  • dataview.index.read

    Read page, list-item, task, DQL, and DataviewJS metadata from a note.

  • dataview.js.read

    Extract fenced dataviewjs blocks from a note without executing them.

  • dataview.js.updatewrite action

    Replace one fenced dataviewjs block source-preservingly.

  • dataview.listByFolderwrite action

    Run a DQL LIST query for a folder.

  • dataview.listByTagwrite action

    Run a DQL LIST query for a tag.

  • dataview.querywrite action

    Execute a Dataview Query Language (DQL) query through the Obsidian API.

  • dataview.query.read

    Extract fenced dataview DQL blocks from a note.

  • dataview.query.updatewrite action

    Replace one fenced dataview DQL block source-preservingly.

  • dataview.tablewrite action

    Run a DQL TABLE query.

  • kanban.addCard

    Add a card to a Kanban column.

  • kanban.moveCard

    Move a card between Kanban columns.

  • kanban.parse

    Parse a markdown Kanban board file.

  • kanban.stats

    Get card counts and completion rates for a Kanban board.

  • kanban.toggleCard

    Toggle a Kanban card complete/incomplete.

  • links.backlinks

    Find notes that link to a target note.

  • links.broken

    Find broken note links in the vault or a folder.

  • links.connections

    Explore direct and multi-hop note connections.

  • links.graph

    Build the vault link graph.

  • links.health

    Summarize link density and broken-link metrics.

  • links.hubs

    Find notes with many outgoing links.

  • links.orphaned

    Find notes with no incoming or outgoing links.

  • links.outgoing

    Extract links referenced by a note.

  • marp.deck.read

    Read Marp deck frontmatter, slides, directives, and source spans.

  • marp.frontmatter.updatewrite action

    Update selected Marp deck frontmatter fields while preserving unrelated source.

  • marp.slides.list

    List Marp slides with separator and directive metadata.

  • marp.slides.read

    Read one Marp slide source-preservingly.

  • marp.slides.updatewrite action

    Replace one Marp slide body without rewriting neighboring slides.

  • mermaid.blocks.list

    List fenced Mermaid blocks in a note or across the vault.

  • mermaid.blocks.read

    Read one Mermaid block with source spans, directives, and config metadata.

  • mermaid.blocks.updatewrite action

    Replace one fenced Mermaid block source-preservingly.

  • notes.append

    Append content to the end of a note.

  • notes.createwrite action

    Create a new note using filesystem-first behavior.

  • notes.createFolderwrite action

    Create a folder in the vault.

  • notes.deletewrite action

    Delete a note from the vault.

  • notes.info

    Get note metadata and lightweight statistics without loading the result into a client-specific schema.

  • notes.insertAfterBlockwrite action

    Insert content after a block reference.

  • notes.insertAfterHeadingwrite action

    Insert content immediately after a markdown heading.

  • notes.list

    List notes in the vault or a folder.

  • notes.listFolders

    List folders in the vault.

  • notes.move

    Move a note and optionally update links that reference it.

  • notes.moveFolder

    Move a folder and optionally update links inside the vault.

  • notes.read

    Read a note from the vault with parsed metadata.

  • notes.search

    Search notes by text with lightweight support for tag: and path: filters.

  • notes.searchByDate

    List notes by created or modified date.

  • notes.updatewrite action

    Update an existing note, replacing or appending content.

  • notes.updateFrontmatterwrite action

    Create or update a frontmatter field.

  • stats.note

    Get statistics for a single note.

  • stats.vault

    Get aggregate statistics for the whole vault.

  • system.version

    Return the running kObsidian server name, version, and host runtime.

  • tags.add

    Add tags to a note frontmatter block.

  • tags.analyze

    Extract frontmatter and inline tags from a note.

  • tags.list

    List unique tags used across the vault.

  • tags.removewrite action

    Remove tags from frontmatter.

  • tags.search

    Find notes that contain a tag in frontmatter or inline content.

  • tags.updatewrite action

    Replace or merge a note's frontmatter tags.

  • tasks.createwrite action

    Append a task line to a note.

  • tasks.search

    Search Tasks-plugin style markdown tasks across the vault.

  • tasks.stats

    Get aggregate task statistics for the vault.

  • tasks.toggle

    Toggle a task complete/incomplete by file and line number.

  • tasks.updateMetadatawrite action

    Update task dates, priority, or recurrence in place.

  • templates.createNotewrite action

    Create a note from a filesystem template.

  • templates.createNoteTemplaterwrite action

    Create a note from a Templater template via the Obsidian API.

  • templates.expand

    Expand filesystem template variables into content.

  • templates.insertTemplaterwrite action

    Insert a Templater template into the active note.

  • templates.list

    List markdown templates in a folder.

  • templates.renderTemplater

    Render a Templater template via the Obsidian API.

  • wiki.indexRebuild

    Regenerate the wiki index.md from the current state of Sources/, Concepts/, and Entities/. Groups entries by category; supports optional per-category counts.

  • wiki.ingest

    File a new source into the wiki: create Sources/<slug>.md with canonical frontmatter, append a log entry, and return proposedEdits for index + related concept/entity pages for the LLM to apply via notes.update.

  • wiki.init

    Scaffold the wiki layout: Sources/, Concepts/, Entities/ folders plus seed index.md, log.md, and wiki-schema.md. Idempotent; use force:true to re-seed index/log/schema files.

  • wiki.lint

    Health-check the wiki: orphans, broken links, stale sources, missing concept pages, singleton tags, and index.md parity. Read-only; returns grouped findings with totals.

  • wiki.logAppend

    Append a typed chronological entry to the wiki log using the convention '## [YYYY-MM-DD] <op> | <title>'. Initializes the wiki if needed.

  • wiki.query

    Rank wiki pages relevant to a topic using filename, alias, tag, summary and body hits. Returns the top pages so the LLM can drill in with notes.read.

  • wiki.summaryMerge

    Add a cited section into an existing concept or entity page (or create the page with canonical frontmatter if missing). Bumps 'updated' on existing pages.

  • workspace.activeFile

    Get the currently active file in Obsidian.

  • workspace.closeActiveFile

    Close the active file in Obsidian.

  • workspace.navigateBack

    Go back in Obsidian history.

  • workspace.navigateForward

    Go forward in Obsidian history.

  • workspace.openFile

    Open a file in Obsidian.

  • workspace.toggleEditMode

    Toggle edit/preview mode in Obsidian.

Public scan report

scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it

1 medium
  • Code scan5 source files scanned20/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 18 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10

Findings (1)

  • mediumeval / new Function usedexec.eval
    dist/server/http.js: …eCode, sch); const makeValidate = new Function(`${names_1.default.self}`, `${names_1.de…
Overall 75/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

Install kObsidian in Claude Code, Cursor or VS Code

Runs npx -y kobsidian-mcp on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add kobsidian-mcp -- npx -y kobsidian-mcp
Add to Cursor

What the publisher says

From the kObsidian repository's README, as published. We do not edit it. Read it on GitHub

kObsidian MCP

Filesystem-first MCP server for Obsidian vaults — with an LLM-Wiki layer on top.

Inspired by Andrej Karpathy's LLM Wiki idea. You curate the sources; the LLM does the bookkeeping.

Install · Quick start · Architecture · LLM Wiki · Tools · Docs

Docs: 简体中文 / 日本語 / 한국어

🧰 The only Obsidian MCP with workspaces. vault.list / vault.select

let an LLM discover and switch between your Obsidian vaults in-session —

no restart, no config edit, no per-tool path threading. Backwards

compatible with OBSIDIANVAULTPATH. Added in v0.3.0.

See docs/WORKSPACES.md.

New in v0.3.7

Configure each vault independently with .kobsidian.json: customize wiki folders, filenames, headings, and the stale-page threshold without sharing one configuration across every vault. notes.edit heading inserts also preserve paragraph spacing and join existing lists cleanly.

Configuration example and upgrade notes.

Why kObsidian

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

kObsidian: common questions

Is kObsidian MCP server safe?
Mostly: it is graded B (75/100). Read the kObsidian safety report
How do I install kObsidian?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does kObsidian need an API key?
Yes. The registry entry asks for OBSIDIAN_REST_API_KEY.
Is kObsidian maintained?
The last commit was 19 days ago (2026-09-09). The latest release is v0.2.1.
What can I use instead of kObsidian?
Servers from other publishers that do the same job: Seekstone MCP server, Stellavault MCP server and Obsidian MCP server. Compare all kObsidian alternatives.

Alternatives to kObsidian

Same job from other publishers: the closest match first, then the best rated.

All kObsidian alternatives →
  • Seekstone
    Filesystem-direct Obsidian MCP server — search and edit your vault with low context-tax.
    A
  • Stellavault
    Local-first MCP server: Claude searches, asks & drafts from your Obsidian vault. 21 tools, no keys.
    A
  • Obsidian
    Read, write, search, and surgically edit Obsidian notes, tags, and frontmatter via MCP.
    A
  • Agent-Native Content
    Open-source Obsidian for MDX - edit local docs with agent assistance
    A
  • Obsidian Hybrid Search
    Search Obsidian vaults with hybrid full-text, fuzzy, semantic, and graph retrieval.
    B

More from bezata →