Memory Cache Server

local-only server

The server can only run on the client’s local machine because it depends on local resources.

메모리 캐시 서버

언어 모델 상호작용 간에 데이터를 효율적으로 캐싱하여 토큰 소비를 줄이는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 모든 MCP 클라이언트 및 토큰을 사용하는 모든 언어 모델과 호환됩니다.

설치

Smithery를 통해 설치

Smithery 를 통해 Claude Desktop용 메모리 캐시 서버를 자동으로 설치하려면:

지엑스피1

수동 설치

  1. 저장소를 복제합니다.
git clone https://github.com/tosin2013/mcp-memory-cache-server.git cd mcp-memory-cache-server
  1. 종속성 설치:
npm install
  1. 프로젝트를 빌드하세요:
npm run build
  1. MCP 클라이언트 설정에 추가:
{ "mcpServers": { "memory-cache": { "command": "node", "args": ["/path/to/ib-mcp-cache-server/build/index.js"] } } }
  1. MCP 클라이언트를 사용하면 서버가 자동으로 시작됩니다.

작동 확인

서버가 정상적으로 실행되면 다음이 표시됩니다.

  1. 터미널에 "Stdio에서 실행 중인 메모리 캐시 MCP 서버"라는 메시지가 표시됩니다.
  2. 동일한 데이터에 여러 번 액세스할 때 성능이 향상되었습니다.
  3. 귀하에게는 아무런 조치가 필요하지 않습니다. 캐싱은 자동으로 수행됩니다.

서버가 실행 중인지 확인하려면 다음을 수행하세요.

  1. MCP 클라이언트 열기
  2. 서버를 시작한 터미널에서 오류 메시지를 찾고 있습니다.
  3. 캐싱을 통해 이점을 얻을 수 있는 작업 수행(예: 동일한 파일을 여러 번 읽는 것)

구성

서버는 config.json 또는 환경 변수를 통해 구성할 수 있습니다.

{ "maxEntries": 1000, // Maximum number of items in cache "maxMemory": 104857600, // Maximum memory usage in bytes (100MB) "defaultTTL": 3600, // Default time-to-live in seconds (1 hour) "checkInterval": 60000, // Cleanup interval in milliseconds (1 minute) "statsInterval": 30000 // Stats update interval in milliseconds (30 seconds) }

구성 설정 설명

  1. maxEntries (기본값: 1000)
    • 캐시에 저장할 수 있는 최대 항목 수
    • 캐시가 무한정 커지는 것을 방지합니다.
    • 초과 시 가장 오래된 미사용 항목부터 제거됩니다.
  2. maxMemory (기본값: 100MB)
    • 최대 메모리 사용량(바이트)
    • 과도한 메모리 소모를 방지합니다
    • 초과 시 가장 최근에 사용되지 않은 항목이 제거됩니다.
  3. defaultTTL (기본값: 1시간)
    • 기본적으로 항목이 캐시에 남아 있는 시간
    • 이 시간 이후에는 항목이 자동으로 제거됩니다.
    • 오래된 데이터가 메모리를 소모하는 것을 방지합니다.
  4. checkInterval (기본값: 1분)
    • 서버가 만료된 항목을 확인하는 빈도
    • 값이 낮을수록 메모리 사용량이 더 정확하게 유지됩니다.
    • 값이 높을수록 CPU 사용량이 줄어듭니다.
  5. statsInterval (기본값: 30초)
    • 캐시 통계가 얼마나 자주 업데이트됩니까?
    • 적중률/미스율의 정확도에 영향을 미칩니다.
    • 캐시 효과 모니터링에 도움이 됩니다.

토큰 소비를 줄이는 방법

메모리 캐시 서버는 사용자와 언어 모델 간에 재전송해야 하는 데이터를 자동으로 저장하여 토큰 소모를 줄입니다. MCP 클라이언트를 통해 언어 모델과 상호 작용할 때 캐싱이 자동으로 이루어지므로 특별한 작업은 필요하지 않습니다.

캐시되는 내용의 몇 가지 예는 다음과 같습니다.

1. 파일 콘텐츠 캐싱

파일을 여러 번 읽을 때:

  • 첫 번째: 전체 파일 콘텐츠가 읽혀지고 캐시됩니다.
  • 이후 시간: 파일을 다시 읽는 대신 캐시에서 콘텐츠가 검색됩니다.
  • 결과: 반복되는 파일 작업에 사용되는 토큰이 줄어듭니다.

2. 계산 결과

계산이나 분석을 수행할 때:

  • 첫 번째 시간: 전체 계산이 수행되고 결과가 캐시됩니다.
  • 이후 시간: 입력이 동일한 경우 캐시에서 결과가 검색됩니다.
  • 결과: 반복 계산에 사용되는 토큰이 줄어듭니다.

3. 자주 접근되는 데이터

동일한 데이터가 여러 번 필요한 경우:

  • 첫 번째 시간: 데이터가 처리되고 캐시됩니다.
  • 이후 시간: TTL이 만료될 때까지 캐시에서 데이터가 검색됩니다.
  • 결과: 동일한 정보에 액세스하는 데 사용되는 토큰이 줄어듭니다.

자동 캐시 관리

서버는 다음을 통해 캐싱 프로세스를 자동으로 관리합니다.

  • 처음 발생 시 데이터 저장
  • 사용 가능한 경우 캐시된 데이터 제공
  • 설정에 따라 오래되거나 사용하지 않는 데이터 제거
  • 통계를 통한 효과 추적

최적화 팁

1. 적절한 TTL 설정

  • 자주 변경되는 데이터에 대한 단축어
  • 정적 콘텐츠의 경우 더 길어짐

2. 메모리 제한 조정

  • 더 많은 캐싱(더 많은 토큰 절약)을 위해 더 높음
  • 메모리 사용량이 문제라면 낮추세요

3. 캐시 통계 모니터링

  • 높은 적중률 = 좋은 토큰 절약
  • 적중률이 낮으면 TTL 또는 제한을 조정하세요.

환경 변수 구성

MCP 설정에서 환경 변수를 사용하여 config.json 설정을 재정의할 수 있습니다.

{ "mcpServers": { "memory-cache": { "command": "node", "args": ["/path/to/build/index.js"], "env": { "MAX_ENTRIES": "5000", "MAX_MEMORY": "209715200", // 200MB "DEFAULT_TTL": "7200", // 2 hours "CHECK_INTERVAL": "120000", // 2 minutes "STATS_INTERVAL": "60000" // 1 minute } } } }

사용자 정의 구성 파일 위치를 지정할 수도 있습니다.

{ "env": { "CONFIG_PATH": "/path/to/your/config.json" } }

서버는 다음을 수행합니다.

  1. 해당 디렉토리에서 config.json을 찾으세요.
  2. 모든 환경 변수 재정의 적용
  3. 둘 다 지정되지 않으면 기본값을 사용합니다.

실제 캐시 테스트

캐시가 실제로 어떻게 작동하는지 보려면 다음 시나리오를 시도해 보세요.

  1. 파일 읽기 테스트
    • 대용량 파일 읽기 및 분석
    • 파일과 관련해 같은 질문을 다시 해보세요
    • 파일 내용이 캐시되므로 두 번째 응답이 더 빨라야 합니다.
  2. 데이터 분석 테스트
    • 일부 데이터에 대한 분석 수행
    • 동일한 분석을 다시 요청하세요
    • 두 번째 분석에서는 캐시된 결과를 사용해야 합니다.
  3. 프로젝트 탐색 테스트
    • 프로젝트 구조 살펴보기
    • 동일한 파일/디렉토리를 다시 쿼리합니다.
    • 디렉토리 목록과 파일 내용은 캐시에서 제공됩니다.

캐시가 작동 중일 때 다음 사항이 나타납니다.

  • 반복 작업에 대한 더 빠른 대응
  • 변경되지 않은 콘텐츠에 대한 일관된 답변
  • 변경되지 않은 파일을 다시 읽을 필요가 없습니다.

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

언어 모델 상호작용 중에 데이터를 캐싱하여 토큰 사용을 최적화하는 MCP(Model Context Protocol) 서버로, 모든 언어 모델 및 MCP 클라이언트와 호환됩니다.

  1. Installation
    1. Installing via Smithery
    2. Installing Manually
  2. Verifying It Works
    1. Configuration
      1. Configuration Settings Explained
    2. How It Reduces Token Consumption
      1. 1. File Content Caching
      2. 2. Computation Results
      3. 3. Frequently Accessed Data
    3. Automatic Cache Management
      1. Optimization Tips
        1. 1. Set Appropriate TTLs
        2. 2. Adjust Memory Limits
        3. 3. Monitor Cache Stats
      2. Environment Variable Configuration
        1. Testing the Cache in Practice
          ID: 4b4y97ooyl