메모리 캐시 서버
언어 모델 상호작용 간에 데이터를 효율적으로 캐싱하여 토큰 소비를 줄이는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 모든 MCP 클라이언트 및 토큰을 사용하는 모든 언어 모델과 호환됩니다.
설치
Smithery를 통해 설치
Smithery 를 통해 Claude Desktop용 메모리 캐시 서버를 자동으로 설치하려면:
지엑스피1
수동 설치
- 저장소를 복제합니다.
- 종속성 설치:
- 프로젝트를 빌드하세요:
- MCP 클라이언트 설정에 추가:
- MCP 클라이언트를 사용하면 서버가 자동으로 시작됩니다.
작동 확인
서버가 정상적으로 실행되면 다음이 표시됩니다.
- 터미널에 "Stdio에서 실행 중인 메모리 캐시 MCP 서버"라는 메시지가 표시됩니다.
- 동일한 데이터에 여러 번 액세스할 때 성능이 향상되었습니다.
- 귀하에게는 아무런 조치가 필요하지 않습니다. 캐싱은 자동으로 수행됩니다.
서버가 실행 중인지 확인하려면 다음을 수행하세요.
- MCP 클라이언트 열기
- 서버를 시작한 터미널에서 오류 메시지를 찾고 있습니다.
- 캐싱을 통해 이점을 얻을 수 있는 작업 수행(예: 동일한 파일을 여러 번 읽는 것)
구성
서버는 config.json
또는 환경 변수를 통해 구성할 수 있습니다.
구성 설정 설명
- maxEntries (기본값: 1000)
- 캐시에 저장할 수 있는 최대 항목 수
- 캐시가 무한정 커지는 것을 방지합니다.
- 초과 시 가장 오래된 미사용 항목부터 제거됩니다.
- maxMemory (기본값: 100MB)
- 최대 메모리 사용량(바이트)
- 과도한 메모리 소모를 방지합니다
- 초과 시 가장 최근에 사용되지 않은 항목이 제거됩니다.
- defaultTTL (기본값: 1시간)
- 기본적으로 항목이 캐시에 남아 있는 시간
- 이 시간 이후에는 항목이 자동으로 제거됩니다.
- 오래된 데이터가 메모리를 소모하는 것을 방지합니다.
- checkInterval (기본값: 1분)
- 서버가 만료된 항목을 확인하는 빈도
- 값이 낮을수록 메모리 사용량이 더 정확하게 유지됩니다.
- 값이 높을수록 CPU 사용량이 줄어듭니다.
- statsInterval (기본값: 30초)
- 캐시 통계가 얼마나 자주 업데이트됩니까?
- 적중률/미스율의 정확도에 영향을 미칩니다.
- 캐시 효과 모니터링에 도움이 됩니다.
토큰 소비를 줄이는 방법
메모리 캐시 서버는 사용자와 언어 모델 간에 재전송해야 하는 데이터를 자동으로 저장하여 토큰 소모를 줄입니다. MCP 클라이언트를 통해 언어 모델과 상호 작용할 때 캐싱이 자동으로 이루어지므로 특별한 작업은 필요하지 않습니다.
캐시되는 내용의 몇 가지 예는 다음과 같습니다.
1. 파일 콘텐츠 캐싱
파일을 여러 번 읽을 때:
- 첫 번째: 전체 파일 콘텐츠가 읽혀지고 캐시됩니다.
- 이후 시간: 파일을 다시 읽는 대신 캐시에서 콘텐츠가 검색됩니다.
- 결과: 반복되는 파일 작업에 사용되는 토큰이 줄어듭니다.
2. 계산 결과
계산이나 분석을 수행할 때:
- 첫 번째 시간: 전체 계산이 수행되고 결과가 캐시됩니다.
- 이후 시간: 입력이 동일한 경우 캐시에서 결과가 검색됩니다.
- 결과: 반복 계산에 사용되는 토큰이 줄어듭니다.
3. 자주 접근되는 데이터
동일한 데이터가 여러 번 필요한 경우:
- 첫 번째 시간: 데이터가 처리되고 캐시됩니다.
- 이후 시간: TTL이 만료될 때까지 캐시에서 데이터가 검색됩니다.
- 결과: 동일한 정보에 액세스하는 데 사용되는 토큰이 줄어듭니다.
자동 캐시 관리
서버는 다음을 통해 캐싱 프로세스를 자동으로 관리합니다.
- 처음 발생 시 데이터 저장
- 사용 가능한 경우 캐시된 데이터 제공
- 설정에 따라 오래되거나 사용하지 않는 데이터 제거
- 통계를 통한 효과 추적
최적화 팁
1. 적절한 TTL 설정
- 자주 변경되는 데이터에 대한 단축어
- 정적 콘텐츠의 경우 더 길어짐
2. 메모리 제한 조정
- 더 많은 캐싱(더 많은 토큰 절약)을 위해 더 높음
- 메모리 사용량이 문제라면 낮추세요
3. 캐시 통계 모니터링
- 높은 적중률 = 좋은 토큰 절약
- 적중률이 낮으면 TTL 또는 제한을 조정하세요.
환경 변수 구성
MCP 설정에서 환경 변수를 사용하여 config.json 설정을 재정의할 수 있습니다.
사용자 정의 구성 파일 위치를 지정할 수도 있습니다.
서버는 다음을 수행합니다.
- 해당 디렉토리에서 config.json을 찾으세요.
- 모든 환경 변수 재정의 적용
- 둘 다 지정되지 않으면 기본값을 사용합니다.
실제 캐시 테스트
캐시가 실제로 어떻게 작동하는지 보려면 다음 시나리오를 시도해 보세요.
- 파일 읽기 테스트
- 대용량 파일 읽기 및 분석
- 파일과 관련해 같은 질문을 다시 해보세요
- 파일 내용이 캐시되므로 두 번째 응답이 더 빨라야 합니다.
- 데이터 분석 테스트
- 일부 데이터에 대한 분석 수행
- 동일한 분석을 다시 요청하세요
- 두 번째 분석에서는 캐시된 결과를 사용해야 합니다.
- 프로젝트 탐색 테스트
- 프로젝트 구조 살펴보기
- 동일한 파일/디렉토리를 다시 쿼리합니다.
- 디렉토리 목록과 파일 내용은 캐시에서 제공됩니다.
캐시가 작동 중일 때 다음 사항이 나타납니다.
- 반복 작업에 대한 더 빠른 대응
- 변경되지 않은 콘텐츠에 대한 일관된 답변
- 변경되지 않은 파일을 다시 읽을 필요가 없습니다.
Related MCP Servers
- AsecurityFlicenseAqualityA Model Context Protocol server that reduces token consumption by efficiently caching data between language model interactions, automatically storing and retrieving information to minimize redundant token usage.Last updated -43JavaScript
- AsecurityFlicenseAqualityA Model Context Protocol (MCP) server that provides a simple sleep/wait tool, useful for adding delays between operations such as waiting between API calls or testing eventually consistent systems.Last updated -167JavaScript
- -securityAlicense-qualityA Model Context Protocol (MCP) compliant server that allows Large Language Models (LLMs) to search and retrieve content from microCMS APIs.Last updated -TypeScriptMIT License
- AsecurityFlicenseAqualityA Model Context Protocol (MCP) server that interacts with system APIs, allowing users to check connections, search employees, register breakfast, and update chemical information by shifts.Last updated -2126JavaScript