AI 에이전트와 사용자를 위한 검색 가능하고 구조화된 메모리 역할을 하는 종단간 암호화 마크다운 노트를 제공합니다.
다른 이름 vortex-303/vortex-notes, vortex-notes
- 스타
- 0
- Tools
- —
- 다운로드, 30일
- —
- 최신 버전
- 0.1.11
- 마지막 커밋
- 2026년 10월 30일
- 라이선스
- MIT
Vortex Notes MCP란?
Vortex Notes은(는) MCP server입니다. AI 에이전트와 사용자를 위한 검색 가능하고 구조화된 메모리 역할을 하는 종단간 암호화 마크다운 노트를 제공합니다.
프로젝트 README에서 생성된 요약
Vortex Notes MCP server 정보
Vortex Notes는 AI 에이전트를 위한 구조화된 메모리로 작동하는 암호화된 마크다운 노트를 저장할 수 있게 해줍니다. 개발자는 Claude Code, Cursor 또는 OpenClaw와 같은 도구에 서버가 전혀 읽을 수 없는 프라이빗하고 검색 가능한 지식 베이스를 제공할 수 있습니다. 사용자는 12단어 복구 문구를 사용하여 데이터를 관리하며, 모든 암호화 키는 중앙 데이터베이스에 저장되지 않고 로컬에서 생성됩니다.
이 MCP server를 사용하려면 CLI를 사용하여 로컬 머신의 에이전트와 페어링하거나, 비밀 커넥터 URL을 통해 웹 기반 채팅 애플리케이션에 연결할 수 있습니다. 이 시스템은 search_notes, read_note, write_note와 같은 특화된 도구와 사실의 생명 주기를 추적하는 고유한 remember 기능을 지원합니다. 또한 에이전트의 추론 능력을 높이기 위해 관련 노트와 wikilink를 가져오는 build_context 기능도 포함되어 있습니다. 검색은 로컬 임베딩을 사용하여 기기 내에서 수행되므로, 데이터의 프라이버시를 유지하면서도 다양한 기기와 언어에서 접근할 수 있습니다.
활용 사례
- 1일일 저널링 자동화개발자가 도구를 사용하여 타임스탬프가 포함된 항목을 일일 로그에 자동으로 추가할 수 있습니다.
- 2시맨틱 검색 수행사용자는 데이터를 외부 API로 전송하지 않고도 단일 쿼리를 사용하여 여러 언어에 걸쳐 특정 아이디어를 찾을 수 있습니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
Vortex Notes MCP 설치 방법
형식 확인: 2026년 11월 10일Claude Code에 Vortex Notes MCP 설치
$ claude mcp add vortex-notes -- npx -y vortex-notesCursor에 Vortex Notes MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"vortex-notes": {
"command": "npx",
"args": [
"-y",
"vortex-notes"
]
}
}
}VS Code에 Vortex Notes MCP 설치
.vscode/mcp.json
{
"servers": {
"vortex-notes": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"vortex-notes"
]
}
}
}Claude Desktop에 Vortex Notes MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"vortex-notes": {
"command": "npx",
"args": [
"-y",
"vortex-notes"
]
}
}
}Codex에 Vortex Notes MCP 설치
~/.codex/config.toml
[mcp_servers.vortex-notes] command = "npx" args = ["-y", "vortex-notes"]
Gemini CLI에 Vortex Notes MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"vortex-notes": {
"command": "npx",
"args": [
"-y",
"vortex-notes"
]
}
}
}구성
VORTEX_NOTES_READONLYSet to 1 for search-and-read-only access.
VORTEX_NOTES_VAULTVault folder to serve. Optional: after `npx vortex-notes@latest pair` the paired vault is found automatically.
| 이름 | 설명 | 유형 |
|---|---|---|
| VORTEX_NOTES_READONLY | Set to 1 for search-and-read-only access. | |
| VORTEX_NOTES_VAULT | Vault folder to serve. Optional: after `npx vortex-notes@latest pair` the paired vault is found automatically. |
자동 검사
2026년 11월 14일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식
- 소스 저장소 연결 및 접근 가능vortex-303/vortex-notes is public and reachablegithub.com/vortex-303/vortex-notes ↗통과
- 패키지가 이 저장소를 소스로 지정vortex-notes names vortex-303/vortex-notes as sourcenpmjs.com/package/vortex-notes ↗통과
- 빌드 출처(Sigstore 증명)No build attestation published for this release검사되지 않음
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit or release 2026-10-30github.com/vortex-303/vortex-notes ↗통과
- OpenSSF Scorecard검사되지 않음
- 패키지 이름이 인기 패키지와 유사하지 않음No popular package one edit away from vortex-notes통과
- 패키지와 의존성에 심각한 보안 권고 없음229 resolved dependencies checked; no critical advisoryosv.dev ↗통과
- 모델에 대한 숨겨진 지침 없음0 tool descriptions and the README read; no override phrases, credential paths or hidden characters통과
- 파괴적인 도구에 라벨 표시됨검사되지 않음
- 원격 endpoint가 MCP 핸드셰이크에 응답검사되지 않음
README
GitHub에서 보기Vortex Notes
End-to-end-encrypted notes that double as memory for your AI agents.
Your notes are plain .md files you own — greppable, git-able, Obsidian-compatible.
Vortex Notes adds the two things a notes app and an agent-memory store each do
separately, in one place:
- The server can't read anything. A 12-word phrase is your whole account; keys are derived in your browser. The relay stores ciphertext only — no plaintext field exists in its schema, and there's no password to reset because there's nothing on the server to reset.
- Agents are principals, not passengers. An agent gets its own key — born on its machine, never transmitted, certified by yours, scoped to the spaces you grant, and revocable in one command. Every edit it makes is signed as the agent.
That combination — agents can fully use it and the server can't read it — is the empty quadrant this fills.
The app
A real app, not a viewer: installable on iPhone / Android / Mac (works offline), sub-second cross-device sync over WebSocket, and an Obsidian-style live-preview markdown editor that's as good on a phone as on a desktop.
- Password-locked notes — lock a note with a password or your 12 words; the title stays visible, the body is a sealed second layer even your own devices can't read until unlocked.
- Version history & recovery — every synced version is kept; restore an earlier one, or recover a note whose password you lost from before it was locked.
- Public notes — publish any note to a themed public page in one tap.
- Change your 12 words — rotate your recovery phrase without losing a thing; every signed-in device and agent keeps working, the old phrase goes dead.
Agent memory (MCP)
A first-party MCP server gives Claude Code, OpenClaw, Cursor, or any MCP client task-shaped tools — not a CRUD mirror — and it works headless:
search_notes·read_note·write_note·edit_note(surgical)append_daily— timestamped journal entriesremember(fact, supersedes)— facts with a lifecycle: a superseded fact stays visible, struck through, pointing at what replaced it. Auditable, not a black box.build_context(topic)— the top notes in full plus one hop of[[wikilinks]], so an agent starts a task with the right context in one call.
Search is on-device. Hybrid BM25 + multilingual embeddings (SQLite FTS5 + sqlite-vec + a small local model). No API key, nothing leaves your machine, and an English query finds your Spanish notes across ~100 languages.
Quick start
Try the app
Open vortex-notes.pages.dev/app, create an account (save the 12 words), and start writing. Add it to your home screen to install it. That's the whole onboarding — no email, no password.
Connect an agent
On the agent's machine:
npx -y vortex-notes@latest pair
It prints a 6-letter code; approve it in the app (user menu → Agents & devices →
Pair an agent). The agent gets its own scoped, revocable key and never sees your
recovery phrase. pair then wires every harness it finds on that machine, pinned
to the paired vault:
- Claude Code: user scope, so every project sees it
- Hermes: type
/reload-mcpafterwards - OpenCode: added to
~/.config/opencode/opencode.json
No MCP in your agent? The same tools work as shell commands, see
Agents without MCP.
Works over SSH too (you approve from your phone). Any other stdio MCP client:
{ "command": "npx", "args": ["-y", "vortex-notes", "mcp"], "env": { "VORTEX_NOTES_VAULT": "<path pair printed>" } }.
Add --read-only to make it read-only.
Connect Claude.ai, ChatGPT, or another chat app
Chat apps in the browser or on your phone can only reach an MCP server by URL. In the app: user menu → Agents & devices → Connect a chat app creates a cloud agent and gives you a secret connector URL:
- Claude (web, desktop, mobile): Settings → Connectors → Add custom connector → paste the URL
- ChatGPT: Settings → Apps & Connectors → Advanced → Developer mode → Create → paste the URL (no authentication)
This is the one opt-in exception to zero-knowledge: the relay holds that agent's key (encrypted at rest) so it can serve the notes that agent may access. It's scoped, can be read-only, and revoking it kills the URL. Everything else stays end-to-end encrypted.
Use the CLI
npm install -g vortex-notes
vortex-notes init # create a vault
vortex-notes search "that idea about pricing" # hybrid semantic + keyword
vortex-notes serve # local web viewer at 127.0.0.1:7303
Agents without MCP: the same tools as commands
Every MCP tool is also a command, so any agent that can run a shell (OpenClaw-style
harnesses, scripts, cron, git hooks) gets the same behavior. After pair, commands
find the paired vault by themselves; each one syncs before reading and after writing.
npm install -g vortex-notes@latest # once, so `vortex-notes` is on PATH
vortex-notes context "kiln" # top notes in full + linked notes
vortex-notes read projects/kiln.md
vortex-notes daily "fired the test tiles"
vortex-notes remember "Kiln max is cone 8" --topic kiln --supersedes "cone 10"
vortex-notes write "Glaze tests" "Three recipes…" --folder studio --tags glaze
vortex-notes edit clay.md --append "Order more in May."
vortex-notes recent --days 3 --json # --json on any command
write/edit/daily/remember read stdin when the text is -. Errors exit 1
({"error": …} with --json). Full list: vortex-notes --help. There's a ready
OpenClaw skill built on these.
The index in .vortex/index.db is disposable — the markdown files are always the
source of truth. VORTEX_NOTES_NO_SEMANTIC=1 skips embeddings (keyword only, no
model download).
Self-host the relay
The hosted relay at vortex-notes.pages.dev is convenience, not lock-in. Run your own:
vortex-notes relay --port 7300 --db ~/relay.db # the ciphertext store, web app and chat connectors
vortex-notes setup --relay http://<host>:7300 # on each computer: your 12 words, then sync
npx -y vortex-notes@latest pair --relay http://<host>:7300 # an agent machine
Open http://<host>:7300/app to create an account in the browser.
- Your data is the
--dbfile (default~/.vortex-notes/relay.db). Back it up.--db :memory:is for throwaway tests. - Chat apps (Claude, ChatGPT):
- Set
RELAY_CONNECTOR_KEKto 64 hex characters (openssl rand -hex 32) before creating connectors, so their keys are encrypted at rest. - Serve the relay over HTTPS (Caddy, nginx, or a tunnel): the chat apps can't reach
localhost. - OAuth discovery follows the
Host/X-Forwarded-Hostheaders, so a reverse proxy just works.
- Set
- Other settings:
RELAY_QUOTA_MBcaps each account's storage.RELAY_ADMIN_ACCOUNT(your Account ID) turns on admin stats in the web app.
- Native apps: the Mac and iPhone apps use the hosted relay for now. The CLI, agents and the web app work with any relay.
How the encryption works
A 12-word BIP39 phrase derives your account's signing + encryption keys. Each
device and agent has its own random keypair, certified by your account key — an
account → device → agent chain. A space's content key is sealed to each
principal that may read it; the relay enforces scope and read-only on every signed
request but only ever holds sealed blobs.
What a malicious or subpoenaed relay can do: serve stale or withheld ciphertext (detectable via sequence gaps). What it can't do: read a note, a title, or a key; forge an edit; or silently alter one. The WebSocket sync channel carries only content-free "a space changed" pokes — the doorbell, never the data.
For a broad usage view, the relay derives a coarse country (two-letter code) from your IP in memory and stores only that code — the IP itself is never written to disk or logged.
Stack
TypeScript, all-MIT: @noble /
@scure crypto, CodeMirror 6,
better-sqlite3, sqlite-vec, transformers.js,
marked. The relay is a small Node service; the web app is a single esbuild bundle
with all crypto client-side. 48 unit tests plus ten Playwright browser suites.
MIT © Vortex303
Vortex Notes MCP 질문
Vortex Notes MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add vortex-notes -- npx -y vortex-notes를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
Vortex Notes MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
서버가 제 노트를 읽을 수 있나요?
아니요, 서버는 암호문만 저장하며 평문, 제목 또는 키를 읽을 수 없습니다.
검색 기능에 API 키가 필요한가요?
아니요, 검색은 로컬 임베딩과 하이브리드 검색을 사용하여 기기 내에서 수행됩니다.
Claude.ai 또는 ChatGPT에서 Vortex Notes를 사용할 수 있나요?
네, 앱에서 클라우드 에이전트를 생성하여 웹 기반 채팅 애플리케이션용 비밀 커넥터 URL을 받을 수 있습니다.