メタバース x AI: MCPを活用した自然言語によるVRChatの操作

# メタバース×AI: 自然言語でVRChatアバターを操作する「Prompt My Avatar」

![pic6.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/157463/05a1570b-f158-4b00-b747-56e1bdf41102.gif)

* 演出の都合上結構カットしてます [^1]

## TL;DR

* **課題:** VRChatでのアバター操作（表情、エモート）は複雑で初心者には難しい  
* **解決策:** 自然言語で指示するだけでアバターを操作できるツール「Prompt My Avatar」を開発  
* **仕組み:** LLMが指示を解釈し、MCPを経由してWebSocket/OSCでVRChatに伝達  
* **特徴:** 「手を振って」などの単純指示はもちろん、「つまらない会議のリアクションをして」のような複雑な指示もReAct Agentが実行  
* **今後:** 音声入力対応、操作対象の拡大、メタデータ活用の改善を計画中

**関連記事:**　
技術面はこちらに書いてます。
[Model Context Protocol(MCP)を使ったVRChatとAIの連携実装](https://qiita.com/Kuretan_vr/items/73aed7b626626eea8c10) 


## 1. メタバースとAIの融合

「楽しそうな表情で手を振りながら、左に3歩歩いて」

この一言で、VRChat上のあなたのアバターが実際に動き出す。これがAIとメタバースの融合がもたらす新しい可能性です。本記事では、自然言語を入力するだけでVRChatのアバターを自在に操作できるツール「Prompt My Avatar」を紹介します。

### VRChatの課題

VRChatは世界中の人々がアバターを通じて交流する人気のソーシャルVRプラットフォームです。自由度が高い反面、アバターの表情やアクション（エモート）の操作は複雑で、特に初心者にとっては大きな壁となっています。

さらに、VRChatではユーザーが自由にアバターを変更できますが、同じ「笑う」という動作でもアバターごとに操作方法が異なるため、アバターを変えるたびに操作を覚え直す必要があります。

### AIとメタバースの親和性

ここでLLM（大規模言語モデル）との融合が活きてきます：

* **直感的なインターフェース:** 「笑って」「拍手して」という日常語で操作できれば、複雑な手順を覚える必要がなくなります  
* **操作の簡略化:** 複数の操作が必要な複雑な動きも、一つの指示から実行できるようになります  
* **多言語対応:** 国境のないメタバース空間で、言語を問わずコミュニケーションが取れます
* **状況に合わせたコンテンツ生成:** 今回の対象外の話しにはなりますが、将来的には生成AIを用いることでユーザーの行動に合わせてリアルタイムでテクスチャやポリゴンの生成が可能になると思います。ユーザーに合わせた最適化が行われていくようになると思います。

「Prompt My Avatar」は、このAIとメタバースの親和性に着目し開発されました。

## 2. プロジェクト概要と開発動機

### 開発動機：VRChatをもっと楽しく、簡単に

私は2021年からVRChatを楽しんでおり、以前からVRChat向けアプリケーション開発に興味がありました。
興味のあるかたは過去記事をご覧いただけると幸いです。
[個人開発）React+FastAPI+OSCを使って、VRChatでテキストチャット&翻訳機を作成してみた](https://qiita.com/Krekun/items/12a4ec834376d1dc6ea5)

2025年初頭からModel Context Protocol（MCP）に関心を持ち、AIとVRChatを組み合わせることで面白い体験ができるのではないかと考え、本プロジェクトをスタートさせました。

### プロジェクト概要

「Prompt My Avatar」は、AIとVRChatを接続し、自然言語でアバターを操作できるようにするソフトウェアです。

https://x.com/Kuretan_vr/status/1904943308050448663

主な機能:

* **操作の複雑さを解消:** コントローラーボタンの記憶やメニュー操作から解放され、対話感覚でアバターを操作できます  
* **表現力の向上:** 複雑な動作や細かな表情変化も、言葉だけで簡単に実現できます
* **AIとの会話をVRChat上に出力:** AIの発はチャットに出力可能です。AIに冗談を言わせて、それを出力させることも簡単にできます


## 3. 実際のユーザー体験

「Prompt My Avatar」は、シンプルで直感的なチャットインターフェースを提供します：

* テキストボックスに指示を入力し送信するだけ  
* 過去の指示とAI応答（実行結果）が会話形式で表示される  
* 設定画面からAIモデルやツールを選択可能

### 使用例

**基本操作:**

* 「手を振って」→ アバターが手を振る  
* 「笑顔になって」→ アバターが笑顔になる
*  「チャットで挨拶をして」→　ちゃっとで「こんにちは」と送ってくれる
*  「○○（アバター名）になって」→ アバターを変更　「制服の子にして」と言うと制服着たアバターになります。 

**複合操作:**

* 「つまらない会議のリアクションをして」→ 冒頭の画像です。AIが既存のアニメーションの内最適なものを選んでくれます
* 「もっと涼しい格好にして」→ アバターが服を非表示にしてくれます。  

https://x.com/Kuretan_vr/status/1898439108214874566

* MSCと言ってますが、MCPの間違いです


**応用事例:**

* AIに冗談を言わせる

https://x.com/Kuretan_vr/status/1911103142386876547

AIの言うジョークは必ずしも面白くないです。

https://x.com/Kuretan_vr/status/1914343903081480240

## 4. 今後の展望

Prompt My Avatarは開発初期段階であり、ユーザーの反応を見ながら機能追加・改善を進めていきます：

**機能拡張予定:**

* **音声認識インターフェース:** ハンズフリー操作の実現  
* **メタデータ活用機能:** アバター/ワールド情報をAIが活用し、文脈に応じた操作の実現  
* **ワールド検索・移動機能:** 「今人気のあるカフェワールドを探して」・「いつものフレンドのいる飲み会ワールドに移動して」などの指示に対応  
* **自然言語による高度なアバター選択:** 「いつもの猫耳アバターに着替えて」などで変更可能に

**オープンソースの取り組み:**

* MCP Server部分はOSS化予定です。これによりCursorやClaude Desktopからでもアクセス可能となります

## 5. まとめ

Prompt My Avatarは、AIとメタバースの融合によってVRChatの操作性と表現力を高める試みです。自然言語という直感的なインターフェースを通じて、より多くの人々がメタバースの可能性を享受できる世界を目指しています。

現在αテスターを募集中です。[^2]
興味を持っていただけた方はDiscordサーバーへの参加とXのフォローをお願いします。

Discord:https://discord.gg/7XPvTaMGQb
X:https://x.com/Kuretan_vr

[^1]:使用するAIモデルにもよりますが、実際には動作まで2~3秒かかります。
[^2]:αテスト開始はGW前を想定しています