{
 "voice": "One card of the book.",
 "agent": {
  "slug": "3dcms",
  "name": "3dCMS",
  "specialty": null,
  "description": "Build a real 3D website by chatting: pages, models and text in space, published to a live URL.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-10-29T23:09:44.922Z",
  "card": "/agent/3dcms",
  "url": "https://allagents.app/agent/3dcms",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://3dcms.info/mcp",
   "site": "https://3dcms.info/"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://3dcms.info/",
   "hire": null
  },
  "bubble": "closed",
  "score": 56,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-10-30",
   "total": 13,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "list_scenes",
     "description": "Use this first when the user mentions their 3dCMS scenes, a site they built with 3dCMS, or wants to edit, publish or check something they made. Lists the 3D…"
    },
    {
     "name": "probe_lighting",
     "description": "For one world point, the contribution of EVERY light in the scene, computed from the saved scene (no render, instant): each light node in reach with its value…"
    },
    {
     "name": "probe_framing",
     "description": "Read a saved camera (cameraId), or an exact pose, as a visitor sees it at the screen shapes they actually have (16:9 desktop and 9:16 phone by default)…"
    },
    {
     "name": "design_review",
     "description": "A designer's critique of a scene (or one page with pageId) against its BRIEF: what it is for (settings.design, or, when none is declared, what it reads as and…"
    },
    {
     "name": "upload_asset",
     "description": "Put a file into the account's asset library and get back its /assets url to use in apply_ops (a glb on a geometry node as data {primitive:\"imported\"…"
    },
    {
     "name": "compose_surface",
     "description": "Make a flat surface that looks PRINTED ON a real material: a quote on a stretched canvas, a poster, a shop sign, a label, a plaque, a book cover. Start from a…"
    },
    {
     "name": "measure",
     "description": "Measure nodes in a saved scene (analytic, instant, no render). For each node in nodeIds: its world centre, its size along its own axes after every scale above…"
    },
    {
     "name": "get_scene",
     "description": "Read a compact, high-signal summary of one scene: its nodes (id, type, name, parent, position, rotation [euler radians], scale, primitive, real `size` under…"
    },
    {
     "name": "create_scene",
     "description": "Use this when the user wants a 3D website, a walkable portfolio, a product showcase, a gallery, an exhibit, an event page or any interactive space they can…"
    },
    {
     "name": "apply_ops",
     "description": "Use this to build or change a 3D scene: add rooms, text, pictures, links, models, lights, pages. Edit a scene by applying a batch of operations ATOMICALLY…"
    },
    {
     "name": "list_assets",
     "description": "Search the images, models and sounds in the account AND the shared public library (frames, props, texture sets; `scope` mine|shared|all, default all). A row…"
    },
    {
     "name": "get_scene_screenshot",
     "description": "Render the scene server-side (real WebGL, headless) and return screenshot image(s) — your EYES on the scene. Use it after apply_ops batches and after…"
    },
    {
     "name": "publish_scene",
     "description": "Use this when the user wants their scene live as a public link to share, or to update one already live. Publish a saved scene to a PUBLIC, shareable URL so…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://3dcms.info/mcp",
   "answers": true,
   "checked": "2026-10-30T05:58:33.224Z",
   "http": 401,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-10-30T06:42:54.956Z",
     "since": "2026-10-30T06:42:54.956Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-10-30T06:42:54.956Z",
    "since": "2026-10-30T06:42:54.956Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 401,
   "checked": "2026-10-30T05:58:33.224Z"
  }
 }
}