← WebMCP Directory

3dstreet.app

3dstreet.app

live Unverified (seed import) Productivity & Business 28 tools imperative implementation

3DStreet

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 8 · Act 20 · Transact 0 · Score: Not yet scored

Tool inspector

managedStreetCreate

act imperative

Create a new managed street from a cross-section (array of segments, listed from one edge to the other). If the scene has geographic context (setLatLon / Google 3D Tiles), the tiles already supply the surroundings: do NOT add boundary segments, buildings or other land-use models unless the user explicitly asks for synthetic surroundings — the cross-section should normally begin and end with sidewalks. For each segment, omit surface/color/elevation/direction/generated to receive the type's preset — the same content a user gets by picking that type in the sidebar (e.g. bike-lane → green asphalt, bike-arrow stencils, cyclists; bus-lane → BUS ONLY stencil, buses; sidewalk → pedestrians). Call listSegmentPresets to see them. Only supply `generated` to override a preset. Returns entityId, width, presetsApplied, warnings and a readBack of what actually mounted.

Input schema

PropertyTypeRequiredDescription
name string no Name of the street configuration
length string no Length of the street in meters (default: 60)
position string no Position as space-separated x y z values (e.g., "0 0 0")
segments array yes Array of segment definitions for the street
Raw JSON schema
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Name of the street configuration"
    },
    "length": {
      "type": "string",
      "description": "Length of the street in meters (default: 60)"
    },
    "position": {
      "type": "string",
      "description": "Position as space-separated x y z values (e.g., \"0 0 0\")"
    },
    "segments": {
      "type": "array",
      "description": "Array of segment definitions for the street",
      "items": {
        "type": "object",
        "description": "Segment definition",
        "properties": {
          "name": {
            "type": "string",
            "description": "Display name of the segment"
          },
          "type": {
            "type": "string",
            "description": "Type of segment. Valid values: \"drive-lane\", \"bike-lane\", \"sidewalk\", \"parking-lane\", \"divider\", \"grass\", \"rail\", \"bus-lane\", \"boundary\". \"boundary\" is SYNTHETIC flanking land use (buildings, waterfront, fences) for scenes without geographic context — it renders outside the travelled way at the street edge and auto-tiles models edge-to-edge (`variant` + `side`, no `generated` needed). Do not add boundaries when the scene has a location: the Google 3D Tiles already show the real surroundings and synthetic buildings would overlap them."
          },
          "surface": {
            "type": "string",
            "description": "Surface material (e.g., \"asphalt\", \"concrete\", \"grass\", \"sidewalk\", \"gravel\", \"sand\", \"planting-strip\", \"none\", \"solid\"). Optional for building segments — the variant supplies a sensible default. For hatched dividers use `generated.striping` with `striping: \"hatched\"` instead of a surface."
          },
          "color": {
            "type": "string",
            "description": "Hex color code (e.g., \"#ffffff\")"
          },
          "elevation": {
            "type": "number",
            "description": "Vertical offset in meters (0 = road level, 0.15 = curb/sidewalk height). Negative values are not supported."
          },
          "width": {
            "type": "number",
            "description": "Width in meters"
          },
          "direction": {
            "type": "string",
            "description": "Traffic direction (\"none\", \"inbound\", \"outbound\")"
          },
          "variant": {
            "type": "string",
            "description": "Variant preset for `type: \"boundary\"` segments. Valid values: \"brownstone\" (urban mixed-use SM3D blocks), \"suburban\" (detached single-family houses), \"arcade\" (arched street-front buildings), \"water\" (seawall), \"grass\" (fenced grass strip), \"parking\" (fenced parking lot), \"sp-mixeduse\" (StreetPlan mixed-use), \"sp-residential\" (StreetPlan single-family/townhouse), \"sp-big-box\" (StreetPlan big-box stores), \"custom\" (preserve existing settings). Setting variant on a boundary segment auto-fits the model array; do NOT pass `generated.clones` for boundaries unless you want full control. Only meaningful when `type: \"boundary\"`, and only for scenes without geographic context (see `type`)."
          },
          "side": {
            "type": "string",
            "description": "Side of the street the segment sits on. Required for `type: \"boundary\"` (controls placement outside the travelled way edge and which direction the models face). Valid values: \"left\", \"right\". Frame of reference is the street's own cross-section, not the camera: \"left\" is the inbound side and \"right\" the outbound side (right-hand-drive convention; swap for left-hand-drive countries). segments[0] sits at the first edge; getGeoContext reports the compass bearing of each edge.",
            "enum": [
              "left",
              "right"
            ]
          },
          "generated": {
            "type": "object",
            "description": "Optional generated content — omit to receive the type preset. Two different systems: `clones` places 3D models (vehicles, cyclists, trees, lamps, furniture — any listMixins id with generator \"clones\"); `stencil` paints flat road markings (arrows, sharrows, words like BUS ONLY — only ids with generator \"stencil\"). Never put a vehicle in `stencil` or a marking in `clones`.",
            "properties": {
              "clones": {
                "type": "array",
                "description": "Clones configuration for repeated 3D models",
                "items": {
                  "type": "object",
                  "properties": {
                    "mode": {
                      "type": "string",
                      "description": "Clone mode (\"random\", \"fixed\", \"single\")"
                    },
                    "modelsArray": {
                      "type": "string",
                      "description": "Comma-separated 3D model ids from listMixins (generator \"clones\"), e.g. \"sedan-rig, box-truck-rig\" or \"bus\". Unknown ids are rejected."
                    },
                    "spacing": {
                      "type": "number",
                      "description": "Distance between models in meters"
                    },
                    "count": {
                      "type": "number",
                      "description": "Number of models (for random mode)"
                    },
                    "facing": {
                      "type": "number",
                      "description": "Rotation in degrees"
                    },
                    "randomFacing": {
                      "type": "boolean",
                      "description": "Random rotation"
                    },
                    "cycleOffset": {
                      "type": "number",
                      "description": "Offset in the repeating pattern (0-1)"
                    }
                  },
                  "required": [
                    "mode",
                    "modelsArray",
                    "spacing"
                  ]
                }
              },
              "stencil": {
                "type": "array",
                "description": "Stencil configuration for road markings",
                "items": {
                  "type": "object",
                  "properties": {
                    "modelsArray": {
                      "type": "string",
                      "description": "Comma-separated painted-marking ids (generator \"stencil\"), e.g. \"bike-arrow\", \"sharrow\", \"word-bus, word-only\". Unknown ids are rejected — use listMixins."
                    },
                    "spacing": {
                      "type": "number",
                      "description": "Distance between stencils"
                    },
                    "padding": {
                      "type": "number",
                      "description": "Edge padding"
                    },
                    "cycleOffset": {
                      "type": "number",
                      "description": "Pattern offset (0-1)"
                    },
                    "direction": {
                      "type": "string",
                      "description": "Stencil orientation"
                    },
                    "stencilHeight": {
                      "type": "number",
                      "description": "Height of stencil"
                    }
                  },
                  "required": [
                    "modelsArray",
                    "spacing"
                  ]
                }
              },
              "pedestrians": {
                "type": "array",
                "description": "Pedestrian configuration",
                "items": {
                  "type": "object",
                  "properties": {
                    "density": {
                      "type": "string",
                      "description": "Pedestrian density (\"normal\", \"dense\")"
                    }
                  },
                  "required": [
                    "density"
                  ]
                }
              },
              "striping": {
                "type": "array",
                "description": "Striping configuration for lane markings",
                "items": {
                  "type": "object",
                  "properties": {
                    "striping": {
                      "type": "string",
                      "description": "Stripe pattern type"
                    },
                    "side": {
                      "type": "string",
                      "description": "Side of segment (\"left\", \"right\")"
                    }
                  },
                  "required": [
                    "striping"
                  ]
                }
              }
            }
          }
        },
        "required": [
          "type",
          "surface",
          "color",
          "elevation",
          "width",
          "direction"
        ]
      }
    }
  },
  "required": [
    "segments"
  ]
}

Similar websites

econsor.de

econsor.de

German digital agency building portals, e-commerce sites and online marketing, combining strategy, design and AI to grow clients' visibility and customer base.

live Unverified Productivity & Business Transact tools
143 tools A0 / Act142 / T1 Not yet scored Seen 2026-11-05
econsor_click_search econsor_click_image econsor_click_menu econsor_click_burger_menu_icon econsor_click_previous_button
Inspect tools
inkframe-eta.vercel.app

inkframe-eta.vercel.app

Browser-native Elah video editor for 9:16 and 16:9 exports

live Unverified Productivity & Business Transact tools
87 tools A12 / Act71 / T4 Not yet scored Seen 2026-11-05
get_capabilities list_templates navigate_workspace open_template editor_inspect_video_moments
Inspect tools
agentdesk-demo.vercel.app

agentdesk-demo.vercel.app

Meridian Ops

live Unverified Productivity & Business Transact tools
83 tools A43 / Act24 / T16 Not yet scored Seen 2026-11-05
find_capabilities invoke_capability get_context get_action_status search_customers
Inspect tools
eworker.ca

eworker.ca

E-Worker is business infrastructure powered by AI, with focused apps and connected business work.

live Unverified Productivity & Business
73 tools A10 / Act63 / T0 Not yet scored Seen 2026-11-05
eworker_site_status eworker_list_apps eworker_resolve_app eworker_open_app ewdoc_status
Inspect tools

Related on Influzer