Claude Desktop — stdio MCP
Claude Desktop 은 HTTP transport 를 지원하지 않고 stdio 만 지원하므로 npm 어댑터를 거쳐야 한다. @ainote/mcp 패키지 (v1.3.0) 가 stdio ↔ HTTP 브릿지 역할.
설정
Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
json
{
"mcpServers": {
"ainote": {
"command": "npx",
"args": ["-y", "@ainote/mcp"],
"env": {
"AINOTE_API_URL": "https://api.ainote.dev",
"AINOTE_API_KEY": "<YOUR_MCP_KEY>"
}
}
}
}MCP key 발급
방법 1: CLI device flow (권장 — Keychain 자동 저장)
bash
npx @ainote/mcp login브라우저로 app.ainote.dev 가 열리고, 디바이스 코드를 입력하면 token + MCP key 가 OS Keychain 에 저장된다.
이 경우 env.AINOTE_API_KEY 안 넣어도 됨 — npm 패키지가 자동으로 Keychain 에서 가져온다.
json
{
"mcpServers": {
"ainote": {
"command": "npx",
"args": ["-y", "@ainote/mcp"],
"env": {
"AINOTE_API_URL": "https://api.ainote.dev"
}
}
}
}방법 2: Claude 안에서 가입
빈 config 로 등록 → 재시작 후:
"ainote 가입시켜줘 — me@example.com / abcd1234"
응답에서 key 받아 위 env 에 추가.
방법 3: 웹
app.ainote.dev → Settings → MCP keys → Generate.
동작 확인
Claude Desktop 재시작 후 도구 목록 (Search & Tools 아이콘) 에 ainote namespace 가 뜨고 26 도구 노출.
ainote: list_tasks
ainote: create_task
ainote: handoff_save
ainote: vault_sync
...OS Keychain 저장 위치
| OS | Location |
|---|---|
| macOS | Keychain Access — service @ainote/cli |
| Linux | libsecret (gnome-keyring / kwallet) — service @ainote/cli |
| Windows | Credential Manager — target @ainote/cli |
| Fallback | ${XDG_CONFIG_HOME:-~/.config}/ainote/credentials.json (mode 0600) |
CLI 명령어
bash
npx @ainote/mcp login # 로그인 (브라우저)
npx @ainote/mcp whoami # 현재 사용자 확인
npx @ainote/mcp logout # revoke + Keychain clear
npx @ainote/mcp signup # 신규 가입 (대화형)E2E 암호화 (mcp category)
@ainote/mcp 는 ~/.claude/mcpServers 와 API key 를 ainote 클라우드에 동기화 시 age 로 클라이언트 암호화 후 업로드한다. 서버는 평문을 모름.
bash
brew install age # age 바이너리
npx @ainote/mcp sync init_encryption # 디바이스 keypair 생성 (Keychain 저장)
npx @ainote/mcp sync add_recipient <PUBLIC> # 다른 디바이스 등록
npx @ainote/mcp sync push_claude_mcp_servers # 암호화 푸시