VRChat MCP Server

by sawa-zen
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Enables configuration of the MCP server using environment variables stored in a .env file for credentials and settings.

  • Hosts the repository for cloning and contributing to the project.

  • Used as the runtime environment for executing the MCP server.

日本語|韓国語

このプロジェクトは、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 VRCHAT_EMAIL=your_email@example.com

[!注記]

TOTPシークレットを入手する

  1. VRChat プロフィールにアクセスし、2 要素認証を有効にします。
  2. 表示された QR コードをデコードして、 otpauth://totp/VRChat:your@email.com?secret=XXXXXXXXXXXXXXXXXXX&issuer=VRChatのような文字列を取得します。
  3. XXXXXXXXXXXXXXXXXXXの部分を TOTP シークレットとして使用します。

この方法にはセキュリティ上の懸念がある可能性があるため、注意して進めてください。

次に、次のコマンドを実行します。

npx vrchat-mcp

これにより MCP サーバーが起動し、定義されたツールを通じて VRChat API と対話できるようになります。

Claude Desktopでの使用

この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": "your-email@example.com" } } } }

その後、通常通りClaude Desktopを起動します。nodenvまたはnvmを使用する必要がある場合は、 npxコマンドのフルパスを指定する必要があるかもしれません。

VRChat APIエンドポイント

これは、モデルコンテキストプロトコルサーバーがサポートしている、またはサポート予定のVRChat APIエンドポイントのリストです。包括的な機能を提供するために、GETメソッドとPOSTメソッドの両方が含まれています。チェックボックスは各エンドポイントの実装状況を示しています。

認証とユーザー情報

  • [x] 現在のユーザー情報を取得する
  • [ ] ユーザーを検索
  • [ ] 特定のユーザープロファイルを取得する
  • [ ] ユーザーグループを取得する
  • [ ] プレイヤーのモデレーションを取得する
  • [ ] ユーザーステータスを取得する
  • [ ] ユーザー情報を更新する
  • [ ] ユーザーステータスの更新
  • [ ] ユーザーをブロック
  • [ ] ユーザーのブロックを解除

友人関連

  • [x] 友達リストを取得
  • [ ] オンラインの友達を作る
  • [x] 友達リクエストを送信
  • [ ] 友達リクエストを承認/拒否
  • [ ] 友達を削除

アバター関連

  • [ ] 自分のアバターを入手する
  • [ ] お気に入りのアバターを入手
  • [x] アバターを検索
  • [ ] 特定のアバターの詳細を取得する
  • [ ] 公開アバターを取得する
  • [ ] アバターを作成
  • [ ] アバターを更新
  • [ ] アバターを削除
  • [x] アバターを選択
  • [ ] お気に入り/お気に入り解除のアバター

世界関連

  • [ ] ワールドリストを取得する
  • [ ] アクティブな世界を取得する
  • [ ] 最近訪れたワールドを取得する
  • [ ] お気に入りのワールドを取得する
  • [x] ワールドを検索
  • [ ] 特定の世界の詳細を取得する
  • [ ] ワールドインスタンスを取得する
  • [ ] パブリックワールドを取得する
  • [ ] 世界を創造する
  • [ ] アップデートワールド
  • [ ] ワールドを削除
  • [ ] 好きな世界/嫌いな世界

インスタンス関連

  • [x] インスタンスの作成
  • [x] インスタンス情報を取得する
  • [ ] インスタンスの参加者を取得する
  • [ ] インスタンスの短縮名を取得する
  • [ ] インスタンスに参加
  • [ ] インスタンスを離れる
  • [ ] ユーザーをインスタンスに招待する

ファイル関連

  • [ ] ファイル情報を取得
  • [ ] ファイルのダウンロード情報を取得する
  • [ ] ファイルステータスを取得する

グループ関連

  • [x] グループを検索
  • [ ] 特定のグループ情報を取得する
  • [ ] グループメンバーを取得する
  • [ ] グループ権限を取得する
  • [ ] グループリクエストを取得する
  • [ ] グループ招待を受け取る
  • [ ] グループ禁止を受ける
  • [ ] グループギャラリーを取得する
  • [ ] グループ所有のワールドを取得する
  • [ ] グループを作成
  • [ ] 更新グループ
  • [ ] グループを削除
  • [x] グループに参加
  • [ ] グループを脱退
  • [ ] ユーザーをグループに招待する
  • [ ] グループ招待を承認/拒否
  • [ ] ユーザーをグループから禁止する
  • [ ] グループからのユーザーの禁止を解除

通知関連

  • [ ] 通知リストを取得する
  • [ ] 友達リクエストを受け取る
  • [ ] 未読通知数を取得する
  • [ ] 通知を既読にする
  • [ ] 削除通知
  • [ ] すべての通知を消去

在庫関連

  • [ ] ライセンスの種類を取得する
  • [ ] 所有ライセンスを取得する
  • [ ] 店舗リストを取得する

システム関連

  • [ ] API構成を取得する
  • [ ] API制限を取得する
  • [ ] システムの健全性を確認する
  • [ ] オンラインユーザー数を取得する
  • [ ] サーバーのアナウンスを取得する

お気に入り

  • [x] お気に入りリスト
  • [x] お気に入りに追加
  • [ ] お気に入りを削除
  • [x] お気に入りのグループを一覧表示する
  • [ ] お気に入りのグループを表示
  • [ ] お気に入りグループを更新
  • [ ] お気に入りグループをクリア
  • [ ] お気に入りの制限を取得する

招待

  • [x] 招待メッセージの一覧
  • [x] 招待をリクエスト
  • [ ] 招待を送信
  • [x] 招待メッセージを受け取る
  • [ ] 招待メッセージの更新

その他

  • [ ] タグリストを取得する
  • [ ] 非表示リストを取得する
  • [ ] モデレーションを取得する
  • [ ] お気に入りのグループタイプを取得する
  • [ ] モデレーションを作成する
  • [ ] 削除モデレーション

デバッグ

まず、プロジェクトをビルドします。

npm install npm run build

MCPサーバーはstdio経由で実行されるため、デバッグが困難になる場合があります。最適なデバッグエクスペリエンスを得るには、MCP Inspectorの使用を強くお勧めします。

次のコマンドを使用して、npm 経由で MCP Inspector を起動できます。

npx @modelcontextprotocol/inspector "./dist/main.js"

環境変数が適切に設定されていることを確認してください。

起動すると、ブラウザでアクセスしてデバッグを開始できる URL がインスペクタに表示されます。

出版

パッケージの新しいバージョンを公開するには、次の手順に従います。

  1. メインブランチから最新のコードを取得する
    git checkout main git pull origin main
  2. 必要に応じてバージョンを更新する
    # For patch version updates (e.g., 0.1.2 → 0.1.3) npm version patch # For minor version updates (e.g., 0.1.2 → 0.2.0) npm version minor # For major version updates (e.g., 0.1.2 → 1.0.0) npm version major
  3. パッケージをビルドする
    npm run build
  4. npmに公開する
    npm publish
  5. 変更をリモートリポジトリにプッシュする
    git push origin main --tags

貢献

貢献を歓迎します!改善やバグ修正が必要な場合は、リポジトリをフォークしてプルリクエストを送信してください。

ライセンス

このプロジェクトはMITライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

AI アシスタントが VRChat API と対話し、標準化されたインターフェースを通じてユーザー情報、フレンド リスト、その他の VRChat データを取得できるようにするモデル コンテキスト プロトコル サーバー。

  1. Usage
    1. Obtain your TOTP secret
  2. Usage with Claude Desktop
    1. VRChat API Endpoints
      1. Authentication and User Information
      2. Friend Related
      3. Avatar Related
      4. World Related
      5. Instance Related
      6. File Related
      7. Group Related
      8. Notification Related
      9. Inventory Related
      10. System Related
      11. Favorites
      12. Invites
      13. Others
    2. Debugging
      1. Publishing
        1. Contributing
          1. License
            ID: u763zoyi5a