Vrchat Mcp

by sawa-zen

63 stars
349 downloads
Not rated
GitHub

About

This project is a Model Context Protocol (MCP) server for interacting with the VRChat API.

Details

Author
sawa-zen
GitHub stars
63
Downloads
349
Categories
Other, AI

- Manage friends (list, send requests)
- Search and select avatars
- Search worlds and list favorited worlds
- Create and get instance information
- Search and join groups
- Manage favorites and favorite groups

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Vrchat Mcp
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Set the VRCHAT_USERNAME and VRCHAT_AUTH_TOKEN environment variables, then run npx vrchat-mcp. For Claude Desktop, add the server configuration with those environment variables to the desktop config file. Obtain an auth token using the npx vrchat-auth-token-checker command.

vrchat_get_current_user

Retrieve your own VRChat user information

vrchat_send_friend_request

Send a friend request to another user.

vrchat_get_friends_list

Retrieve a list of VRChat friend information. The following information can be retrieved: - "bio" - "bioLinks" - "currentAvatarImageUrl" - "currentAvatarThumbnailImageUrl" - "currentAvatarTags" - "developerType" - "displayName" - "fallbackAvatar" - "id" - "isFriend" - "last_platform" - "last_login" - "profilePicOverride" - "pronouns" - "status" - "statusDescription" - "tags" - "userIcon" - "location" - "friendKey"

vrchat_select_avatar

Select and switch to a specific avatar by its ID.

vrchat_search_avatars

Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other people's avatars.

vrchat_list_favorited_worlds

List favorited worlds by query filters.

vrchat_search_worlds

Search and list worlds by query filters.

vrchat_get_instance

Get information about a specific instance. Note: Detailed information about instance members is only available if you are the instance owner.

vrchat_create_instance

Create a new instance of a world.

vrchat_join_group

Join a VRChat group by ID

vrchat_search_groups

Search VRChat groups by name or shortCode

vrchat_list_favorite_groups

Returns a list of favorite groups owned by a user.

vrchat_list_favorites

Returns a list of favorites.

vrchat_add_favorite

Add a new favorite.

vrchat_list_invite_messages

Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users!

vrchat_request_invite

Request an invite from a user. IMPORTANT: Always obtain explicit permission from the user before sending an invite request. Note that invite requests cannot be sent to users in private instances. Returns the Notification of type requestInvite that was sent.

vrchat_get_invite_message

Returns a specific invite message. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages: - message = Message during a normal invite - response = Message when replying to a message - request = Message when requesting an invite - requestResponse = Message when replying to a request for invite

vrchat_get_notifications

Retrieve a list of VRChat notifications.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

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

McpServers

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

VRChat MCP

npm version License: MIT

日本語 | 한국어

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.

<a href="https://youtu.be/0MRxhzlFCkw">
YouTube
</a>

<a href="https://glama.ai/mcp/servers/u763zoyi5a">

</a>

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_AUTH_TOKEN=your_auth_token

> [!NOTE]
> #### How to obtain AUTH TOKEN
>
> You can use the following command to login and obtain an auth token:
>

> $ npx vrchat-auth-token-checker
>
> VRChat Username: your-username
> Password:
>
> # If 2FA is enabled
> 2FA Code: 123456
>
> # Success output
> Auth Token: authcookie-xxxxx
>

> Command source code
>
>
Please handle the obtained token with care as it has a very long lifetime**

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_AUTH_TOKEN": "your-auth-token"
      }
    }
  }
}

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.

Available Tools

This Model Context Protocol server provides the following VRChat-related tools:

User Related

- vrchat_get_friends_list: Get a list of friends - vrchat_send_friend_request: Send a friend request

Avatar Related

- vrchat_search_avatars: Search for avatars - vrchat_select_avatar: Select and switch to a specific avatar

World Related

- vrchat_search_worlds: Search for worlds - vrchat_list_favorited_worlds: Get a list of favorited worlds

Instance Related

- vrchat_create_instance: Create a new instance - vrchat_get_instance: Get information about a specific instance

Group Related

- vrchat_search_groups: Search for groups - vrchat_join_group: Join a group

Favorites Related

- vrchat_list_favorites: Get a list of favorites - vrchat_add_favorite: Add a new favorite - vrchat_list_favorite_groups: Get a list of favorite groups

Invite Related

- vrchat_list_invite_messages: Get a list of invite messages - vrchat_request_invite: Request an invite - vrchat_get_invite_message: Get a specific invite message

Notification Related

- vrchat_get_notifications: Get a list of notifications

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

2. Build the package

   npm run build

4. Publish to npm

   npm publish

5. 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.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.