Files
obsidian-vault/personal/tech/obsidian-mcp-ecosystem.md
T

105 lines
6.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Obsidian MCP implementation ecosystem (2026)
Обзор активных реализаций Obsidian MCP серверов по состоянию на июнь 2026. Три архитектурных подхода, ~8 проектов с traction.
## Три архитектуры
| Подход | Примеры | Obsidian нужен? | Плюсы | Минусы |
|--------|---------|----------------|-------|--------|
| **Direct filesystem** | mcpvault, obsidian-mcp (Steven) | Нет | Простота, работает без Obsidian | Нет доступа к внутреннему API Obsidian |
| **Local REST API plugin** | mcp-obsidian (Markus), cyanheads | Да (должен быть открыт) | Obsidian опосредует операции | Нужен плагин + API key |
| **Native Obsidian plugin** | obsidian-mcp-plugin (aaronsb) | Да (должен быть открыт) | Полный API: граф, Dataview, Bases | Менее зрелый, только через BRAT |
## Детальный обзор
### 1. @bitbonsai/mcpvault (наш текущий) — filesystem
- **npm:** `@bitbonsai/mcpvault` (бывший `obsidian-mcp`, переименован март 2026 из-за trademark)
- **Версия:** 0.12.1 (июнь 2026)
- **Язык:** TypeScript
- **Транспорт:** stdio только
- **Инструменты:** 14: read_note, write_note, patch_note, list_directory, delete_note, search_notes, move_note, move_file, read_multiple_notes, update_frontmatter, get_notes_info, get_frontmatter, manage_tags, get_vault_stats, list_all_tags
- **Проблема:** exact string match в patch_note (`fullContent.split(oldString).length - 1`), без fuzzy, без trim, без нормализации whitespace
### 2. cyanheads/obsidian-mcp-server — REST API, самый популярный по загрузкам
- **npm:** `obsidian-mcp-server`
- **Версия:** 3.2.8 (май 2026)
- **★:** 603 | **dl/week:** ~9,776 (самые высокие)
- **Язык:** TypeScript, Bun/Node.js v24+
- **Транспорт:** stdio + Streamable HTTP (dual)
- **Инструменты:** 14
- **Требует:** Obsidian Local REST API plugin v4.0.0+
- **Ключевые фичи:**
- `obsidian_replace_in_note` — regex, whole-word, flexible whitespace, case-sensitivity, capture groups. **Решает проблему exact match**.
- `obsidian_patch_note` — surgical append/prepend/replace по heading/block/frontmatter
- Path policy (folder-scoped permissions через env vars: OBSIDIAN_READ_PATHS, OBSIDIAN_WRITE_PATHS)
- In-memory vault cache (configurable, default 10 min)
- JWT/OAuth аутентификация
- Structured logging с file rotation
- Zod schema validation
- Docker support (`ghcr.io/cyanheads/obsidian-mcp-server`)
- **Вердикт:** самый production-ready
### 3. MarkusPfundstein/mcp-obsidian — REST API, Python
- **npm:** `mcp-obsidian` (Python, через uvx)
- **★:** ~3,700 (самые звёзды)
- **Язык:** Python 100%
- **Транспорт:** stdio
- **Статус:** был 17 месяцев мёртв, вернулся 15 мая 2026. Но npm всё ещё v1.0.0.
- **Инструменты:** 7 (list_files, get_file_contents, search, patch_content, append_content, delete_file)
- **Известные баги:** patch_content timeout/validation (#9), UTF-8 failures (#25), Dataview dependency (#70), нет multi-vault (#63)
- **Вердикт:** watch — viable если выйдет новый npm release
### 4. aaronsb/obsidian-mcp-plugin (Semantic Notes Vault MCP) — native plugin
- **★:** 423
- **Версия:** 0.11.33 (13 релизов с 20 апреля, очень активен)
- **Язык:** TypeScript (плагин Obsidian)
- **Транспорт:** HTTP (порт 3001/3443)
- **Инструменты:** 8 категорий (vault, edit, view, graph, workflow, dataview, bases, system)
- **Ключевые фичи:**
- **Fuzzy text matching** для edits — прямо в описании
- Graph traversal (multi-hop, backlinks, forward-links, path finding)
- Dataview DQL execution
- Bases database operations
- Read-only mode
- mcpb one-click install для Claude Desktop
- **Минус:** Obsidian должен быть открыт. Установка через BRAT (не в community store).
- **Вердикт:** если нужен graph/Dataview/Bases — лучший выбор
### 5. Local REST API v4.0.0+ built-in MCP
- **Плагин:** `coddingtonbear/obsidian-local-rest-api` (★ 2.5k)
- **Версия:** v4.1.3 (июнь 2026)
- С апреля 2026: Local REST API сам стал MCP сервером на `/mcp/`
- **15 tools** (file CRUD, search, tagging, commands, open-in-ui)
- **Транспорт:** Streamable HTTP
- **Требует:** только установку плагина + API key (никаких дополнительных пакетов)
### 6. Minhao-Zhang/obsidian-mcp-server — WIP plugin
- **★:** 13
- **Версия:** v1.1.0 (апрель 2025 — заброшен)
- **Статус:** WIP. Автор: «я не знаю TypeScript». Не рекомендуется.
## Остальные
Всего ~79 Obsidian-связанных MCP серверов на PulseMCP, но ~8 имеют traction. Большинство — клоны/форки mcpvault или mcp-obsidian.
## Рекомендация от 2026-06-24
**Лучший апгрейд без смены архитектуры — cyanheads/obsidian-mcp-server.**
Почему:
1. Решает exact match проблему — `obsidian_replace_in_note` с regex и flexible whitespace
2. Самая высокая загрузка (9.7K dl/week) — стабильность доказана
3. Dual transport (можно через stdio как Hermes native MCP, можно HTTP)
4. Path policy — можно ограничить запись только определёнными папками
5. Docker support
Минус: требует Obsidian открытым (Local REST API плагин).
**Если не хочется ставить плагин:** остаться на mcpvault + Hermes `patch()` для сложных строк.