A bridge between AI assistants and VRChat using MCP and OSC, enabling AI-driven avatar control and interactions in virtual reality.
VRChat MCP OSC provides a bridge between AI assistants and VRChat using the Model Context Protocol (MCP), enabling AI-driven avatar control and interactions in virtual reality environments.
By leveraging OSC (Open Sound Control) to communicate with VRChat, VRChat MCP OSC allows AI assistants such as Claude to:
git clone https://github.com/Krekun/vrchat-mcp-osc
cd vrchat-mcp-osc
npm link
Configure Claude Desktop by editing the claude_desktop_config.json
file:
{
"mcpServers": {
"vrchat-mcp-osc": {
"command": "npx",
"args": [
"vrchat-mcp-osc"
]
}
}
}
The server supports various command-line arguments for customization:
# Claude Desktop configuration
{
"mcpServers": {
"vrchat-mcp-osc": {
"command": "npx",
"args": [
"vrchat-mcp-osc",
"--websocket-port", "8765",
"--websocket-host", "localhost",
"--osc-send-port", "9000",
"--osc-send-ip", "127.0.0.1",
"--osc-receive-port", "9001",
"--osc-receive-ip", "127.0.0.1",
"--debug"
]
}
}
}
Option | Description | Default | Notes |
---|---|---|---|
--websocket-port <port> | WebSocket port | 8765 | For WebSocket communication |
--websocket-host <host> | WebSocket host | localhost | For WebSocket communication |
--osc-send-port <port> | OSC send port | 9000 | Port for sending to VRChat |
--osc-send-ip <ip> | OSC send IP | 127.0.0.1 | Address for sending to VRChat |
--osc-receive-port <port> | OSC receive port | 9001 | Port for receiving from VRChat |
--osc-receive-ip <ip> | OSC receive IP | 127.0.0.1 | Address for receiving from VRChat |
--debug | Enable debug logging | false | Output detailed logs |
--no-relay | Disable relay server | false | When not using relay server |
VRChat MCP OSC exposes the following MCP tools to AI assistants:
Tool Name | Description |
---|---|
get_avatar_name | Retrieves the current avatar's name |
get_avatar_parameters | Lists available avatar parameters |
set_avatar_parameter | Sets a specific avatar parameter |
set_emote_parameter | Triggers avatar emotes |
move_avatar | Moves the avatar in a specific direction |
look_direction | Controls avatar's view direction |
jump | Makes the avatar jump |
menu | Toggles the VRChat menu |
voice | Toggles voice features |
send_message | Sends a message to the VRChat chatbox |
VRChat not responding to commands
MCP server not starting
--debug
flag for more detailed logsnpx vrchat-mcp-osc -- --debug
if direct arguments don't workNPX execution issues
npx vrchat-mcp-osc -- --debug
vrchat-mcp-osc/
├── packages/
│ ├── mcp-server/ # MCP server implementation (main entry point)
│ ├── relay-server/ # WebSocket to OSC relay
│ ├── types/ # Shared TypeScript interfaces
│ └── utils/ # Common utilities
└── pnpm-workspace.yaml # Workspace configuration
# Clone the repository
git clone https://github.com/Krekun/vrchat-mcp-osc
cd vrchat-mcp-osc
# Install dependencies
pnpm install
# Build all packages
pnpm -r build
# Development mode
pnpm -r dev
VRChat MCP OSC is dual-licensed as follows:
For Non-Commercial Use: You may use, modify, and redistribute the software under the terms of the MIT License. (See the MIT License file for details.)
For Commercial Use: Commercial use of this software requires a separate commercial license.
By using this software under the MIT License for non-commercial purposes, you agree to the terms of that license. Commercial users must obtain a commercial license as described above.
An open-source messaging server for client-to-client communication using MCP HTTP Streamable messaging.
Query live Gmail data using LLMs via CData's read-only MCP server.
An AI voice toolkit with TTS, voice cloning, and video translation, now available as an MCP server for smarter agent integration.
Allows AI agents to search Gmail threads, learn your writing style, and draft emails.
Sends emails using the Resend API. Requires a Resend API key.
Access Reddit's public API to browse frontpage posts, subreddit information, and read post comments.
Connects a personal WhatsApp account to an AI agent using the WhatsApp Web multi-device API.
Interact with Wizzypedia through the MediaWiki API, supporting both read-only and authenticated operations.
Send Instagram DMs via your LLM
Simple MCP Server to enable a human-in-the-loop workflow in tools like Cline and Cursor.