bots.st/r3js-org
R3
Manage 3D app assets and components
3569 ms
answered our call
- State
- Answered
- Protocol
- MCP 2025-06-18
- Tools listed
- 78
- Answered
- 3 of the last 3 calls
How to reach it
- MCP, HTTP
https://mcp.r3js.org/mcp
What it can do
| Tool | What it says it does |
|---|---|
r3_asset_delete | Delete one of the account's images, models, audio files, Blender models (kind blender: a whole uploaded .blend with every version; its meshes in use stay) or texture sets (kind textureSet: the set and its maps, r3_texture_create made it) — the same reference-guarded delete as the R3 app. With… |
r3_asset_share | Show one of the user's OWN images, audio files or texture sets in the R3 Community, or hide it again: the same switch as 'Show in Community' in the R3 app. public: true makes it visible to every R3 member, who can then find it in the Community lists and use it in their own projects; public: false… |
r3_assets_unused | The account's images, models and audio files that nothing uses — no project, no entity template, no other user's project — with each one's size and date, biggest first, and the total. The same report as the R3 app's Settings → Storage, by the same rules the deletes use. A model lists the images… |
r3_audio_list | List the audio files this R3 account owns, with the URL to use for each one. That URL is exactly what R3ComponentAudio.url takes, so this is how you find a sound the account already has — a footstep, a drum hit, a music bed — and then point an Audio component at it with r3_component_set. Search… |
r3_blender_copies | Does this project hold the same Blender model more than once (two whole imports side by side)? Answers "N copies of <model>: … Keep one?" with each copy (its Entity, entityRef, part count) and its delete plan. It changes nothing: which copy stays is the user's choice, and the other is removed with… |
r3_blender_download | Get a .blend of one of the user's OWN Blender models (from r3_blender_list) to open in Blender: the current version, or the version fileId names. Answers a one-time download ticket (5 minutes) and the download endpoint (URL, method, Authorization header); the response body is the file. When the… |
r3_blender_draft_push | While you build a model in Blender for the user, push an APPLIED copy of your working .blend after each step (body done, wheels done, materials done): the user's Blender page shows it as a 3D preview they can orbit. A draft is not a saved version: one draft per user, the newest wins, kept 24… |
r3_blender_import | Add a Blender model the account has uploaded (its current version) to an existing R3 project — the whole model, or only the meshes you name. Every Blender mesh object becomes an R3 Mesh keeping its own position, rotation, scale and origin, with its geometry, materials and textures wired up… |
r3_blender_list | List the Blender models this R3 account has uploaded — one per .blend file name, the current version of each — with what it will produce: how many Blender objects land in the scene, how many meshes and materials, its screenshot, and any PENDING update (a re-upload that changes meshes the user's… |
r3_blender_update | A re-uploaded Blender model is always its latest version; the user's projects keep the meshes they have until asked. This tool asks and answers that one question: choice update_projects without reportId shows which projects and entity templates use an older version (or an earlier import of the… |
r3_blender_upload | Save a .blend you made or changed (in Blender, through a Blender MCP) as the newest version of one of the user's Blender models: the model is named by the file name, so "monster-truck.blend" adds a version to the user's monster-truck model, or makes the model. A tool argument cannot carry the… |
r3_bug_report | Send R3 a bug report about R3 ITSELF (the engine, the editor, these tools), in the user's name and naming you (your agent key or app connection). It becomes one of the user's support issues, which only the user and R3's team see. Use it when R3 does something its documentation says it should not… |
r3_bug_reports_mine | The user's own support issues — bug reports and questions they or their agents (agent keys and app connections) sent R3 — newest first, with status, date, the project and whether an agent filed it (and which), each with its link. It shows whether a fault is already reported, before r3_bug_report… |
r3_code_read | Read back what a Code component actually contains — its full JavaScript source and the event it runs on. r3_code_write reports what it wrote; this reports what is there. Use it before replacing a script, so an edit builds on the real source instead of overwriting it blind, and after a write whose… |
r3_code_write | Add or replace a Code component: JavaScript that makes a project DO something. It runs on ONE event you choose (`event`): RENDER_BEFORE (default) every frame, for movement (held keys: this.keysPressed); KEY_DOWN / KEY_UP once per press / release; MOUSE_CLICK, SWIPE, MUSIC_BEAT, PHYSICS_COLLISION… |
r3_component_add | Add one component of ANY registered type — a collider, a rigid body, a joint, a light, a material, a geometry … — to a saved R3 project, with its values and references set before it is created. Kept at once in the project's live copy: every R3 tab with the project open shows it now, no editor… |
r3_component_bounds | The size and place of meshes and imported models, in R3 units (metres): the world-space box around each (min, max, size, centre), the mesh's scale, rotation and parents applied. Name a Mesh, or the root Empty of a Blender model (r3_blender_import makes one, named "<model>_root"), and the box… |
r3_component_read | Read back what components actually hold — a material's colour and roughness, a mesh's position, which material it uses. r3_project_load gives you the names; this gives you the values behind them. Pass SEVERAL entityRefs in one call — telling six similarly-named materials apart is the case this… |
r3_component_set | Set one or more properties on a component that already exists in a project — a material's roughness, a mesh's position, which material a mesh uses. Kept at once in the project's live copy: every R3 tab with the project open shows it now, no editor needed and nothing to save (r3_editor_set is the… |
r3_docs_list | Every R3 document this server can give you, IN READING ORDER, with what each one covers and how big it is. R3's documentation begins here: no model has R3 in its pretraining, and code written from tool descriptions alone saves cleanly and then silently does nothing. r3_docs_read returns one. |
r3_docs_read | Return one R3 document in full, or one API symbol. Paths come from r3_docs_list: r3_docs_read("CODE_PATTERNS.md") how a Code component is written (reading order 1) r3_docs_read("PHYSICS_USAGE.md") colliders, rigid bodies, joints r3_docs_read("HOWTO_PHYSICS.md") one… |
r3_editor_add_component | The same tool as r3_component_add (this is its older name): add one component of ANY registered type — a collider, a rigid body, a joint, a light, a material, a geometry … — with its values and references set before it is created, kept at once in the project's live copy: every R3 tab with the… |
r3_editor_capture | Capture the canvas of a project open in the user's R3 editor — the scene as it looks NOW, running physics included — and LOOK at it: the answer is an image. Call it after a visual change (r3_editor_set, r3_editor_create, r3_editor_code …) to check what you built, and after r3_editor_run to see it… |
r3_editor_code | The same tool as r3_code_write (this is its older name): replace a Code component's code, kept at once in the project's live copy: every R3 tab with the project open runs the new code now, no editor needed and nothing to save. Name it with componentId or entityRef and pass baseVersion, the… |
r3_editor_create | The same tool as r3_factory_run (this is its older name): add an object — a cube, sphere, light, physics body … — kept at once in the project's live copy: every R3 tab with the project open shows it now, no editor needed and nothing to save. r3_factory_list lists the factories and their params. |
r3_editor_delete | Delete components from the project the user has OPEN in their R3 editor, exactly as the editor's delete dialog asks it — in TWO calls. First call WITHOUT `confirm`: it returns the plan and changes nothing — the selected components, what only they use (their geometry, material, colliders …), an… |
r3_editor_inspect | Read what components hold RIGHT NOW in an R3 tab that has the project open: runtime values included — a moving body's position while the project runs. Use it to debug live behaviour. It needs a tab with the project open (r3_editor_open opens one). r3_component_read reads the kept values without a… |
r3_editor_open | Open a project in the R3 editor the user has open in their browser (their most recently used R3 tab) and focus it, so they see it. A project already open there is just focused (never reloaded). It is how the user gets to see the project you are working on, and how a tab gets the project… |
r3_editor_run | Press the Run buttons of the user's open R3 editor: start physics, code, audio and music (all of them, or the ones named in `systems`), exactly as the user's own click does — a paused simulation resumes. Use it to TEST what you built: run it, then look with r3_editor_capture and read live values… |
r3_editor_set | The same tool as r3_component_set (this is its older name): change properties of a component, kept at once in the project's live copy: every R3 tab with the project open shows it now, no editor needed and nothing to save. Name the component with componentId or entityRef. `values` take… |
r3_editor_set_preview_image | Use what the project's camera shows NOW, in the user's open R3 editor, as the project's share image: the picture its live page, link previews (social cards) and the showcase show, used when the project is next published (r3_publish_live, or Publish update in the editor). The editor waits until the… |
r3_editor_stop | Press the Stop buttons of the user's open R3 editor: stop physics, code, audio and music (all of them, or the ones named in `systems`), exactly as the user's own click does. Stopping physics puts every body back where it was placed. It stops every project open in that tab. Changes nothing saved… |
r3_editor_undo | Undo the last change YOU (this agent key or app connection) made to a project: everything one of your tool calls changed is undone together, and the user sees it at once in any R3 tab that has the project open. Use it when your own change was wrong or the user asks you to take it back. It never… |
r3_entity_import | Put a copy of an entity template (this account's, or a public one) into a project: every member with fresh ids, its positions and colours as saved, bound to a new Entity that starts DORMANT (started: false: its code, sounds and physics wait until r3_component_set sets started: true). The copy… |
r3_entity_list | List this R3 account's entity templates: reusable bundles (a ship, a lamp post) saved from an Entity in a project, each with its current version and member count. community: true lists everyone's public templates instead. r3_entity_read shows one template's members and versions; r3_entity_import… |
r3_entity_read | Read one entity template (this account's, or a public one): its current version, the members of the version read (type, name, entityRef; value components such as positions and colours are counted, they belong to their member), the shared code modules it imports, and its recent versions with their… |
r3_entity_save_template | Save an Entity of a project as an entity template version: its members (the components bound to it, with the positions, rotations and colours they hold). Without templateId it updates the template the Entity was imported from (or makes a new one, under the Entity's id); asNew: true always makes a… |
r3_entity_update | Bring the copies of an entity template in this account's projects up to its newest version. Without reportId it only reports, per project: what the template changed that the project did not (taken), what the project changed itself (kept, e.g. a moved ship keeps its position), scripts changed on… |
r3_factory_list | List the R3 factories available to r3_factory_run, with each one's options, types and defaults. A factory builds a complete, correctly-wired object — a cube is a mesh plus geometry plus material plus colour, already connected. Call this before r3_factory_run if you are unsure of a factory name or… |
r3_factory_run | Add an object to an existing R3 project — a cube, sphere, terrain, lighting, a physics body, and so on. Each factory builds a complete, correctly-wired object (mesh + geometry + material + colour, already connected), so you never assemble components by hand. Kept at once in the project's live… |
r3_help_write | Set the instructions that ship WITH a project — controls, what to press, what it does. R3 renders them in a modal behind a floating "?" button and the H key, in the editor and in the live portal alike, so whoever opens your preview link can read them. This is the built-in surface for that, so a… |
r3_image_create | Store a small image YOU generated in this R3 account's image library and get back the URL for it — the value R3ComponentTexture.url takes. This is how you make a checkerboard, a gradient, a test grid or a noise tile and then actually put it on something with r3_component_set. Pass the image as a… |
r3_image_list | List the images this R3 account owns, with the URL to use for each one. That URL is exactly what R3ComponentTexture.url takes, so this is how you find the account's own artwork — a wood grain, a logo, a skybox — and then point a texture at it with r3_component_set. Search by name rather than… |
r3_module_list | List this R3 account's shared code modules: named pieces of script stored once (e.g. "ship-core") that any Code component in any project imports with `const core = this.import('ship-core')`. Each with its latest version. r3_module_read shows one's code; r3_module_write creates or changes one… |
r3_module_pin | Choose which version of a shared code module ONE project runs: version n pins it (the project keeps that version when the module changes), version null follows the latest again. moduleId names someone else's PUBLIC module (it is then the project's module of that name). The pin lives in the… |
r3_module_read | Read one shared code module: its code, its version (the baseVersion r3_module_write needs), the latest version, its notes, and how many of this account's projects use it. Your own module by name; someone else's PUBLIC module by moduleId. version reads an older version. A long module is read in… |
r3_module_usage | Which of this account's projects (and entity templates) import one of your code modules: per project the scripts that import it, the version it runs, and whether that version is pinned or follows the latest. Projects of other accounts that import a public module of yours are only counted. |
r3_module_write | Create a shared code module (baseVersion 0) or write its next version (baseVersion = the version you read). The code is a FUNCTION BODY that returns the exports, e.g. `return { createShip(host, config) { … return {start, update, dispose, api}; } };`. It runs once per run with `this` undefined (it… |
r3_preview_create | Create a shareable preview link for a saved R3 project, so a person can open it in a browser and see it running. The link is valid for 7 days and does NOT make the project public; making a new one is free. It is how the user sees what you built. Takes the projectId returned by r3_project_create… |
r3_preview_remove | Remove the preview link of an R3 project: every preview link to it stops working at once (teammates' too). Only when the user asked for it, or when the preview link is what blocks an r3_project_delete the user asked for: a preview link is temporary, so it may then be removed without a separate… |
r3_project_changes | What OTHER people changed in a project — the user in any R3 tab, their other agents — oldest first, grouped per author and per thing: properties set, code and help updated (with versions), components added, deleted or restored, the project renamed. Your own changes are never listed. Every answer… |
r3_project_create | Create a new R3 project and save it to the user's account. Produces a complete, openable project — scene, world, camera, renderer, lighting, audio listener, music transport and OrbitControls (anyone who opens it can turn and zoom the view) — ready for components to be added. Pass `template` for a… |
r3_project_delete | Permanently delete an R3 project. With the project:delete:created right (on by default), only a project YOU created (this agent key or app connection) — use it to clean up your own abandoned attempts; the user's own projects and other agents' are refused. With project:delete:owned, any project the… |
r3_project_list | List the projects this R3 account can work on — its own and its teams' — last updated first, with the projectId every other project tool takes. It is how a project the user names ("my slot machine") rather than giving an id is found: search for it; its projectId is what r3_project_load… |
r3_project_load | List the components in an existing R3 project — what it contains and, for each one, its entityRef: the name code addresses it by (`this['mesh_cube_1']`). Read this before writing any code for a project, and after any tool call whose outcome was reported as unknown, to see what actually landed… |
r3_project_remix | Remix a project: copy the published release of a project into a NEW private project in this account. The source is a Community or live project whose author allowed remixes (for now R3's own starters and showcase projects), or one of the account's own. The files it uses are copied into the… |
r3_project_rename | Rename a project: the name shown in the user's project list, the editor's title and the live page. The same change as clicking the title in the R3 editor, kept at once in the project's live copy (every open R3 tab shows it). The public address does not change: a preview or live link keeps… |
r3_publish_live | Publish an R3 project live: makes a RELEASE (a frozen copy) of the project as it is now and makes it the one its public live URL shows, for anyone. Only when the user asked for it. Changing the project does NOT change the live site; r3_publish_live does: on a project that is already live this is a… |
r3_publish_settings_read | Read the publish settings of one of the user's own R3 projects in this environment — what the app's Deploy → Settings shows: Works on (keyboard / touch / both / not tested), the SEO title and description that search engines and link previews show, how the live page starts (Start button, first… |
r3_publish_settings_set | Change publish settings of one of the user's own R3 projects in this environment — the app's Deploy → Settings. Only the settings named change (the rest stay as they are). Only when the user asked for it, or approved the text: these settings shape the PUBLIC live page — its title and description… |
And 18 more tools.
In its maker's words
Build 3D web apps: physics, audio, music, Blender import. Live edits, undo, versions, publishing.
- Website
- r3js.org
- Publisher
- r3js.org
- Listed from
- the official MCP Registry as
org.r3js/r3 - Version
- 3.160.0, updated 7 Nov 2026
- Kinds of work
- Images, video and audio, Code and developer tools, Browser and automation
The domain it lives on
- r3js.org
- registered 26 Nov 2018 (7 years ago), at Vautron Rechenzentrum AG
From our own crawl of domain names: registry records and the home page as our crawler last saw it.
Every call we made
| When | What happened | Time |
|---|---|---|
| Answered | 3569 ms | |
| Answered | 1973 ms | |
| Answered | 1039 ms |
Next door
Is this your bot? Claim its address to add a verified badge and keep the listing current.