vrchat-mcp

vrchat-mcp: An MCP server bridging VRChat API to AI models, enabling access to user, avatar, and world data.

vrchat-mcp
vrchat-mcp Capabilities Showcase

vrchat-mcp Solution Overview

vrchat-mcp 是一款 MCP 服务器,旨在连接 AI 模型与 VRChat 平台,为开发者提供了一种标准化的方式来访问 VRChat API。它支持用户身份验证、检索用户和好友信息、访问头像和世界数据等功能。通过 vrchat-mcp,AI 模型可以获取 VRChat 环境中的实时数据,从而实现更智能的交互和应用。

该服务器通过标准输入/输出与 AI 模型进行通信,并支持通过环境变量进行配置,方便集成到各种 AI 应用中,例如 Claude Desktop。开发者可以使用此服务器轻松地将 VRChat 的数据集成到他们的 AI 模型中,从而创建更具沉浸感和互动性的体验。它极大地简化了 AI 模型与 VRChat 之间的集成过程,降低了开发门槛。

vrchat-mcp Key Capabilities

VRChat API Access via MCP

The vrchat-mcp server acts as a bridge, enabling AI models to access a wide range of VRChat's API endpoints through the standardized Model Context Protocol. This includes functionalities like retrieving user information (profile, friends, status), accessing avatar and world data, managing friend requests, and even interacting with group functionalities. The server translates MCP requests into VRChat API calls and returns the data in a structured format that AI models can easily process. This allows AI to understand the user's social context, preferences, and activities within VRChat.

Use Case: An AI assistant in VRChat could use this to identify a user's online friends and suggest joining the same instance, or recommend avatars and worlds based on the user's past activity and preferences.

Technical Detail: The server uses environment variables for authentication with the VRChat API, including username, password, TOTP secret, and email. It supports both GET and POST methods for comprehensive API coverage.

User Authentication and Authorization

The vrchat-mcp server handles the complexities of authenticating with the VRChat API, allowing AI models to focus on utilizing the data. It securely stores and manages user credentials (username, password, TOTP secret) through environment variables, and uses these credentials to obtain and maintain a valid session with VRChat. This ensures that all API requests are properly authorized and that the AI model can access the user's data without requiring the user to manually authenticate each time.

Use Case: An AI companion could use this to automatically update a user's VRChat status based on their real-world activity, such as setting their status to "Busy" when they are in a meeting.

Technical Detail: The server uses the VRChat API's authentication endpoints to obtain a session token, which is then included in all subsequent API requests. The TOTP secret is used for two-factor authentication, adding an extra layer of security.

Integration with Claude Desktop

The vrchat-mcp server offers seamless integration with Claude Desktop, a popular AI assistant platform. By adding a simple configuration block to the Claude Desktop config file, users can enable their AI assistant to access VRChat data through the vrchat-mcp server. This eliminates the need to manually run the server and configure the connection, making it easy for users to leverage VRChat data in their AI workflows.

Use Case: A user could ask Claude Desktop to find all their friends currently in VRChat and then automatically send them an invite to join their current instance.

Technical Detail: The Claude Desktop integration uses the command and args fields in the config file to launch the vrchat-mcp server as a subprocess. The env field is used to pass the necessary environment variables for authentication.

Comprehensive VRChat API Coverage

The vrchat-mcp server aims to provide comprehensive coverage of the VRChat API, supporting a wide range of endpoints related to users, friends, avatars, worlds, instances, groups, notifications, and more. This allows AI models to access a rich and diverse set of data about the VRChat ecosystem, enabling them to perform a wide variety of tasks and provide more personalized and engaging experiences. The project actively tracks the implementation status of each endpoint, ensuring that the server remains up-to-date with the latest VRChat API features.

Use Case: An AI-powered world recommendation system could use this to analyze a user's past world visits, friend activity, and group memberships to suggest new and interesting worlds to explore.

Technical Detail: The server uses a modular design, with each API endpoint implemented as a separate function or module. This makes it easy to add new endpoints and maintain the existing codebase.