About Babylonjs MCP
Babylonjs MCP is an MCP server published by davidvanstory in the Developer Tools category: clone of the babylon-mcp project - updated for Windows.
The repository has 9 stars and 4 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/davidvanstory/babylonjs-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Babylonjs MCP
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
Babylon.js MCP Server
An MCP (Model Context Protocol) server that allows AI assistants like Claude to create and manipulate 3D objects in a Babylon.js scene through text commands.
Features
- Create 3D objects (box, sphere, cylinder, cone, torus) with customizable properties
- Delete objects by name
- Select objects for highlighting
- List all objects in the scene
- Real-time WebSocket communication between MCP server and browser
- React and vanilla JavaScript implementations
Architecture
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Claude Desktop │────▶│ MCP Server │────▶│ Browser App │
│ │ │ (stdio + WS) │ │ (Babylon.js) │
└─────────────────┘ └──────────────────┘ └─────────────────┘
Installation
- Clone the repository:
git clone <repository-url>
cd babylonjs-mcpV2
- Install dependencies:
npm install
- Build the project:
npm run build
Usage
1. Start the MCP Server
The MCP server needs to be running to bridge communication between Claude and the browser:
node dist/mcp-stdio-server.js
This will:
- Start the MCP server listening on stdio
- Start a WebSocket server on port 8080
2. Start the Browser Application
In a new terminal, start the development server:
npm run dev
Open http://localhost:3000 in your browser. You should see:
- A 3D canvas with a ground plane
- A command input interface
- A WebSocket connection status indicator
3. Configure Claude Desktop
Add the following to your Claude Desktop configuration:
On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"babylonjs": {
"command": "node",
"args": ["/absolute/path/to/babylonjs-mcpV2/dist/mcp-stdio-server.js"]
}
}
}
Replace /absolute/path/to/babylonjs-mcpV2 with the actual path to your project.
4. Test the Connection
- Restart Claude Desktop
- Make sure the browser app shows "Connected" status
- In Claude, you can now use commands like:
- "Create a red box named myBox"
- "Delete myBox"
- "List all objects"
- "Select myBox"
Available Commands
The MCP server exposes the following tools:
-
create_object: Create a 3D object
shape: box, sphere, cylinder, cone, or torusname: unique identifier for the objectposition: (optional) {x, y, z} coordinatessize: (optional) scale factorcolor: (optional) {r, g, b} values (0-1)
-
delete_object: Remove an object by name
name: identifier of the object to delete
-
select_object: Highlight an object
name: identifier of the object to select
-
list_objects: Get all objects in the scene
Development
Project Structure
src/
├── core/ # Core business logic
│ ├── babylon-scene.ts # 3D scene management
│ ├── command-parser.ts # Text command parsing
│ ├── mcp-server.ts # MCP server implementation
│ ├── websocket-client.ts # WebSocket client for browser
│ └── types.ts # TypeScript types
├── react/ # React components
│ └── BabylonMCP.tsx # Main React component
├── vanilla/ # Vanilla JS implementation
│ └── index.ts # Browser entry point
├── mcp-stdio-server.ts # MCP server executable
└── App.tsx # React demo app
Scripts
npm run dev- Start development servernpm run build- Build everythingnpm run build:server- Build MCP server onlynpm run typecheck- Run TypeScript type checkingnpm run test:simple- Serve vanilla HTML test page
Testing Without Claude
You can test the browser application standalone:
- Start only the dev server:
npm run dev - Open http://localhost:3000
- Use the command input to test locally (WebSocket connection will show as disconnected)
Troubleshooting
WebSocket Connection Issues
- Make sure the MCP server is running (
node dist/mcp-stdio-server.js) - Check that port 8080 is not in use by another application
- Look for errors in the browser console
- Check the MCP server logs in the terminal
Claude Desktop Not Finding the Server
- Ensure the path in
claude_desktop_config.jsonis absolute - Make sure the MCP server file exists at the specified path
- Restart Claude Desktop after configuration changes
- Check Claude Desktop logs for MCP-related errors
Build Errors
- Make sure all dependencies are installed:
npm install - Clear the dist folder and rebuild:
rm -rf dist && npm run build - Check TypeScript errors:
npm run typecheck
License
MIT
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.