Skip to main content
Glama

vrchat_add_favorite

Add a favorite world, friend, or avatar to VRChat with specific tags for grouping. Simplify managing favorites using the VRChat MCP Server.

Instructions

Add a new favorite.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
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.
typeYesFavoriteType. Default: friend, Allowed: world | friend | avatar

Implementation Reference

  • The async handler function that authenticates with VRChatClient and calls favoritesApi.addFavorite to add the favorite with specified type, id, and tags, returning JSON or error.
    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 for the tool: type (enum: world, friend, avatar), favoriteId (string), tags (array of non-empty 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 on the MCP server with name, description, input schema, and inline 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