@basicbit/vrchat-mcp 0.1.10 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +3 -0
  3. package/dist/package.json +2 -1
  4. package/dist/src/config/defaults.json +3 -0
  5. package/dist/src/config/index.js +32 -0
  6. package/dist/src/config/index.js.map +1 -1
  7. package/dist/src/core/client.js +78 -5
  8. package/dist/src/core/client.js.map +1 -1
  9. package/dist/src/core/generatedToolOverrides.js +2 -0
  10. package/dist/src/core/generatedToolOverrides.js.map +1 -1
  11. package/dist/src/core/generatedToolSkips.js +1 -0
  12. package/dist/src/core/generatedToolSkips.js.map +1 -1
  13. package/dist/src/core/operationPolicy.js +12 -0
  14. package/dist/src/core/operationPolicy.js.map +1 -1
  15. package/dist/src/models/instances.js +16 -0
  16. package/dist/src/models/instances.js.map +1 -1
  17. package/dist/src/models/uploads.js +33 -0
  18. package/dist/src/models/uploads.js.map +1 -0
  19. package/dist/src/services/api/client.js +1 -0
  20. package/dist/src/services/api/client.js.map +1 -1
  21. package/dist/src/services/events/curated.js +16 -10
  22. package/dist/src/services/events/curated.js.map +1 -1
  23. package/dist/src/services/instances/curated.js +76 -1
  24. package/dist/src/services/instances/curated.js.map +1 -1
  25. package/dist/src/services/uploads/curated.js +42 -0
  26. package/dist/src/services/uploads/curated.js.map +1 -0
  27. package/dist/src/services/uploads/index.js +3 -0
  28. package/dist/src/services/uploads/index.js.map +1 -0
  29. package/dist/src/services/uploads/localPng.js +390 -0
  30. package/dist/src/services/uploads/localPng.js.map +1 -0
  31. package/dist/src/tools/curated/instances.js +29 -2
  32. package/dist/src/tools/curated/instances.js.map +1 -1
  33. package/dist/src/tools/curated/uploads.js +57 -0
  34. package/dist/src/tools/curated/uploads.js.map +1 -0
  35. package/dist/src/tools/registerAllTools.js +2 -0
  36. package/dist/src/tools/registerAllTools.js.map +1 -1
  37. package/docs/curated-tools.md +32 -0
  38. package/docs/spec-drift.md +33 -0
  39. package/docs/tools-guide.md +1 -0
  40. package/docs/tools.md +228 -6
  41. package/package.json +2 -1
  42. package/server.json +9 -2
package/docs/tools.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # Tool Catalog (generated)
2
2
 
3
- Generated: 2026-08-03T05:13:46.752Z
3
+ Generated: 2026-09-01T09:25:52.032Z
4
4
 
5
- Spec: VRChat API Documentation (1.20.7)
5
+ Spec: VRChat API Documentation (1.20.8)
6
6
 
7
7
  This file is generated without starting the MCP server. It reflects curated tools plus the auto-generated tool catalog (curated read/write replacements are omitted).
8
8
 
@@ -3725,6 +3725,125 @@ Output schema:
3725
3725
  }
3726
3726
  ```
3727
3727
 
3728
+ ### vrchat_group_image_upload
3729
+ Upload a static PNG to the signed-in VRChat account gallery for later use by an allowlisted group. This does not attach the image to a group post or event. (write)
3730
+
3731
+ Input schema:
3732
+
3733
+ ```json
3734
+ {
3735
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3736
+ "type": "object",
3737
+ "properties": {
3738
+ "groupId": {
3739
+ "type": "string",
3740
+ "description": "Exact group ID. Provide groupId or shortCode."
3741
+ },
3742
+ "shortCode": {
3743
+ "type": "string",
3744
+ "description": "Exact group short code. Provide groupId or shortCode."
3745
+ },
3746
+ "imagePath": {
3747
+ "type": "string",
3748
+ "minLength": 1,
3749
+ "description": "Absolute path to a static PNG inside uploads.allowedRoots. The image must be 65-2048 pixels per side and no larger than 10 MiB."
3750
+ }
3751
+ },
3752
+ "required": [
3753
+ "imagePath"
3754
+ ],
3755
+ "additionalProperties": false
3756
+ }
3757
+ ```
3758
+
3759
+ Output schema:
3760
+
3761
+ ```json
3762
+ {
3763
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3764
+ "type": "object",
3765
+ "properties": {
3766
+ "status": {
3767
+ "type": "string",
3768
+ "const": "uploaded"
3769
+ },
3770
+ "groupId": {
3771
+ "type": "string"
3772
+ },
3773
+ "fileId": {
3774
+ "type": "string"
3775
+ },
3776
+ "image": {
3777
+ "type": "object",
3778
+ "properties": {
3779
+ "fileName": {
3780
+ "type": "string"
3781
+ },
3782
+ "byteSize": {
3783
+ "type": "integer",
3784
+ "exclusiveMinimum": 0,
3785
+ "maximum": 9007199254740991
3786
+ },
3787
+ "width": {
3788
+ "type": "integer",
3789
+ "minimum": 65,
3790
+ "maximum": 2048
3791
+ },
3792
+ "height": {
3793
+ "type": "integer",
3794
+ "minimum": 65,
3795
+ "maximum": 2048
3796
+ }
3797
+ },
3798
+ "required": [
3799
+ "fileName",
3800
+ "byteSize",
3801
+ "width",
3802
+ "height"
3803
+ ],
3804
+ "additionalProperties": false
3805
+ },
3806
+ "file": {
3807
+ "type": "object",
3808
+ "properties": {
3809
+ "id": {
3810
+ "type": "string"
3811
+ },
3812
+ "name": {
3813
+ "type": "string"
3814
+ },
3815
+ "mimeType": {
3816
+ "type": "string"
3817
+ },
3818
+ "extension": {
3819
+ "type": "string"
3820
+ },
3821
+ "ownerId": {
3822
+ "type": "string"
3823
+ },
3824
+ "version": {
3825
+ "type": "integer",
3826
+ "minimum": -9007199254740991,
3827
+ "maximum": 9007199254740991
3828
+ }
3829
+ },
3830
+ "required": [
3831
+ "id"
3832
+ ],
3833
+ "additionalProperties": false
3834
+ }
3835
+ },
3836
+ "required": [
3837
+ "status",
3838
+ "groupId",
3839
+ "fileId",
3840
+ "image",
3841
+ "file"
3842
+ ],
3843
+ "additionalProperties": false
3844
+ }
3845
+ ```
3846
+
3728
3847
  ### vrchat_group_instances_overview
3729
3848
  Summarize active group instances (read-only). (read-only)
3730
3849
 
@@ -5736,6 +5855,85 @@ Output schema:
5736
5855
  }
5737
5856
  ```
5738
5857
 
5858
+ ### vrchat_instance_link_event
5859
+ Link an allowlisted group instance to its event without notifying. (write)
5860
+
5861
+ Input schema:
5862
+
5863
+ ```json
5864
+ {
5865
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
5866
+ "type": "object",
5867
+ "properties": {
5868
+ "groupId": {
5869
+ "type": "string",
5870
+ "description": "Owning group."
5871
+ },
5872
+ "calendarId": {
5873
+ "type": "string",
5874
+ "description": "Group event."
5875
+ },
5876
+ "worldId": {
5877
+ "type": "string",
5878
+ "description": "Instance world."
5879
+ },
5880
+ "instanceId": {
5881
+ "type": "string",
5882
+ "description": "Bare instance."
5883
+ }
5884
+ },
5885
+ "required": [
5886
+ "groupId",
5887
+ "calendarId",
5888
+ "worldId",
5889
+ "instanceId"
5890
+ ],
5891
+ "additionalProperties": false
5892
+ }
5893
+ ```
5894
+
5895
+ Output schema:
5896
+
5897
+ ```json
5898
+ {
5899
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
5900
+ "type": "object",
5901
+ "properties": {
5902
+ "status": {
5903
+ "type": "string",
5904
+ "enum": [
5905
+ "linked",
5906
+ "already_linked"
5907
+ ]
5908
+ },
5909
+ "groupId": {
5910
+ "type": "string"
5911
+ },
5912
+ "calendarId": {
5913
+ "type": "string"
5914
+ },
5915
+ "eventTitle": {
5916
+ "type": "string"
5917
+ },
5918
+ "location": {
5919
+ "type": "string"
5920
+ },
5921
+ "instanceName": {
5922
+ "type": "string"
5923
+ }
5924
+ },
5925
+ "required": [
5926
+ "status",
5927
+ "groupId",
5928
+ "calendarId",
5929
+ "eventTitle",
5930
+ "location",
5931
+ "instanceName"
5932
+ ],
5933
+ "additionalProperties": false
5934
+ }
5935
+ ```
5936
+
5739
5937
  ### vrchat_invite
5740
5938
  Invite yourself or one/many users to an instance. Users may be usr_ ids or exact display names. Destination is here=true, a full location like "wrld_:instance", or worldId+instanceId. A bare instanceId is not accepted: VRChat needs the worldId and rejects the stripped form. (write)
5741
5939
 
@@ -9418,7 +9616,11 @@ Generated output uses a compact envelope; exact API response content is under `d
9418
9616
  - `getCSS` via `vrchat_read` (GET /css/app.css) - Read VRChat API: Download CSS.
9419
9617
  - `getCurrentOnlineUsers` via `vrchat_read` (GET /visits) - Read VRChat API: Current Online Users.
9420
9618
  - `getCurrentSubscriptions` via `vrchat_read` (GET /auth/user/subscription) - Read VRChat API: Get Current Subscriptions.
9619
+ - `getEarningsMetrics` via `vrchat_read` (GET /economy/metrics/earnings) - Read VRChat API: Get Earnings Metrics.
9421
9620
  - `getEconomyAccount` via `vrchat_read` (GET /user/{userId}/economy/account) - Read VRChat API: Get Economy Account.
9621
+ - `getEconomyBalances` via `vrchat_read` (GET /user/{userId}/economy/balances) - Read VRChat API: Get Economy Balances.
9622
+ - `getEconomyPayouts` via `vrchat_read` (GET /user/{userId}/economy/payouts/list) - Read VRChat API: Get Economy Payouts.
9623
+ - `getEconomyPayoutStatus` via `vrchat_read` (GET /user/{userId}/economy/payouts/status) - Read VRChat API: Get Economy Payout Status.
9422
9624
  - `getFeaturedCalendarEvents` via `vrchat_read` (GET /calendar/featured) - Read VRChat API: List featured calendar events.
9423
9625
  - `getFile` via `vrchat_read` (GET /file/{fileId}) - Read VRChat API: Show File.
9424
9626
  - `getFileAnalysis` via `vrchat_read` (GET /analysis/{fileId}/{versionId}) - Read VRChat API: Get File Version Analysis.
@@ -9469,16 +9671,22 @@ Generated output uses a compact envelope; exact API response content is under `d
9469
9671
  - `getPermission` via `vrchat_read` (GET /permissions/{permissionId}) - Read VRChat API: Get Permission.
9470
9672
  - `getPlayerModerations` via `vrchat_read` (GET /auth/user/playermoderations) - Read VRChat API: Search Player Moderations.
9471
9673
  - `getPrint` via `vrchat_read` (GET /prints/{printId}) - Read VRChat API: Get Print.
9674
+ - `getPrivateProfile` via `vrchat_read` (GET /profile/{userId}/private) - Read VRChat API: Get Private Profile.
9472
9675
  - `getProductListing` via `vrchat_read` (GET /listing/{productId}) - Read VRChat API: Get Product Listing.
9473
9676
  - `getProductListingAlternate` via `vrchat_read` (GET /products/{productId}) - Read VRChat API: Get Product Listing (alternate).
9474
9677
  - `getProductListings` via `vrchat_read` (GET /user/{userId}/listings) - Read VRChat API: Get User Product Listings.
9678
+ - `getProductPurchase` via `vrchat_read` (GET /economy/purchases/{productPurchaseId}) - Read VRChat API: Get Product Purchase.
9679
+ - `getProductPurchaseHistory` via `vrchat_read` (GET /user/{userId}/economy/transactions) - Read VRChat API: Get Product Purchase History.
9475
9680
  - `getProductPurchases` via `vrchat_read` (GET /economy/purchases) - Read VRChat API: Get Product Purchases.
9681
+ - `getProductPurchaseStacks` via `vrchat_read` (GET /economy/purchases/{productPurchaseId}/stacks) - Read VRChat API: Get Product Purchase Stacks.
9476
9682
  - `getProp` via `vrchat_read` (GET /props/{propId}) - Read VRChat API: Get Prop.
9477
9683
  - `getPropPublishStatus` via `vrchat_read` (GET /props/{propId}/publish) - Read VRChat API: Get Prop Publish Status.
9684
+ - `getPublicProfile` via `vrchat_read` (GET /profile/{userId}) - Read VRChat API: Get Public Profile.
9478
9685
  - `getRecentLocations` via `vrchat_read` (GET /instances/recent) - Read VRChat API: List Recent Locations.
9479
9686
  - `getRecentSubscription` via `vrchat_read` (GET /user/subscription/recent) - Read VRChat API: Get Recent Subscription.
9480
9687
  - `getRecentWorlds` via `vrchat_read` (GET /worlds/recent) - Read VRChat API: List Recent Worlds.
9481
9688
  - `getRecoveryCodes` via `vrchat_read` (GET /auth/user/twofactorauth/otp) - Read VRChat API: Get 2FA Recovery codes.
9689
+ - `getSellerEligibility` via `vrchat_read` (GET /economy/seller/eligibility) - Read VRChat API: Get Seller Eligibility.
9482
9690
  - `getShortName` via `vrchat_read` (GET /instances/{worldId}:{instanceId}/shortName) - Read VRChat API: Get Instance Short Name.
9483
9691
  - `getSteamTransaction` via `vrchat_read` (GET /Steam/transactions/{transactionId}) - Read VRChat API: Get Steam Transaction.
9484
9692
  - `getSteamTransactions` via `vrchat_read` (GET /Steam/transactions) - Read VRChat API: List Steam Transactions.
@@ -9489,7 +9697,7 @@ Generated output uses a compact envelope; exact API response content is under `d
9489
9697
  - `getTiliaTos` via `vrchat_read` (GET /user/{userId}/tilia/tos) - Read VRChat API: Get Tilia TOS Agreement Status.
9490
9698
  - `getTokenBundles` via `vrchat_read` (GET /tokenBundles) - Read VRChat API: List Token Bundles.
9491
9699
  - `getUserAllGroupPermissions` via `vrchat_read` (GET /users/{userId}/groups/permissions) - Read VRChat API: Get user's permissions for all joined groups.
9492
- - `getUserCreditsEligible` via `vrchat_read` (GET /users/{userId}/credits/eligible) - Read VRChat API: Get User Credits Eligiblity.
9700
+ - `getUserCreditsEligible` via `vrchat_read` (GET /users/{userId}/credits/eligible) - Read VRChat API: Get User Credits Eligibility.
9493
9701
  - `getUserFeedback` via `vrchat_read` (GET /users/{userId}/feedback) - Read VRChat API: Get User Feedback.
9494
9702
  - `getUserGroupInstances` via `vrchat_read` (GET /users/{userId}/instances/groups) - Read VRChat API: Get User Group Instances.
9495
9703
  - `getUserGroupInstancesForGroup` via `vrchat_read` (GET /users/{userId}/instances/groups/{groupId}) - Read VRChat API: Get User Group Instances for a specific Group.
@@ -9499,11 +9707,15 @@ Generated output uses a compact envelope; exact API response content is under `d
9499
9707
  - `getUserNotes` via `vrchat_read` (GET /userNotes) - Read VRChat API: Get User Notes.
9500
9708
  - `getUserPrints` via `vrchat_read` (GET /prints/user/{userId}) - Read VRChat API: Get Own Prints.
9501
9709
  - `getUserRepresentedGroup` via `vrchat_read` (GET /users/{userId}/groups/represented) - Read VRChat API: Get user's current represented group.
9502
- - `getUserSubscriptionEligible` via `vrchat_read` (GET /users/{userId}/subscription/eligible) - Read VRChat API: Get User Subscription Eligiblity.
9710
+ - `getUserSubscriptionEligible` via `vrchat_read` (GET /users/{userId}/subscription/eligible) - Read VRChat API: Get User Subscription Eligibility.
9711
+ - `getUserTiliaKyc` via `vrchat_read` (GET /user/{userId}/tilia/kyc) - Read VRChat API: Get User Tilia KYC.
9712
+ - `getUserTutorialStatus` via `vrchat_read` (GET /users/{userId}/tutorial) - Read VRChat API: Get User Tutorial Status.
9503
9713
  - `getWorldInstance` via `vrchat_read` (GET /worlds/{worldId}/{instanceId}) - Read VRChat API: Get World Instance.
9504
9714
  - `getWorldMetadata` via `vrchat_read` (GET /worlds/{worldId}/metadata) - Read VRChat API: Get World Metadata.
9505
9715
  - `getWorldPublishStatus` via `vrchat_read` (GET /worlds/{worldId}/publish) - Read VRChat API: Get World Publish Status.
9506
9716
  - `listProps` via `vrchat_read` (GET /props) - Read VRChat API: List Props.
9717
+ - `listStores` via `vrchat_read` (GET /economy/stores) - Read VRChat API: List Stores.
9718
+ - `listUserProducts` via `vrchat_read` (GET /user/{userId}/products) - Read VRChat API: List User Products.
9507
9719
  - `searchAvatars` via `vrchat_read` (GET /avatars) - Read VRChat API: Search Avatars.
9508
9720
  - `searchGroupMembers` via `vrchat_read` (GET /groups/{groupId}/members/search) - Read VRChat API: Search Group Members.
9509
9721
  - `searchUsers` via `vrchat_read` (GET /users) - Read VRChat API: Search All Users.
@@ -9583,6 +9795,7 @@ Generated output uses a compact envelope; exact API response content is under `d
9583
9795
  - `acknowledgeNotificationV2` via `vrchat_write` (POST /notifications/{notificationId}/see) - Write VRChat API: Acknowledge NotificationV2.
9584
9796
  - `addGroupGalleryImage` via `vrchat_write` (POST /groups/{groupId}/galleries/{groupGalleryId}/images) - Write VRChat API: Add Group Gallery Image.
9585
9797
  - `addTags` via `vrchat_write` (POST /users/{userId}/addTags) - Write VRChat API: Add User Tags.
9798
+ - `addWorldTags` via `vrchat_write` (POST /worlds/{worldId}/addTags) - Write VRChat API: Add World Tags.
9586
9799
  - `banGroupMember` via `vrchat_write` (POST /groups/{groupId}/bans) - Write VRChat API: Ban Group Member.
9587
9800
  - `blockGroup` via `vrchat_write` (POST /groups/{groupId}/block) - Write VRChat API: Block Group.
9588
9801
  - `clearNotifications` via `vrchat_write` (PUT /auth/user/notifications/clear) - Write VRChat API: Clear All Notifications.
@@ -9592,6 +9805,8 @@ Generated output uses a compact envelope; exact API response content is under `d
9592
9805
  - `createGlobalAvatarModeration` via `vrchat_write` (POST /auth/user/avatarmoderations) - Write VRChat API: Create Global Avatar Moderation.
9593
9806
  - `createGroup` via `vrchat_write` (POST /groups) - Write VRChat API: Create Group.
9594
9807
  - `createGroupGallery` via `vrchat_write` (POST /groups/{groupId}/galleries) - Write VRChat API: Create Group Gallery.
9808
+ - `createProduct` via `vrchat_write` (POST /products) - Write VRChat API: Create Product.
9809
+ - `createProductListingDirect` via `vrchat_write` (POST /listing) - Write VRChat API: Create Product Listing.
9595
9810
  - `createProp` via `vrchat_write` (POST /props) - Write VRChat API: Create Prop.
9596
9811
  - `declineGroupInvite` via `vrchat_write` (PUT /groups/{groupId}/invites) - Write VRChat API: Decline Invite from Group.
9597
9812
  - `deleteNotification` via `vrchat_write` (PUT /auth/user/notifications/{notificationId}/hide) - Write VRChat API: Delete Notification.
@@ -9608,8 +9823,10 @@ Generated output uses a compact envelope; exact API response content is under `d
9608
9823
  - `moderateUser` via `vrchat_write` (POST /auth/user/playermoderations) - Write VRChat API: Moderate User.
9609
9824
  - `publishProp` via `vrchat_write` (PUT /props/{propId}/publish) - Write VRChat API: Publish Prop.
9610
9825
  - `purchaseProductListing` via `vrchat_write` (POST /economy/purchase/listing) - Write VRChat API: Purchase Product Listing.
9826
+ - `redeemReward` via `vrchat_write` (POST /reward/redeem) - Write VRChat API: Redeem Reward.
9611
9827
  - `registerUserAccount` via `vrchat_write` (POST /auth/register) - Write VRChat API: Register User Account.
9612
9828
  - `removeTags` via `vrchat_write` (POST /users/{userId}/removeTags) - Write VRChat API: Remove User Tags.
9829
+ - `removeWorldTags` via `vrchat_write` (POST /worlds/{worldId}/removeTags) - Write VRChat API: Remove World Tags.
9613
9830
  - `replyNotificationV2` via `vrchat_write` (POST /notifications/{notificationId}/reply) - Write VRChat API: Reply NotificationV2.
9614
9831
  - `requestInvite` via `vrchat_write` (POST /requestInvite/{userId}) - Write VRChat API: Request Invite.
9615
9832
  - `resendEmailConfirmation` via `vrchat_write` (POST /auth/user/resendEmail) - Write VRChat API: Resend Email Confirmation.
@@ -9623,6 +9840,7 @@ Generated output uses a compact envelope; exact API response content is under `d
9623
9840
  - `shareInventoryItemDirect` via `vrchat_write` (POST /inventory/cloning/direct) - Write VRChat API: Share Inventory Item Direct.
9624
9841
  - `startFileDataUpload` via `vrchat_write` (PUT /file/{fileId}/{versionId}/{fileType}/start) - Write VRChat API: Start FileData Upload.
9625
9842
  - `submitContentAgreement` via `vrchat_write` (POST /agreement) - Write VRChat API: Submit Content Agreement.
9843
+ - `submitJamContent` via `vrchat_write` (POST /jams/{jamId}/submissions) - Write VRChat API: Submit Jam Content.
9626
9844
  - `submitModerationReport` via `vrchat_write` (POST /moderationReports) - Write VRChat API: Submit Moderation Report.
9627
9845
  - `unmoderateUser` via `vrchat_write` (PUT /auth/user/unplayermoderate) - Write VRChat API: Unmoderate User.
9628
9846
  - `updateAssetReviewNotes` via `vrchat_write` (PUT /assetReview/{assetReviewId}/notes) - Write VRChat API: Update Asset Review Notes.
@@ -9634,12 +9852,12 @@ Generated output uses a compact envelope; exact API response content is under `d
9634
9852
  - `updateGroupRepresentation` via `vrchat_write` (PUT /groups/{groupId}/representation) - Write VRChat API: Update Group Representation.
9635
9853
  - `updateInviteMessage` via `vrchat_write` (PUT /message/{userId}/{messageType}/{slot}) - Write VRChat API: Update Invite Message.
9636
9854
  - `updateOwnInventoryItem` via `vrchat_write` (PUT /inventory/{inventoryItemId}) - Write VRChat API: Update Own Inventory Item.
9855
+ - `updateProduct` via `vrchat_write` (PUT /products/{productId}) - Write VRChat API: Update Product.
9856
+ - `updateProductListingDirect` via `vrchat_write` (PUT /listing/{productId}) - Write VRChat API: Update Product Listing.
9637
9857
  - `updateProp` via `vrchat_write` (PUT /props/{propId}) - Write VRChat API: Update Prop.
9638
9858
  - `updateTiliaTos` via `vrchat_write` (PUT /user/{userId}/tilia/tos) - Write VRChat API: Update Tilia TOS Agreement Status.
9639
9859
  - `updateUserNote` via `vrchat_write` (POST /userNotes) - Write VRChat API: Update User Note.
9640
- - `uploadGalleryImage` via `vrchat_write` (POST /gallery) - Write VRChat API: Upload gallery image.
9641
9860
  - `uploadIcon` via `vrchat_write` (POST /icon) - Write VRChat API: Upload icon.
9642
- - `uploadImage` via `vrchat_write` (POST /file/image) - Write VRChat API: Upload gallery image, icon, emoji or sticker.
9643
9861
  - `uploadPrint` via `vrchat_write` (POST /prints) - Write VRChat API: Upload Print.
9644
9862
  - `verify2FA` via `vrchat_write` (POST /auth/twofactorauth/totp/verify) - Write VRChat API: Verify 2FA code.
9645
9863
  - `verify2FAEmailCode` via `vrchat_write` (POST /auth/twofactorauth/emailotp/verify) - Write VRChat API: Verify 2FA email code.
@@ -9730,12 +9948,16 @@ Generated output uses a compact envelope; exact API response content is under `d
9730
9948
  - `deleteGroupGalleryImage` via `vrchat_delete` (DELETE /groups/{groupId}/galleries/{groupGalleryId}/images/{groupGalleryImageId}) - Write VRChat API: Delete Group Gallery Image.
9731
9949
  - `deleteGroupInvite` via `vrchat_delete` (DELETE /groups/{groupId}/invites/{userId}) - Write VRChat API: Delete User Invite.
9732
9950
  - `deleteImpostor` via `vrchat_delete` (DELETE /avatars/{avatarId}/impostor) - Write VRChat API: Delete generated Impostor.
9951
+ - `deleteJamSubmission` via `vrchat_delete` (DELETE /jams/{jamId}/submissions/{jamSubmissionId}) - Write VRChat API: Delete Jam Submission.
9733
9952
  - `deleteModerationReport` via `vrchat_delete` (DELETE /moderationReports/{moderationReportId}) - Write VRChat API: Delete Moderation Report.
9734
9953
  - `deleteNotificationV2` via `vrchat_delete` (DELETE /notifications/{notificationId}) - Write VRChat API: Delete NotificationV2.
9735
9954
  - `deleteOwnInventoryItem` via `vrchat_delete` (DELETE /inventory/{inventoryItemId}) - Write VRChat API: Delete Own Inventory Item.
9736
9955
  - `deletePrint` via `vrchat_delete` (DELETE /prints/{printId}) - Write VRChat API: Delete Print.
9956
+ - `deleteProduct` via `vrchat_delete` (DELETE /products/{productId}) - Write VRChat API: Delete Product.
9957
+ - `deleteProductListingDirect` via `vrchat_delete` (DELETE /listing/{productId}) - Write VRChat API: Delete Product Listing.
9737
9958
  - `deleteProp` via `vrchat_delete` (DELETE /props/{propId}) - Write VRChat API: Delete Prop.
9738
9959
  - `deleteUserPersistence` via `vrchat_delete` (DELETE /users/{userId}/{worldId}/persist) - Write VRChat API: Delete User Persistence.
9960
+ - `deleteWorldPlatform` via `vrchat_delete` (DELETE /worlds/{worldId}/platform/{publishedPlatform}) - Write VRChat API: Delete World Platform.
9739
9961
  - `disable2FA` via `vrchat_delete` (DELETE /auth/twofactorauth) - Write VRChat API: Disable 2FA.
9740
9962
  - `kickGroupMember` via `vrchat_delete` (DELETE /groups/{groupId}/members/{userId}) - Write VRChat API: Kick Group Member.
9741
9963
  - `resetInviteMessage` via `vrchat_delete` (DELETE /message/{userId}/{messageType}/{slot}) - Write VRChat API: Reset Invite Message.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@basicbit/vrchat-mcp",
3
- "version": "0.1.10",
3
+ "version": "0.1.12",
4
4
  "mcpName": "io.github.BASIC-BIT/vrchat-mcp",
5
5
  "description": "MCP server for VRChat friends, worlds, groups, events, notifications, and VRCX history.",
6
6
  "type": "module",
@@ -111,6 +111,7 @@
111
111
  "@modelcontextprotocol/sdk": "^1.29.0",
112
112
  "better-sqlite3": "^13.0.1",
113
113
  "express": "^5.2.1",
114
+ "fast-png": "^8.0.0",
114
115
  "keytar": "^7.9.0",
115
116
  "tough-cookie": "^6.0.0",
116
117
  "undici": "^8.4.0",
package/server.json CHANGED
@@ -8,12 +8,12 @@
8
8
  "source": "github",
9
9
  "id": "1122295987"
10
10
  },
11
- "version": "0.1.10",
11
+ "version": "0.1.12",
12
12
  "packages": [
13
13
  {
14
14
  "registryType": "npm",
15
15
  "identifier": "@basicbit/vrchat-mcp",
16
- "version": "0.1.10",
16
+ "version": "0.1.12",
17
17
  "transport": {
18
18
  "type": "stdio"
19
19
  },
@@ -64,6 +64,13 @@
64
64
  "default": "true",
65
65
  "isRequired": false,
66
66
  "isSecret": false
67
+ },
68
+ {
69
+ "name": "VRCHAT_MCP_UPLOAD_ROOTS",
70
+ "description": "Absolute directories from which local PNG uploads may be read. Separate multiple roots with the platform path delimiter.",
71
+ "format": "string",
72
+ "isRequired": false,
73
+ "isSecret": false
67
74
  }
68
75
  ]
69
76
  }