Labsco
MCP SERVER

VRChat MCP

by BASIC-BIT

Read and act on your VRChat account from an assistant — friends, worlds, groups, events, invites and local VRCX history.

Games, Entertainment & FandomVerified
Summary
Your own VRChat account, driven locally, with writes on by default and controls to turn them off.

The curated tools do the composition an agent needs — friends grouped by world, an invite that resolves your current instance — while the generated routers keep the rest of the API reachable as it changes. It is scoped to one person on one machine by design: your cookies stay local, and account-changing calls are meant to go through your client's approval step.

What it is

An unofficial local MCP server for VRChat. It runs on your own machine, keeps your VRChat session cookies in the OS keychain, and exposes friends, worlds, groups, events, notifications, status and invites as curated tools, plus read-only access to your local VRCX history.

What you get
  • vrchat_friends_overview, vrchat_friends_list, vrchat_friends_search and vrchat_friend_details — who is online grouped by status and location, and one friend's profile and whereabouts
  • vrchat_me, vrchat_user_profile and vrchat_user_groups — your own profile with presence presets, another user's profile, and the groups either of you belong to
  • vrchat_worlds_search, vrchat_worlds_favorites, vrchat_world_profile and vrchat_world_instances_overview — find worlds, read your favourites, and see instances by access type and region
  • vrchat_groups_search, vrchat_group_profile, vrchat_group_members, vrchat_group_posts_recent and vrchat_group_instances_overview — group discovery, membership and recent activity
  • vrchat_events_discover, vrchat_events_upcoming, vrchat_events_search and the group event tools — public calendar events by category or term, and a group's next and upcoming ones
  • vrchat_event_create, vrchat_event_update, vrchat_event_follow and vrchat_event_delete — write access to group calendar events
  • vrchat_instance_create, vrchat_invite_self, vrchat_invite_user and vrchat_invite_user_to_me — open an instance and pull people into it; invite_user_to_me resolves your current location for you
  • vrchat_status_get, vrchat_status_set and vrchat_profile_update — read and set your status and description, and edit bio, pronouns and content filters with status preserved
  • vrchat_notifications_recent and vrchat_status_page_overview — recent notifications, and VRChat's own up/down state with open and recent incidents
  • vrcx_db_status, vrcx_instances_recent, vrcx_gamelog_world_visits_recent, vrcx_user_relationship_summary and vrcx_user_relationship_sessions — your local VRCX history: worlds you visited, sessions you shared with someone, and time spent together
  • vrchat_read, vrchat_write and vrchat_delete — generated routers that reach VRChat API operations with no curated tool, addressed by operationId
Requirements

Node.js 24.15.0 or newer and an MCP client that can run a local stdio process; clients launch it with npx -y @basicbit/vrchat-mcp. You log in through vrchat_auth_begin, which opens a local browser flow — VRChat has no third-party OAuth, so this is a personal tool and not something to host. Cookies default to the OS keychain; set VRCHAT_MCP_COOKIE_STORE=file on headless Linux. VRCHAT_MCP_ALLOW_WRITES=false makes it read-only, and groups.allowlist in a JSON config restricts group writes to named group IDs.

Setup effort

One command — npx -y @basicbit/vrchat-mcp