SP

solaris5959/pentathlos

Browser automation

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

1 stars 0 forks Качество 51 Тренд 22

A Rust-based Model Context Protocol (MCP) server that integrates LLMs with local Obsidian vaults.

Обзор

- [x] Expose vault directories and files as MCP Resources - [x] Tool to read notes - [x] Tool to create new notes - [x] Tool to append text to existing notes - [x] Tool to search & replace text within a note (replaces granular list/task editing) - [x] Tool to delete notes - [ ] Tool to move/rename files (without auto-updating references) - [ ] Tool to search vault by filename - [ ] Tool to search vault by text content - [ ] Basic Markdown parsing / AST in Rust - [ ] YAML/frontmatter parsing in Rust - [ ] Prevent writes outside the configured vault root - [ ] Atomic file writes - [ ] Configurable excluded paths - [ ] Structured MCP tool outputs - [ ] Consistent MCP error handling - [ ] Basic unit tests for every added feature in P0 - [ ] Parse and resolve Obsidian internal links ([[]]) - [ ] Support link aliases ([[note|alias]]) - [ ] Support heading links ([[note#heading]]) - [ ] Support block references ([[note#^block]]) - [ ] Parse Obsidian embeds (![[...

README

Показан фрагмент оригинального README. Открыть оригинал.

Obsidian MCP Server TODO

P0 — Core / Essential

  • [x] Expose vault directories and files as MCP Resources
  • [x] Tool to read notes
  • [x] Tool to create new notes
  • [x] Tool to append text to existing notes
  • [x] Tool to search & replace text within a note (replaces granular list/task editing)
  • [x] Tool to delete notes
  • [ ] Tool to move/rename files (without auto-updating references)
  • [x] Tool to search vault by filename
  • [ ] Tool to search vault by text content
  • [ ] Basic Markdown parsing / AST in Rust
  • [ ] YAML/frontmatter parsing in Rust
  • [ ] Prevent writes outside the configured vault root
  • [ ] Atomic file writes
  • [ ] Configurable excluded paths
  • [ ] Structured MCP tool outputs
  • [ ] Consistent MCP error handling
  • [ ] Basic unit tests for every added feature in P0

P1 — Obsidian Semantics & Properties

  • [ ] Parse and resolve Obsidian internal links ([[]])
  • [ ] Support link aliases ([[note|alias]])
  • [ ] Support heading links ([[note#heading]])
  • [ ] Support block references ([[note#^block]])
  • [ ] Parse Obsidian embeds (![[...]])
  • [ ] Find backlinks to a note
  • [ ] Find outgoing links from a note
  • [ ] Find unresolved/broken internal links
  • [ ] Read note properties / frontmatter
  • [ ] Update note properties
  • [ ] Query notes by property
  • [ ] Validate frontmatter against a schema
  • [ ] List all tags and usage counts
  • [ ] Find notes by tag
  • [ ] Correctly distinguish tags in Markdown, YAML, and code blocks

P1 — Safe Mutations

  • [ ] Add dry-run mode for mutations
  • [ ] Return before/after diffs for edits
  • [ ] Add atomic multi-file operations
  • [ ] Maximum file-size limits
  • [ ] Require explicit confirmation for destructive operations

P2 — Search & Context (LLM Power Tools)

  • [ ] Regex search
  • [ ] Search within a directory/subtree
  • [ ] Search excluding configured directories
  • [ ] Tag & Property search
  • [ ] Link/backlink search
  • [ ] Search surrounding context around matches (return relevant sections)
  • [ ] get_note_context tool (Mega-tool returning note contents + frontmatter + backlinks + outgoing links + tags in one payload)
  • [ ] Tool to summarize a note’s connections
  • [ ] Vault health/diagnostics tool (Find broken links, orphans, empty notes, malformed YAML)

P2 — MCP Resources

  • [ ] obsidian://vault
  • [ ] obsidian://note/
  • [ ] obsidian://backlinks/
  • [ ] obsidian://tags/
  • [ ] obsidian://recent
  • [ ] obsidian://orphans
  • [ ] obsidian://broken-links
  • [ ] obsidian://daily/today

P3 — Architecture & Infrastructure

  • [ ] Build reusable Rust vault engine independent of MCP
  • [ ] Keep MCP layer thin over vault primitives
  • [ ] Create reusable resolve_link() primitive
  • [ ] Create reusable backlinks() primitive
  • [ ] Create reusable search() abstraction
  • [ ] Create reusable mutation/diff abstraction
  • [ ] Add comprehensive unit tests
  • [ ] Add integration tests against real Obsidian vaults
  • [ ] Add fixture vault containing common Obsidian syntax
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →