MCP · 2026년 9월 14일 ★★★

MCP 명세는 도구를 모델이 부를지 말지 정하는 것으로 규정해서, 메모리 서버가 호출을 강제할 방법이 없어요

MCP 명세의 Tools 절은 도구가 model-controlled, 곧 언어 모델이 맥락을 보고 알아서 찾아 부르는 것이라고 적어 뒀고, 서버가 할 수 있는 일은 tools/list 로 목록을 내주고 목록이 바뀌면 알림을 보내는 데까지예요. 호출을 강제하는 장치는 명세에 없고, 오히려 사람이 호출을 거부할 수 있어야 한다(SHOULD)는 요구만 들어 있어요. 그래서 메모리를 MCP 서버로 붙이는 Supermemory(MIT, 별 29.7k, mcp.supermemory.ai/mcp)나 Mem0(아파치 2.0, 별 65.2k) 같은 도구는 저장과 검색이 제대로 되더라도 모델이 그 도구를 건너뛰면 손쓸 수가 없어요.

용어 풀이
MCP
Model Context Protocol. 에이전트가 외부 도구·데이터에 붙는 표준 규약
CLAUDE.md
클로드 코드가 세션 시작마다 읽어 들이는 프로젝트·개인 지침 파일
훅(hook)
세션 시작·도구 호출 앞뒤 같은 정해진 시점에 자동으로 실행되는 명령
운영자 인사이트

항상 읽혀야 하는 것은 모델이 부를지 정하는 메모리 도구 대신 무조건 로드되는 자리에 두세요. 클로드 코드 문서는 CLAUDE.md 와 자동 메모리가 매 대화 시작에 로드된다고 적었고, 훅 문서는 SessionStart·UserPromptSubmit 훅의 표준 출력이 모델의 선택 없이 컨텍스트로 들어간다고 적었어요. 다만 같은 문서가 CLAUDE.md 는 강제 설정이 아니라 컨텍스트라고도 못 박아서, 보장되는 것은 읽히는 것까지이고 지키는 것까지는 아니에요.

여러 관점으로 보기
  • 명세 원문 도구는 model-controlled 로 설계됐고, 서버가 호출 시점을 강제하는 수단은 명세에 없어요. Model Context Protocol
  • 대안 1: 항상 로드되는 파일 클로드 코드 문서는 CLAUDE.md 와 자동 메모리가 매 대화 시작에 로드되지만 강제 설정이 아니라 컨텍스트라고 적었어요. Claude Code Docs
  • 대안 2: 훅으로 밀어 넣기 SessionStart·UserPromptSubmit 훅의 표준 출력은 모델이 고르지 않아도 컨텍스트로 들어가고, PreToolUse 는 도구 호출 자체를 막을 수 있어요. Claude Code Docs
  • 도구 실체 1 Supermemory 는 MIT 라이선스에 별 29.7k 이고 mcp.supermemory.ai/mcp 로 MCP 서버를 열어 두면서 자체 설치도 지원해요. GitHub
  • 도구 실체 2 Mem0 는 아파치 2.0 에 별 65.2k, 열린 이슈 308건이고 라이브러리·자체 설치·클라우드 세 갈래로 나뉘어요. GitHub

원본 보기 (reddit:claudeai)