Integrations
Provides a V8 JavaScript runtime environment for executing arbitrary JavaScript code, with persistent state management through heap snapshots
mcp-v8: V8 JavaScript MCP 서버
Claude 및 Cursor와 같은 AI 에이전트를 위한 도구로 V8 JavaScript 런타임을 제공하는 Rust 기반 모델 컨텍스트 프로토콜(MCP) 서버입니다. S3 또는 로컬 파일 시스템을 통한 영구 힙 스냅샷을 지원하며, 최신 AI 개발 환경과 통합할 수 있습니다.
특징
- V8 JavaScript 실행 : 안전하고 격리된 V8 엔진에서 임의의 JavaScript 코드를 실행합니다.
- 힙 스냅샷 : S3와 로컬 파일 스토리지를 모두 지원하여 실행 간에 V8 힙 상태를 유지하고 복원합니다.
- MCP 프로토콜 : Claude, Cursor 및 기타 MCP 클라이언트와의 원활한 도구 통합을 위한 모델 컨텍스트 프로토콜을 구현합니다.
- 구성 가능한 저장소 : 런타임 시 힙 저장소로 S3 또는 로컬 디렉토리 중에서 선택합니다.
설치
제공된 설치 스크립트를 사용하여 mcp-v8
을 설치하세요.
지엑스피1
이렇게 하면 해당 플랫폼에 맞는 최신 릴리스가 /usr/local/bin/mcp-v8
에 자동으로 다운로드되어 설치됩니다(비밀번호를 입력하라는 메시지가 표시될 수 있음).
고급 사용자: 소스에서 빌드하는 것을 선호하는 경우 이 문서의 마지막에 있는 소스에서 빌드 섹션을 참조하세요.
명령줄 인수
mcp-v8
다음 명령줄 인수를 지원합니다.
--s3-bucket <bucket>
: 힙 스냅샷에 AWS S3를 사용합니다. S3 버킷 이름을 지정합니다. (--directory-path
와 충돌합니다.)--directory-path <path>
: 힙 스냅샷에 로컬 디렉터리를 사용합니다. 디렉터리 경로를 지정합니다. (--s3-bucket
옵션과 충돌합니다.)
참고: --s3-bucket
또는 --directory-path
중 하나를 지정해야 합니다. 둘 다 지정하지 않으면 서버는 기본적으로 S3를 사용하며, 버킷 이름은 test-mcp-js-bucket
.
빠른 시작
설치 후 서버를 직접 실행할 수 있습니다. 다음 옵션 중 하나를 선택하세요.
완성
데스크톱용 클로드
- 위와 같이 서버를 설치합니다.
- Claude Desktop을 엽니다 → 설정 → 개발자 → 구성 편집.
claude_desktop_config.json
에 서버를 추가합니다.
- Claude Desktop을 다시 시작하세요. 새 도구가 망치 아이콘 아래에 나타납니다.
커서
- 위와 같이 서버를 설치합니다.
- 프로젝트 루트에서
.cursor/mcp.json
만들거나 편집하세요.
- 커서를 다시 시작하세요. MCP 도구가 UI에서 사용 가능해집니다.
사용 예
- Claude 또는 Cursor에게 "이 JavaScript를 실행하세요:
1 + 2
"라고 물어보세요. - 실행 간에 상태를 유지하려면 힙 스냅샷을 사용합니다.
힙 스토리지 옵션
다음 명령줄 인수를 사용하여 힙 저장소를 구성할 수 있습니다.
- S3 :
--s3-bucket <bucket>
- 예:
mcp-v8 --s3-bucket my-bucket-name
- 사용자 환경에 AWS 자격 증명이 필요합니다.
- 예:
- 파일 시스템 :
--directory-path <path>
- 예:
mcp-v8 --directory-path /tmp/mcp-v8-heaps
- 예:
참고: 한 번에 하나의 스토리지 백엔드만 사용할 수 있습니다. 둘 다 제공하면 서버에서 오류가 발생합니다.
제한 사항
mcp-v8
강력하고 지속 가능한 JavaScript 실행 환경을 제공하지만 런타임에는 제한이 있습니다.
async
/await
또는 Promises 사용 불가 : 비동기 JavaScript는 지원되지 않습니다. 모든 코드는 동기식이어야 합니다.fetch
나 네트워크 접근 불가 : HTTP 요청을 하거나 네트워크에 접근할 수 있는 기본 제공 방법이 없습니다.console.log
또는 표준 출력 없음 :console.log
또는 이와 유사한 함수의 출력이 표시되지 않습니다. 결과를 반환하려면 원하는 값이 코드의 마지막 줄에 있는지 확인하세요.- 파일 시스템 접근 불가 : 런타임은 로컬 파일 시스템이나 환경 변수에 대한 접근을 제공하지 않습니다.
npm install
또는 외부 패키지 없음 : npm 패키지를 설치하거나 가져올 수 없습니다. 표준 JavaScript(ECMAScript) 내장 패키지만 사용할 수 있습니다.- 타이머 없음 :
setTimeout
및setInterval
과 같은 함수를 사용할 수 없습니다. - DOM이나 브라우저 API가 없습니다 . 이것은 브라우저 환경이 아닙니다. 즉,
window
,document
또는 기타 브라우저별 객체에 액세스할 수 없습니다.
소스에서 빌드(고급)
설치 스크립트를 사용하는 대신 소스에서 빌드하는 것을 선호하는 경우:
필수 조건
- Rust(매일 밤 툴체인 권장)
- (선택 사항) S3 스토리지에 대한 AWS 자격 증명
서버 구축
빌드된 바이너리는 server/target/release/server
에 위치합니다. 원하는 경우 위 통합 단계에서 /usr/local/bin/mcp-v8
대신 이 경로를 사용할 수 있습니다.
Related MCP Servers
- JavaScriptApache 2.0
- AsecurityAlicenseAqualityAllows LLMs to execute Python code in a specified Conda environment, enabling access to necessary libraries and dependencies for efficient code execution.Last updated -174JavaScriptMIT License
- Python
- GoMIT License