VRChat MCP OSC

by Krekun
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Enables AI-driven avatar control and interactions in VRChat through OSC, allowing manipulation of avatar parameters, movement control, message sending, menu toggling, and retrieval of avatar information.

VRChat MCP OSC

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.

Overview

By leveraging OSC (Open Sound Control) to communicate with VRChat, VRChat MCP OSC allows AI assistants such as Claude to:

  • Control avatar parameters and expressions
  • Send messages in VRChat
  • Respond to various VR events
    And more—all through the high-level API provided by the Model Context Protocol.

Key Features

  • Avatar Control: Manipulate avatar parameters and expressions
  • Movement Control: Direct avatar movement and orientation
  • Communication: Send messages through VRChat's chatbox
  • Menu Access: Toggle VRChat menu and interface elements
  • Avatar Information: Query avatar properties and parameters
  • Seamless VRChat Integration: Automatic detection of avatar configurations

System Requirements

  • Node.js 18 or higher
  • VRChat with OSC enabled
  • Claude Desktop (with MCP support)

Using with Claude Desktop

git clone https://github.com/Krekun/vrchat-mcp-osc cd vrchat-mcp-osc npm link

Configure Claude Desktop

Configure Claude Desktop by editing the claude_desktop_config.json file:

{ "mcpServers": { "vrchat-mcp-osc": { "command": "npx", "args": [ "vrchat-mcp-osc" ] } } }

Command Line Options

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" ] } } }

Available Options

OptionDescriptionDefaultNotes
--websocket-port <port>WebSocket port8765For WebSocket communication
--websocket-host <host>WebSocket hostlocalhostFor WebSocket communication
--osc-send-port <port>OSC send port9000Port for sending to VRChat
--osc-send-ip <ip>OSC send IP127.0.0.1Address for sending to VRChat
--osc-receive-port <port>OSC receive port9001Port for receiving from VRChat
--osc-receive-ip <ip>OSC receive IP127.0.0.1Address for receiving from VRChat
--debugEnable debug loggingfalseOutput detailed logs
--no-relayDisable relay serverfalseWhen not using relay server

Available MCP Tools

VRChat MCP OSC exposes the following MCP tools to AI assistants:

Tool NameDescription
get_avatar_nameRetrieves the current avatar's name
get_avatar_parametersLists available avatar parameters
set_avatar_parameterSets a specific avatar parameter
set_emote_parameterTriggers avatar emotes
move_avatarMoves the avatar in a specific direction
look_directionControls avatar's view direction
jumpMakes the avatar jump
menuToggles the VRChat menu
voiceToggles voice features
send_messageSends a message to the VRChat chatbox

Troubleshooting

Common Issues

  1. VRChat not responding to commands
    • Ensure OSC is enabled in VRChat settings
    • Check that the OSC ports match between VRChat and MCP configuration
    • Restart VRChat and Claude Desktop
  2. MCP server not starting
    • Ensure Node.js 18+ is installed
    • Check command line arguments for errors
    • Try running with --debug flag for more detailed logs
    • Use npx vrchat-mcp-osc -- --debug if direct arguments don't work
  3. NPX execution issues
    • If arguments aren't being recognized, try using the double dash format: npx vrchat-mcp-osc -- --debug
    • On Windows, try running in a command prompt with administrator privileges
    • If you're having trouble with global installation, try the local npm link approach

Project Structure

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

Development

Build From Source

# 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

License

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.

Acknowledgments

  • VRChat team for the OSC integration
  • Model Context Protocol for the standardized AI interface
  • Anthropic for Claude's MCP implementation
-
security - not tested
F
license - not found
-
quality - not tested

Provides a bridge between AI assistants and VRChat, enabling AI-driven avatar control and interactions in virtual reality environments through the Model Context Protocol.

  1. Overview
    1. Key Features
      1. System Requirements
        1. Using with Claude Desktop
          1. Clone and npm link
          2. Configure Claude Desktop
          3. Command Line Options
          4. Available Options
        2. Available MCP Tools
          1. Troubleshooting
            1. Common Issues
          2. Project Structure
            1. Development
              1. Build From Source
            2. License
              1. Acknowledgments
                ID: szi385y758