# three.ws Loom

MCP server for browsing, inspecting, and publishing community 3D creations in the three.ws public gallery.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 249
- Author: nirholas
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/nirholas/three.ws/tree/HEAD/packages/loom-mcp
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/threews-loom

## What it does

This server connects coding agents directly to the public three.ws 3D repository. The `get_loom_feed` tool retrieves recent creations using cursor pagination, while `get_creation` fetches individual asset metadata via UUID. Returned entries supply direct GLB download paths, social preview cards, and drop-in iframe markup for inline previews.

Sharing generated assets relies on `submit_creation`. Submissions require neither an account nor an authorization key. However, the remote endpoint enforces an IP limit of roughly 20 submissions per hour. The submitted `glbUrl` must use HTTPS and sit on allowed hosts like `three.ws`, `r2.dev`, `cloudflarestorage.com`, `replicate.delivery`, or `githubusercontent.com`.

The server requires Node.js 20 or higher. Without network access to `https://three.ws`, every query will fail.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `THREE_WS_BASE`, `THREE_WS_TIMEOUT_MS` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env THREE_WS_BASE=<THREE_WS_BASE> --env THREE_WS_TIMEOUT_MS=<THREE_WS_TIMEOUT_MS> --transport stdio loom-mcp -- npx -y @three-ws/loom-mcp
```
Replace <…> with your own values

### Codex

**Platform CLI**
```bash
codex mcp add loom-mcp --env THREE_WS_BASE=<THREE_WS_BASE> --env THREE_WS_TIMEOUT_MS=<THREE_WS_TIMEOUT_MS> -- npx -y @three-ws/loom-mcp
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "loom-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "@three-ws/loom-mcp"
            ],
            "env": {
                "THREE_WS_BASE": "<THREE_WS_BASE>",
                "THREE_WS_TIMEOUT_MS": "<THREE_WS_TIMEOUT_MS>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "loom-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@three-ws/loom-mcp"
            ],
            "env": {
                "THREE_WS_BASE": "<THREE_WS_BASE>",
                "THREE_WS_TIMEOUT_MS": "<THREE_WS_TIMEOUT_MS>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e THREE_WS_BASE=<THREE_WS_BASE> -e THREE_WS_TIMEOUT_MS=<THREE_WS_TIMEOUT_MS> loom-mcp npx -y @three-ws/loom-mcp
```
Replace <…> with your own values

## When to use it
- inspect recent community 3D assets in GLB format
- retrieve ready-to-use iframe markup for 3D model previews
- fetch complete metadata and viewer links for a specific model UUID
- publish generated GLB models directly to the three.ws public feed

## Example prompts
- Show me the newest 10 3D models from the three.ws feed.
- Fetch details and an iframe snippet for model id "f295398e-2d25-410d-a82f-c8725295a1b3".
- Submit "https://three.ws/accessories/hat-cowboy.glb" to three.ws with prompt "low-poly cowboy hat" and author "nova".

## Similar
- [Pascal 3D Editor](https://affpapa.org/en/nevibecode/mcp/pascal-3d-editor.md) — MCP server · ★ 25085
- [Unity-MCP](https://affpapa.org/en/nevibecode/mcp/unity-mcp.md) — MCP server · ★ 4523
- [mcp](https://affpapa.org/en/nevibecode/mcp/sceneview-mcp.md) — MCP server · ★ 1348
- [Gearboy MCP Server](https://affpapa.org/en/nevibecode/mcp/gearboy-mcp-server.md) — MCP server · ★ 1219
- [ChiR24-unreal_mcp_server](https://affpapa.org/en/nevibecode/mcp/chir24-unreal-mcp-server.md) — MCP server · ★ 975
- [Nova3D](https://affpapa.org/en/nevibecode/mcp/nova3d.md) — MCP server · ★ 733

From the same set: [nirholas/three.ws](https://affpapa.org/en/nevibecode/by/nirholas/three.ws.md) — 29 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
