
jmilinovich/grove
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Git-backed Obsidian vault에 오픈 소스 MCP 서버. 단일 사용자, 셀프 호스트. 6개의 공구, 잡종 수색, 입증/광택, 자동 연결 발견.
개요
6개의 공구, 1개의 git 백업 vault, 단 하나 사용자. Claude, ChatGPT, Cursor, 또는 MCP 호환 클라이언트는 연결하고 구조화된 접근을 가져옵니다 - 검색, 읽기, 쓰기 백, 그래프 진단. 당신의 vault는 git repo의 markdown 파일, 영원히 버전. Grove는 호스팅 제품 2026-04 → 2026-05이었다. 당신이 찾고있는 repo는 다음과 같은 오픈 소스 성당입니다 : Obsidian vault, 단일 사용자, 셀프 호스트에 개인 MCP 층. 멀티텐트 SaaS 레이어, 자율 시약 레이어, 암호화, 트레일, waitlist 및 관리자 포털은 모두 스트립되었습니다. 전체 역사에 대한 RETROSPECTIVE.md를 참조하십시오. 모든 글은 git 커밋입니다. 모든 커밋이 입증 된 트레일러를 수행 할 수 있습니다. 비난을 통해 읽지 않은 경로 표면 그래서 미래의 독자는 AI의 순간적 합성 vs 사용자의 서적 사고를 알고 있습니다.
개요(AI 번역)
**Open-source MCP 서버는 Obsidian vault 검색 및 모든 AI 클라이언트에서 쓸 수 있습니다. **
6개의 공구, 1개의 git 백업 vault, 단 하나 사용자. Claude, ChatGPT, Cursor, 또는 MCP 호환 클라이언트는 연결하고 구조화된 접근을 가져옵니다 - 검색, 읽기, 쓰기 백, 그래프 진단. 당신의 vault는 git repo의 markdown 파일, 영원히 버전.
**이 재포에 대해. ** Grove는 호스팅 제품 2026-04 → 2026-05이었다. 관련 기사 찾고있는 것은 다음과 같은 오픈 소스 성당입니다 : a Obsidian vault에 개인 MCP 층, 단일 사용자, 셀프 호스트. 더 보기 멀티텐트 SaaS 레이어, 자율 시약 레이어, 암호화, 트레일, waitlist 및 관리자 포털은 모두 벗겨졌습니다.
RETROSPECTIVE.md보기 전체 역사.
여섯 도구
| 도구 | 그것은 무엇 |
|—|||
| query | 하이브리드 BM25 + 벡터 + 타이틀 검색 RRF 융합. URL을 가진 스니펫을 반환합니다. |
| get | 경로 또는 타이틀에 대한 메모를 읽으십시오. 표면의 per-segment 입증 (durable vs perishable voice). |
| multi_get | glob 또는 comma-separated 경로를 통해 읽을 수 있습니다. ·
| write_note | 제작/갱신/소프트-데레/소프트-데레 단 하나 op 또는 배치 (선택 원자). |
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
README
원문 README의 일부입니다. 원문 보기.
Grove
Open-source MCP server that makes your Obsidian vault searchable and writable from any AI client.
Six tools, one git-backed vault, single-user. Claude, ChatGPT, Cursor, or any MCP-compatible client connects and gets structured access — search, read, write-back, graph diagnostics. Your vault stays yours: markdown files in a git repo, versioned forever.
┌─────────────────────────────────────────────────────────┐
│ MCP client (Claude / Cursor / …) │
└──────────────────────┬──────────────────────────────────┘
│ MCP — Streamable HTTP + Bearer
▼
┌─────────────────────────────────────────────────────────┐
│ grove-server │
│ 6 tools · write queue · provenance · discovery │
└──────────────────────┬──────────────────────────────────┘
│
┌──────────┼──────────┐
▼ ▼ ▼
Hybrid Vault Discovery
Search (git) worker
BM25+Vec (extract → link)
About this repo. Grove was a hosted product 2026-04 → 2026-05. The repo you’re looking at is the open-source cathedral that came out of it: a personal MCP layer over an Obsidian vault, single-user, self-host. The multi-tenant SaaS layer, autonomous-agent layer, encryption, trails, waitlist, and admin portal have all been stripped. See
RETROSPECTIVE.mdfor the full history.
The six tools
| Tool | What it does |
|---|---|
query |
Hybrid BM25 + vector + title search with RRF fusion. Returns ranked snippets with URLs. |
get |
Read a note by path or title. Surfaces per-segment provenance (durable vs perishable voice). |
multi_get |
Batch read via glob or comma-separated paths. |
write_note |
Create / update / soft-delete / hard-delete / move a note. Single op or batch (atomic optional). |
list_notes |
List notes matching a pattern. Optional alias resolution. |
vault_status |
Health, history, diagnostics, graph, lifecycle digest, discovery state, perf counters. |
Every write is a git commit. Every commit can carry provenance trailers that the read path surfaces via blame so future readers know what’s the user’s standing thinking vs an AI’s moment-in-time synthesis.
Quick start
You need:
- Node ≥ 22
- A git-backed Obsidian-style markdown vault on disk
- A QMD index for the vault (Grove reads BM25 + vector hits from it)
- A Voyage AI API key for per-write embeddings (
voyage-4-large)
git clone https://github.com/jmilinovich/grove.git
cd grove
npm install
Set the env vars:
export GROVE_VAULT=/path/to/your/vault # absolute path to the git repo
export GROVE_API_KEY=$(openssl rand -hex 32) # your bearer token — keep secret
export VOYAGE_API_KEY=... # Voyage AI key for embeddings
설치
npx tsx src/server.ts