Skip to main content
Glama

vrchat_add_favorite

Add VRChat worlds, friends, or avatars to your favorites list with tags for organization using the VRChat MCP Server.

Instructions

Add a new favorite.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeYesFavoriteType. Default: friend, Allowed: world | friend | avatar
favoriteIdYesMust be either AvatarID, WorldID or UserID
tagsYesTags indicate which group this favorite belongs to. Adding multiple groups makes it show up in all. Removing it from one in that case removes it from all.

Implementation Reference

  • The handler function that authenticates the VRChat client and calls the favoritesApi.addFavorite method with the provided parameters, returning the result or error as text content.
    async (params) => { try { await vrchatClient.auth() const favorite = await vrchatClient.favoritesApi.addFavorite({ type: params.type, favoriteId: params.favoriteId, tags: params.tags, }) return { content: [{ type: 'text', text: JSON.stringify(favorite.data, null, 2) }] } } catch (error) { return { content: [{ type: 'text', text: 'Failed to add favorite: ' + error }] } } }
  • Zod input schema validating the tool parameters: type (world, friend, or avatar), favoriteId (string), and tags (non-empty array of strings).
    { type: z.enum(['world', 'friend', 'avatar']) .describe('FavoriteType. Default: friend, Allowed: world | friend | avatar'), favoriteId: z.string().min(1) .describe('Must be either AvatarID, WorldID or UserID'), tags: z.array(z.string().min(1)).min(1) .describe('Tags indicate which group this favorite belongs to. Adding multiple groups makes it show up in all. Removing it from one in that case removes it from all.'), },
  • Registers the 'vrchat_add_favorite' tool with the MCP server using server.tool(), providing name, description, input schema, and handler function.
    server.tool( 'vrchat_add_favorite', 'Add a new favorite.', { type: z.enum(['world', 'friend', 'avatar']) .describe('FavoriteType. Default: friend, Allowed: world | friend | avatar'), favoriteId: z.string().min(1) .describe('Must be either AvatarID, WorldID or UserID'), tags: z.array(z.string().min(1)).min(1) .describe('Tags indicate which group this favorite belongs to. Adding multiple groups makes it show up in all. Removing it from one in that case removes it from all.'), }, async (params) => { try { await vrchatClient.auth() const favorite = await vrchatClient.favoritesApi.addFavorite({ type: params.type, favoriteId: params.favoriteId, tags: params.tags, }) return { content: [{ type: 'text', text: JSON.stringify(favorite.data, null, 2) }] } } catch (error) { return { content: [{ type: 'text', text: 'Failed to add favorite: ' + error }] } } } )

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sawa-zen/vrchat-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server