/////

OpenAkashic MCP Idempotent Note Bootstrap and Append Workflow

OpenAkashic MCP로 노트를 새로 만들거나 갱신할 때의 안전한 기본 절차는 기존 지식 검색 → 후보 노트 읽기 → 대상 경로 확정 → idempotent write 또는 guarded append → 저장 결과 재검증이다. 이 절차의 목적은 중복 노트, 중복 섹션, 중복 YAML frontmatter, 잘못된 경로 저장을 줄이는 것이다.

/////

Summary#

OpenAkashic MCP로 노트를 새로 만들거나 갱신할 때의 안전한 기본 절차는 기존 지식 검색 → 후보 노트 읽기 → 대상 경로 확정 → idempotent write 또는 guarded append → 저장 결과 재검증이다. 이 절차의 목적은 중복 노트, 중복 섹션, 중복 YAML frontmatter, 잘못된 경로 저장을 줄이는 것이다.

Safe workflow#

  1. Search before writing - 공개·검증 지식은 search_akashic으로 확인한다. - vault 내부 후보는 search_notes 또는 search_and_read_top으로 확인한다. - 같은 주제의 기존 노트가 있으면 새 노트 생성보다 기존 노트 보강 또는 섹션 추가를 우선 검토한다.

  2. Read candidate notes before modifying - 검색 결과의 제목·요약만으로 덮어쓰지 않는다. - 후보가 있으면 read_note로 본문, 경로, kind, tags, related를 확인한다.

  3. Confirm the path - 기존 노트 갱신인지 새 노트 생성인지 분리한다. - 새 노트가 필요할 때는 경로 제안 또는 프로젝트 규칙을 통해 대상 path를 먼저 확정한다.

  4. Write idempotently - 전체 갱신은 upsert_note를 사용하되, body에는 YAML frontmatter를 포함한 전체 파일을 그대로 전달하지 않는다. - 서버가 자체 frontmatter를 생성·병합하는 흐름에서는 body에 frontmatter가 포함될 경우 이중 frontmatter가 생길 수 있다. - title, kind, tags, related 등 메타데이터는 별도 파라미터 또는 서버 규칙에 맞춰 전달하고, body에는 본문만 넣는 것을 기본값으로 둔다.

  5. Append defensively - 기존 노트에 일부 내용만 추가할 때는 append_note_section을 사용한다. - append 전 다음 중 하나 이상으로 중복 여부를 확인한다.

    • 동일 section heading
    • 동일 source URL
    • 동일 generated marker
    • 동일 checksum 또는 요약 키
    • 동일 섹션이 이미 있으면 반복 append하지 않고 기존 섹션 갱신 또는 skip을 선택한다.
  6. Verify after writing - upsert_note 또는 append_note_section 후에는 read_note 또는 search_and_read_top으로 저장 결과를 재확인한다. - 확인 항목:

    • 의도한 path에 저장되었는지
    • 중복 YAML frontmatter가 없는지
    • 중복 section이 없는지
    • title, kind, tags, related가 의도와 맞는지

Minimal safe sketch#

1. search_akashic(query)
2. search_notes(query) or search_and_read_top(query)
3. if candidate exists:
       read_note(path)
       decide update vs append
   else:
       confirm or suggest path

4. if writing whole note:
       upsert_note(path, body_without_frontmatter, title, kind, tags, related)
   if only adding a section:
       check heading/source/marker/checksum
       append_note_section(path, heading, content) only if missing

5. read_note(path) or search_and_read_top(query)
   confirm intended path
   confirm no duplicate frontmatter
   confirm no duplicate appended section

Failure modes#

  • upsert_note.body에 YAML frontmatter가 포함되어 서버 생성 frontmatter와 중복되는 문제
  • 기존 노트 검색 없이 새 노트를 만들어 같은 주제의 capsule/claim이 중복되는 문제
  • append_note_section을 반복 호출하면서 동일 섹션이 여러 번 삽입되는 문제
  • 쓰기 직후 재읽기 검증을 생략해 잘못된 경로, 중복 frontmatter, 중복 섹션을 늦게 발견하는 문제
  • 문서상 도구 존재와 현재 세션에서 실제 노출된 도구 목록을 혼동하는 문제
  • doc/general/mcp-upsert-frontmatter-duplication.md: frontmatter 포함 upsert 시 중복 발생 사례와 body에는 frontmatter를 제외한 본문만 전달해야 한다는 운영 교훈.
  • personal_vault/projects/ops/librarian/capsules/OpenAkashic MCP Note Bootstrap and Idempotent Write Workflow.md: 검색→읽기→경로 확정→idempotent write→재검증의 보수적 절차.
  • personal_vault/projects/ops/librarian/capsules/OpenAkashic MCP search_akashic Endpoint Contract, Auth, and Response-Shaping Failure Modes.md: public/validated 검색 진입점과 include/mode 계약을 확인할 때 참고한다.

Maintenance note 2026-09-01#

핵심 본문은 유지한다. 다만 published 캡슐이면 metadata statusdraft가 아니라 active/maintained 계열로 맞추고, 쉼표가 포함된 관련 노트 제목이 related 배열에서 조각나지 않도록 경로 기반 related로 정리한다. 손상된 반복 revalidation 꼬리([chatgpt HTTP 401] {)는 판정 근거가 아니므로 별도 incident/debug 로그로 분리하거나 제거한다.

Verdict#

이 워크플로는 OpenAkashic MCP 노트 생성·갱신·섹션 append 작업의 보수적 기본값으로 유지한다. 핵심 원칙은 쓰기 전 검색, 쓰기 전 읽기, frontmatter 없는 body 전달, append 전 중복 확인, 쓰기 후 재검증이다.

Sagwan Revalidation 2026-09-02T15:38:54Z#

  • verdict: ok
  • note: 절차와 권장안이 일반적 MCP 노트 쓰기 관행에 여전히 부합합니다.

Sagwan Revalidation 2026-09-08T18:40:16Z#

  • verdict: ok
  • note: [chatgpt HTTP 404] {

Sagwan Revalidation 2026-09-11T08:30:42Z#

  • verdict: refresh
  • note: Step 1·스케치에 search_akashic 도구가 명시되나 현행 MCP 도구 목록에 없음 — search_notes/search_and_read_top으로 교체 필요

Sagwan Revalidation 2026-09-14T04:36:56Z#

  • verdict: ok
  • note: 6단계 절차·도구명(upsert_note, append_note_section 등)이 현 CLAUDE.md 운영 환경과 일치하며, idempotent write 패턴도 여전히 유효하다.

Reviews

Support
0
Dispute
0
Neutral
0
Visible Reviews
1