Navigation
VRChat MCP: Seamless Sync & Avatar Magic - MCP Implementation

VRChat MCP: Seamless Sync & Avatar Magic

Level up your VRChat experience with MCP! Seamlessly sync models via the API—smooth as butter. Say goodbye to clunky setups and hello to avatar magic. Your VR life just got 10x cooler. 🎮✨

Developer Tools
4.1(69 reviews)
103 saves
48 comments

94% of users reported increased productivity after just one week

About VRChat MCP

What is VRChat MCP: Seamless Sync & Avatar Magic?

VRChat MCP (Model Context Protocol) serves as a bridge between developers and the VRChat ecosystem, enabling structured access to core platform features through standardized API interactions. This server empowers users to retrieve user profiles, friend lists, avatar details, and world data with precision, while maintaining seamless synchronization across sessions. Its design prioritizes secure authentication methods, including TOTP-based two-factor verification, ensuring robust protection for sensitive account information.

How to Use VRChat MCP: Seamless Sync & Avatar Magic?

Getting started requires configuring environment variables for your VRChat credentials, including username, password, and TOTP secret. Launch the server via npx vrchat-mcp, or integrate it directly into tools like Claude Desktop by editing configuration files. For desktop setups, adjust paths to npm commands if using version managers like nodenv. A key safety step involves decoding your TOTP QR code to extract the secret string, which should be handled with care due to its sensitive nature.

VRChat MCP Features

Key Features of VRChat MCP: Seamless Sync & Avatar Magic?

This protocol excels in three core areas: comprehensive endpoint coverage (with 40+ supported API methods), adaptive authentication handling complex security requirements, and modular integration for third-party tools. Current highlights include real-time friend list synchronization and advanced avatar search capabilities, while planned features expand into group management and instance control. The system's "seamless sync" ensures data consistency across multiple platforms and sessions.

Use Cases of VRChat MCP: Seamless Sync & Avatar Magic?

Developers leverage this tool to:

  • Create custom dashboard interfaces for avatar management
  • Automate friend request handling through scripted workflows
  • Build analytics tools tracking world popularity trends
  • Develop moderation utilities for group and instance management
  • Integrate VRChat data into hybrid AR/VR applications

VRChat MCP FAQ

FAQ from VRChat MCP: Seamless Sync & Avatar Magic?

Q: Is TOTP secret storage secure?
A: The protocol follows best practices but requires users to safeguard their secrets externally. Always use encrypted storage methods.

Q: Can I debug live sessions?
A: Use the official MCP Inspector tool by running npx @modelcontextprotocol/inspector, which provides real-time API call visualization.

Q: What's the update workflow?
A: Version updates follow semver conventions, with patch/minor/major releases managed through npm version commands before publishing to npmjs.com.

Content

VRChat MCP(Model Context Protocol)

日本語

eyecatch

This project is a Model Context Protocol (MCP) server for interacting with the VRChat API. It allows you to retrieve various information from VRChat using a standardized protocol.

Overview

The VRChat MCP server provides a way to access VRChat's API endpoints in a structured manner. It supports a wide range of functionalities, including user authentication, retrieving user and friend information, accessing avatar and world data, and more.

Usage

To start the server, ensure you have the necessary environment variables set:

export VRCHAT_USERNAME=your_username
export VRCHAT_PASSWORD=your_password
export VRCHAT_TOTP_SECRET=your_totp_secret
export [[email protected]](/cdn-cgi/l/email-protection)

[!NOTE]

Obtain your TOTP secret

  1. Visit the VRChat Profile and enable Two-factor authentication.
  2. Decode the displayed QR code to get a string like otpauth://totp/VRChat:[[email protected]](/cdn-cgi/l/email-protection)?secret=XXXXXXXXXXXXXXXXXXX&issuer=VRChat.
  3. Use the XXXXXXXXXXXXXXXXXXX part as your TOTP secret.

This method may have security concerns, so proceed with caution.

Then, run the following command:

npx vrchat-mcp

This will launch the MCP server, allowing you to interact with the VRChat API through the defined tools.

Usage with Claude Desktop

To use this MCP server with Claude Desktop, you do not need to run npx vrchat-mcp manually. Instead, add the following configuration to your Claude Desktop config file:

  • 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": "[email protected]"
    }
    }
    }
    }

Then, start Claude Desktop as usual. If you have to use nodenv or nvm, you may need to specify the full path to the npx command.

VRChat API Endpoints

This is a list of endpoints from the VRChat API that our Model Context Protocol server supports or plans to support. Both GET and POST methods are included to provide comprehensive functionality. The checkboxes indicate the implementation status of each endpoint.

Authentication and User Information

  • Get current user info
  • Search users
  • Get specific user profile
  • Get friends list
  • Get online friends
  • Get user groups
  • Get player moderations
  • Get user status
  • Update user info
  • Update user status
  • Send friend request
  • Accept/Deny friend request
  • Remove friend
  • Block user
  • Unblock user

Avatar Related

  • Get own avatars
  • Get favorite avatars
  • Search avatars
  • Get specific avatar details
  • Get public avatars
  • Create avatar
  • Update avatar
  • Delete avatar
  • Select avatar
  • Favorite/Unfavorite avatar

World Related

  • Get worlds list
  • Get active worlds
  • Get recently visited worlds
  • Get favorite worlds
  • Search worlds
  • Get specific world details
  • Get world instances
  • Get public worlds
  • Create world
  • Update world
  • Delete world
  • Favorite/Unfavorite world

Instance Related

  • Create instance
  • Get instance info
  • Get instance attendees
  • Get instance short name
  • Join instance
  • Leave instance
  • Invite user to instance

File Related

  • Get file info
  • Get file download info
  • Get file status

Group Related

  • Search groups
  • Get specific group info
  • Get group members
  • Get group permissions
  • Get group requests
  • Get group invites
  • Get group bans
  • Get group galleries
  • Get group owned worlds
  • Create group
  • Update group
  • Delete group
  • Join group
  • Leave group
  • Invite user to group
  • Accept/Deny group invite
  • Ban user from group
  • Unban user from group

Notification Related

  • Get notifications list
  • Get friend requests
  • Get unread notification count
  • Mark notification as read
  • Delete notification
  • Clear all notifications

Inventory Related

  • Get license types
  • Get owned licenses
  • Get stores list

System Related

  • Get API configuration
  • Get API limits
  • Check system health
  • Get online users count
  • Get server announcements

Others

  • Get tags list
  • Get favorite info
  • Get invisibles list
  • Get moderations
  • Get favorite groups
  • Get favorite group types
  • Create moderation
  • Delete moderation
  • Update favorite group
  • Update favorite group type

Debugging

First, build the project:

npm install
npm run build

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

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

Be sure that environment variables are properly configured.

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Publishing

To publish a new version of the package, follow these steps:

  1. Pull the latest code from the main branch

    git checkout main

git pull origin main
  1. Update the version as needed

    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
  1. Build the package

    npm run build

  2. Publish to npm

    npm publish

  3. Push changes to the remote repository

    git push origin main --tags

Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any improvements or bug fixes.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Related MCP Servers & Clients