이 프로젝트는 VRChat API와 상호 작용하기 위한 Model Context Protocol (MCP) 서버입니다. 표준화된 프로토콜을 사용하여 VRChat에서 다양한 정보를 검색할 수 있습니다.

VRChat MCP 서버는 VRChat의 API 엔드포인트에 구조화된 방식으로 접근할 수 있는 방법을 제공합니다. 사용자 인증, 사용자 및 친구 정보 검색, 아바타 및 월드 데이터 접근 등 다양한 기능을 지원합니다.
서버를 시작하려면 필요한 환경 변수를 설정하세요:
export VRCHAT_USERNAME=your_username
export VRCHAT_PASSWORD=your_password
export VRCHAT_TOTP_SECRET=your_totp_secret
export [email protected]
Note
- VRChat 프로필에 접속하여 2단계 인증을 활성화합니다.
- 표시된 QR 코드를 디코딩하여
otpauth://totp/VRChat:[email protected]?secret=XXXXXXXXXXXXXXXXXXX&issuer=VRChat
와 같은 문자열을 얻습니다. XXXXXXXXXXXXXXXXXXX
부분을 TOTP 시크릿으로 사용합니다.
이 방법은 보안상의 우려가 있을 수 있으므로 신중하게 진행하세요.
그런 다음 다음 명령을 실행합니다:
npx vrchat-mcp
이렇게 하면 MCP 서버가 시작되어 정의된 도구를 통해 VRChat API와 상호 작용할 수 있습니다.
이 MCP 서버를 Claude Desktop에서 사용할 때는 npx vrchat-mcp
를 수동으로 실행할 필요가 없습니다. 대신 Claude Desktop 설정 파일에 다음 구성을 추가하세요:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"vrchat-mcp": {
"command": "npx",
"args": ["vrchat-mcp"],
"env": {
"VRCHAT_USERNAME": "your-username",
"VRCHAT_PASSWORD": "your-password",
"VRCHAT_TOTP_SECRET": "your-totp-secret",
"VRCHAT_EMAIL": "[email protected]"
}
}
}
}
그런 다음 평소처럼 Claude Desktop을 시작하세요. nodenv나 nvm을 사용하는 경우 npx
명령의 전체 경로를 지정해야 할 수 있습니다.
다음은 우리의 Model Context Protocol 서버가 지원하거나 지원 예정인 VRChat API 엔드포인트 목록입니다. GET 및 POST 메서드를 모두 포함하여 포괄적인 기능을 제공합니다. 체크박스는 각 엔드포인트의 구현 상태를 나타냅니다.
- 현재 사용자 정보 가져오기
- 사용자 검색
- 특정 사용자 프로필 가져오기
- 사용자 그룹 가져오기
- 플레이어 중재 가져오기
- 사용자 상태 가져오기
- 사용자 정보 업데이트
- 사용자 상태 업데이트
- 사용자 차단
- 사용자 차단 해제
- 친구 목록 가져오기
- 온라인 친구 가져오기
- 친구 요청 보내기
- 친구 요청 수락/거절
- 친구 삭제
- 자신의 아바타 가져오기
- 즐겨찾기 아바타 가져오기
- 아바타 검색
- 특정 아바타 상세 정보 가져오기
- 공개 아바타 가져오기
- 아바타 생성
- 아바타 업데이트
- 아바타 삭제
- 아바타 선택
- 아바타 즐겨찾기/즐겨찾기 해제
- 월드 목록 가져오기
- 활성 월드 가져오기
- 최근 방문한 월드 가져오기
- 즐겨찾기 월드 가져오기
- 월드 검색
- 특정 월드 상세 정보 가져오기
- 월드 인스턴스 가져오기
- 공개 월드 가져오기
- 월드 생성
- 월드 업데이트
- 월드 삭제
- 월드 즐겨찾기/즐겨찾기 해제
- 인스턴스 생성
- 인스턴스 정보 가져오기
- 인스턴스 참가자 가져오기
- 인스턴스 짧은 이름 가져오기
- 인스턴스 참가
- 인스턴스 나가기
- 사용자를 인스턴스에 초대
- 파일 정보 가져오기
- 파일 다운로드 정보 가져오기
- 파일 상태 가져오기
- 그룹 검색
- 특정 그룹 정보 가져오기
- 그룹 멤버 가져오기
- 그룹 권한 가져오기
- 그룹 요청 가져오기
- 그룹 초대 가져오기
- 그룹 차단 가져오기
- 그룹 갤러리 가져오기
- 그룹 소유 월드 가져오기
- 그룹 생성
- 그룹 업데이트
- 그룹 삭제
- 그룹 참가
- 그룹 나가기
- 사용자를 그룹에 초대
- 그룹 초대 수락/거절
- 사용자를 그룹에서 차단
- 사용자의 그룹 차단 해제
- 알림 목록 가져오기
- 친구 요청 가져오기
- 읽지 않은 알림 수 가져오기
- 알림을 읽음으로 표시
- 알림 삭제
- 모든 알림 지우기
- 라이선스 유형 가져오기
- 보유 라이선스 가져오기
- 스토어 목록 가져오기
- API 설정 가져오기
- API 제한 가져오기
- 시스템 상태 확인
- 온라인 사용자 수 가져오기
- 서버 공지 가져오기
- 즐겨찾기 목록 가져오기
- 즐겨찾기 추가
- 즐겨찾기 삭제
- 즐겨찾기 그룹 목록 가져오기
- 즐겨찾기 그룹 표시
- 즐겨찾기 그룹 업데이트
- 즐겨찾기 그룹 지우기
- 즐겨찾기 제한 가져오기
- 초대 메시지 목록 가져오기
- 초대 요청 보내기
- 초대 보내기
- 초대 메시지 가져오기
- 초대 메시지 업데이트
- 태그 목록 가져오기
- 숨김 목록 가져오기
- 중재 가져오기
- 즐겨찾기 그룹 유형 가져오기
- 중재 생성
- 중재 삭제
먼저 프로젝트를 빌드하세요:
npm install
npm run build
MCP 서버는 stdio를 통해 실행되므로 디버깅이 어려울 수 있습니다. 최상의 디버깅 경험을 위해 MCP Inspector 사용을 강력히 권장합니다.
다음 명령으로 npm을 통해 MCP Inspector를 실행할 수 있습니다:
npx @modelcontextprotocol/inspector "./dist/main.js"
환경 변수가 올바르게 구성되어 있는지 확인하세요.
실행하면 Inspector는 브라우저에서 접근할 수 있는 URL을 표시합니다. 이 URL에 접속하여 디버깅을 시작할 수 있습니다.
패키지를 배포하려면 다음 단계를 따르세요:
-
main 브랜치의 최신 코드를 로컬로 가져오기
git checkout main git pull origin main
-
필요에 따라 버전 업데이트
# 패치 버전 업데이트 (예: 0.1.2 → 0.1.3) npm version patch # 마이너 버전 업데이트 (예: 0.1.2 → 0.2.0) npm version minor # 메이저 버전 업데이트 (예: 0.1.2 → 1.0.0) npm version major
-
빌드 실행
npm run build
-
npm에 패키지 배포
npm publish
-
변경사항을 원격 저장소에 푸시
git push origin main --tags
기여를 환영합니다! 개선이나 버그 수정을 위한 풀 리퀘스트를 제출하려면 저장소를 포크하세요.
이 프로젝트는 MIT 라이선스 하에 제공됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.