vrmcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vrmcpload character.vrm and set expression to happy"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
VRMCP (VRM MCP Server)
VRM モデルを AI が自然言語で制御できる MCP サーバー。 Claude Desktop から自然言語で指示するだけで、Web ブラウザで VRM モデルがリアルタイムに動きます。
セットアップ
このプロジェクトは 2 つの運用モードをサポートしています:
ローカルモード: ローカル環境で MCP サーバーを起動(従来の方法)
リモートモード: Vercel にデプロイして、どこからでもアクセス(推奨)
{ "mcpServers": { "vrmcp": { "url": "https://vrmcp.up.railway.app/api/mcp/sse", "headers": { "x-api-key": "your-super-secret-key-12345" } } } }
Related MCP server: agent-vrm-mcp
使い方
利用可能なツールと使い方をまとめています。
利用可能なツール
Tool | 説明 | 使用例 |
| 利用可能な VRM/VRMA ファイル一覧 | 「どんな VRM がある?」 |
| VRM モデル読み込み | 「character.vrm を読み込んで」 |
| 表情設定 | 「嬉しい表情にして」 |
| ポーズ設定 | 「右を向いて」 |
| ボーン操作 | 「右手を上げて」 |
| VRMA アニメーション読み込み | 「greeting.vrma を読み込んで」 |
| アニメーション再生 | 「挨拶して」 |
| アニメーション停止 | 「止めて」 |
| 状態取得 | 「現在の状態は?」 |
プロジェクト構造
vrm-mcp/
├── src/
│ ├── mcp-server.ts # MCPサーバー実装(stdio + SSE)
│ ├── redis-client.ts
│ └── gateway.ts # stdio↔SSEゲートウェイ(Claude Desktop用)
├── api/
│ ├── mcp/
│ │ ├── sse.ts # MCP SSEエンドポイント
│ │ └── messages.ts # MCP POSTエンドポイント
│ └── viewer/
│ └── sse.ts # Viewer SSEエンドポイント
├── public/
│ ├── index.html # VRMビューア(SSE対応)
│ ├── models/ # VRMモデル配置(デフォルト)
│ └── animations/ # VRMAアニメーション配置(デフォルト)
├── package.json
└── README.mdAvailable Tools
9 toolsanimate_vrm_boneB
指定されたボーンを回転させる
| Name | Required | Description | Default |
|---|---|---|---|
| boneName | Yes | ボーン名(例: leftUpperArm, rightUpperArm, head, spine) | |
| rotation | Yes | クォータニオン回転 |
get_vrm_statusB
VRMモデルの現在の状態を取得する
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
list_vrm_filesC
利用可能なVRMモデルとVRMAアニメーションファイルの一覧を取得する
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | 取得するファイルの種類(デフォルト: all) |
load_vrma_animationB
VRMAファイルからアニメーションを読み込む
| Name | Required | Description | Default |
|---|---|---|---|
| animationName | Yes | アニメーション識別名(再生時に使用) | |
| animationPath | Yes | VRMAファイル名(例: greeting.vrma)環境変数 VRMA_ANIMATIONS_DIR からの相対パス |
load_vrm_modelB
VRMモデルファイルを読み込む
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | VRMファイル名(例: character.vrm)環境変数 VRM_MODELS_DIR からの相対パス |
play_vrma_animationB
読み込み済みのVRMAアニメーションを再生する
| Name | Required | Description | Default |
|---|---|---|---|
| loop | No | ループ再生するか | |
| animationName | Yes | 再生するアニメーション名 | |
| fadeInDuration | No | フェードイン時間(秒) |
set_vrm_expressionA
VRMモデルの表情を設定する
| Name | Required | Description | Default |
|---|---|---|---|
| weight | Yes | 表情の強さ (0.0-1.0) | |
| expression | Yes | 設定する表情(例: happy, angry, sad, surprised, neutral) |
set_vrm_poseB
VRMモデルの位置と回転を設定する
| Name | Required | Description | Default |
|---|---|---|---|
| position | No | モデルの位置 | |
| rotation | No | モデルの回転 |
stop_vrma_animationB
再生中のVRMAアニメーションを停止する
| Name | Required | Description | Default |
|---|---|---|---|
| fadeOutDuration | No | フェードアウト時間(秒) |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v0.1.0- First observed
animate_vrm_bone - First observed
get_vrm_status - First observed
list_vrm_files - First observed
load_vrm_model - First observed
load_vrma_animation - First observed
play_vrma_animation - First observed
set_vrm_expression - First observed
set_vrm_pose - First observed
stop_vrma_animation
TDQS
Scored across 9 tools
Each tool targets a distinct aspect of VRM model manipulation: loading, expressions, pose, bone animation, status retrieval, file listing, and animation control. No overlap.
All tool names follow a consistent verb_noun pattern in English (e.g., load_vrm_model, set_vrm_expression). No mixing of conventions.
Nine tools provide a well-scoped set for VRM model interaction, covering essential operations without unnecessary redundancy.
Core lifecycle is covered (load, modify, animate, status), but missing file management (create/delete/rename) or export functionality. Minor gap.
Related MCP Connectors
Intimate voice AI: 29 voices, 22 languages, emoji vocal cues, multi-voice scenes.
Give your AI a face, a voice, and a personality. 3D avatars with custom personas.
Turn text or an image into an animation-ready 3D model (GLB): generate, rig, animate, retexture.
Build real-time AI avatar personas and videos; manage voices, knowledge, sessions and meetings.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI-assisted 3D modeling and scene control in Autodesk Maya through natural language commands, supporting object creation, transformation, material application, and more.53 npm8MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to generate speech from text and express it through a 3D VRM avatar via the AgentVRM engine.25 PyPI3MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI to control 3D VRM models via natural language, supporting expressions, animations, and bone manipulation in real-time through a web browser.-
- AlicenseBqualityBmaintenanceEnables AI assistants to control Blender 3D software through natural language, with tools for modeling, materials, animation, rendering, and rigging.3818MIT