vrchat_get_friends_list
Retrieve VRChat friend information including display names, status, avatars, and location to manage social connections within the virtual platform.
Instructions
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"
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | ||
| n | No | ||
| offline | No |
Implementation Reference
- src/tools/friends.ts:65-87 (handler)The handler function that authenticates with VRChat, fetches the friends list using the provided offset, n, and offline parameters, and returns the JSON response or an error message.async (params) => { try { await vrchatClient.auth() const response = await vrchatClient.friendsApi.getFriends( params.offset || 0, params.n || 10, params.offline || false, ) return { content: [{ type: 'text', text: JSON.stringify(response.data, null, 2) }] } } catch (error) { return { content: [{ type: 'text', text: 'Failed to retrieve friends: ' + error }] } } }
- src/tools/friends.ts:60-64 (schema)Zod schema defining optional input parameters: offset (number >=0), n (number 1-100), offline (boolean).{ offset: z.number().min(0).optional(), n: z.number().min(1).max(100).optional(), offline: z.boolean().optional(), },
- src/tools/friends.ts:35-88 (registration)The server.tool() call registering the vrchat_get_friends_list tool, including name, detailed description of returned fields, input schema, and inline handler function.server.tool( // Name 'vrchat_get_friends_list', // Description `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"`, { offset: z.number().min(0).optional(), n: z.number().min(1).max(100).optional(), offline: z.boolean().optional(), }, async (params) => { try { await vrchatClient.auth() const response = await vrchatClient.friendsApi.getFriends( params.offset || 0, params.n || 10, params.offline || false, ) return { content: [{ type: 'text', text: JSON.stringify(response.data, null, 2) }] } } catch (error) { return { content: [{ type: 'text', text: 'Failed to retrieve friends: ' + error }] } } } )