Create, inspect, validate, and save editable 3D building scenes with Pascal's MCP server.
Inferred from the transports this listing declares (stdio, streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read out of the source npm actually ships, at scan time. The package was never executed. Tools registered dynamically at runtime, or hidden inside bundled or minified code, can be missed — so this is a floor on the tool surface, not a complete census of it.
analyze_floorplan_imageDefer to the MCP host (via sampling) to extract walls, rooms, and approximate dimensions from a floor-plan image. Requires host support for sampling.Defer to the MCP host (via sampling) to extract walls, rooms, and approximate dimensions from a floor-plan image. Requires host support for sampling.
No input schema was published for this tool.
analyze_room_photoDefer to the MCP host (via sampling) to extract approximate dimensions, fixtures, and windows from a single-room photograph. Requires host support for sampling.Defer to the MCP host (via sampling) to extract approximate dimensions, fixtures, and windows from a single-room photograph. Requires host support for sampling.
No input schema was published for this tool.
apply_patchprivilegedNo description publishedThis tool published no description. Forge does not invent one.
check_collisionsAssess declared item footprints with a rotation-aware plan AABB test. Supports an explicit minimum clearance and reports units, source dimensions, skipped evidence, and unsupported checks. Optionally scope to one level or floor-standing items.Assess declared item footprints with a rotation-aware plan AABB test. Supports an explicit minimum clearance and reports units, source dimensions, skipped evidence, and unsupported checks. Optionally scope to one level or floor-standing items.
No input schema was published for this tool.
create_story_shellprivilegedCreate one level-owned building shell from a footprint: the perimeter walls. The floor plate and the ceiling are DERIVED from the rooms the walls enclose — never author a slab or a ceiling here, and never pass boundary/autoFromWalls; createSlab / createCeiling / slabElevation are recorded as room i…Create one level-owned building shell from a footprint: the perimeter walls. The floor plate and the ceiling are DERIVED from the rooms the walls enclose — never author a slab or a ceiling here, and never pass boundary/autoFromWalls; createSlab / createCeiling / slabElevation are recorded as room i…
No input schema was published for this tool.
create_from_templateInstantiate a seed Pascal scene template into the bridge. Regenerates all ids before applying. When `save: true` and a SceneStore is wired, also persists the new scene and returns the SceneMeta.Instantiate a seed Pascal scene template into the bridge. Regenerates all ids before applying. When `save: true` and a SceneStore is wired, also persists the new scene and returns the SceneMeta.
No input schema was published for this tool.
create_house_from_briefHigh-level hosted workflow for external agents: choose a starter house from a brief, create/save/publish it, and return the editor URL. Use semantic tools afterward for exact customization.High-level hosted workflow for external agents: choose a starter house from a brief, create/save/publish it, and return the editor URL. Use semantic tools afterward for exact customization.
No input schema was published for this tool.
create_projectCreate a browser-visible Pascal project for the authenticated user. Use this before save_scene when the user asks for a new project.Create a browser-visible Pascal project for the authenticated user. Use this before save_scene when the user asks for a new project.
No input schema was published for this tool.
create_unitCreate a named unit in a building, optionally referencing zones across its levels.Create a named unit in a building, optionally referencing zones across its levels.
No input schema was published for this tool.
delete_sceneprivilegedRemove a stored scene by id. In Pascal this never deletes the project: it hides it from Pascal's public listings until it is next saved with content, and answers `deleted: false, hidden: true` with a message; its owner can delete it from the projects page. Only someone who can manage the project ma…Remove a stored scene by id. In Pascal this never deletes the project: it hides it from Pascal's public listings until it is next saved with content, and answers `deleted: false, hidden: true` with a message; its owner can delete it from the projects page. Only someone who can manage the project ma…
No input schema was published for this tool.
export_glbGLB export is not available in headless mode — it requires the Three.js renderer, which is browser-only. Returns a structured `not_implemented` tool error.GLB export is not available in headless mode — it requires the Three.js renderer, which is browser-only. Returns a structured `not_implemented` tool error.
No input schema was published for this tool.
export_jsonReturn the scene as a serialized JSON string. Pass `pretty: true` to indent with 2 spaces.Return the scene as a serialized JSON string. Pass `pretty: true` to indent with 2 spaces.
No input schema was published for this tool.
generate_variantsGenerate N variations of a base scene by forking and applying seeded mutations. Example: "give me 5 variations of this kitchen". If `save=true`, each variant is persisted via scene operations and returned with an id + URL; otherwise the graph is returned inline.Generate N variations of a base scene by forking and applying seeded mutations. Example: "give me 5 variations of this kitchen". If `save=true`, each variant is persisted via scene operations and returned with an id + URL; otherwise the graph is returned inline.
No input schema was published for this tool.
get_project_statusAuthoritative status/debug call for a Pascal project: editor URL, browser-visible version, latest saved version, published version, node count, and graph hash.Authoritative status/debug call for a Pascal project: editor URL, browser-visible version, latest saved version, published version, node count, and graph hash.
No input schema was published for this tool.
get_sceneReturns the full scene graph: flat node dictionary, root node IDs, collections, and explicit installed plugin IDs when present.Returns the full scene graph: flat node dictionary, root node IDs, collections, and explicit installed plugin IDs when present.
No input schema was published for this tool.
list_scenesList scenes in the SceneStore. Optionally filter by `projectId` and cap results with `limit` (default 100).List scenes in the SceneStore. Optionally filter by `projectId` and cap results with `limit` (default 100).
No input schema was published for this tool.
list_templatesList the seed Pascal scene templates available to `create_from_template`. Returns the id, display name, one-line description and node count for each.List the seed Pascal scene templates available to `create_from_template`. Returns the id, display name, one-line description and node count for each.
No input schema was published for this tool.
list_unitsList units with their member zones and current area reports, optionally filtered by building.List units with their member zones and current area reports, optionally filtered by building.
No input schema was published for this tool.
load_sceneLoad a scene from the SceneStore into the bridge. Returns the scene metadata. Throws `scene_not_found` if the id does not exist.Load a scene from the SceneStore into the bridge. Returns the scene metadata. Throws `scene_not_found` if the id does not exist.
No input schema was published for this tool.
measureNo description publishedThis tool published no description. Forge does not invent one.
photo_to_sceneOrchestrator: analyse a floor-plan photo via MCP sampling, translate the structured vision result into a Pascal SceneGraph (site → building → level with walls and zones), optionally save it, and swap the bridge to the new scene. Requires host support for sampling.Orchestrator: analyse a floor-plan photo via MCP sampling, translate the structured vision result into a Pascal SceneGraph (site → building → level with walls and zones), optionally save it, and swap the bridge to the new scene. Requires host support for sampling.
No input schema was published for this tool.
redoRedo the next N previously-undone steps (default 1). Returns the number of steps actually redone.Redo the next N previously-undone steps (default 1). Returns the number of steps actually redone.
No input schema was published for this tool.
rename_sceneprivilegedRename a scene in the SceneStore. Returns the updated SceneMeta. Optionally pass `expectedVersion` for optimistic concurrency.Rename a scene in the SceneStore. Returns the updated SceneMeta. Optionally pass `expectedVersion` for optimistic concurrency.
No input schema was published for this tool.
save_sceneSave the current scene (or a provided graph) to the SceneStore. Without id or projectId it saves to the project this session is bound to (create_project or load_scene). Defaults to a browser-visible draft save so agents can iterate without creating many project versions. Use saveMode: "checkpoint"…Save the current scene (or a provided graph) to the SceneStore. Without id or projectId it saves to the project this session is bound to (create_project or load_scene). Defaults to a browser-visible draft save so agents can iterate without creating many project versions. Use saveMode: "checkpoint"…
No input schema was published for this tool.
set_unit_membersReplace the zones referenced by a unit. Every zone must belong to a level in the same building.Replace the zones referenced by a unit. Every zone must belong to a level in the same building.
No input schema was published for this tool.
set_zoneCreate a polygonal zone on the given level. label is stored as the zone name and properties are merged into metadata. A polygon along walls that already enclose a room is that room, never a second zone: a room still named "Room N", or already named label, takes the label and properties; a room a pe…Create a polygonal zone on the given level. label is stored as the zone name and properties are merged into metadata. A polygon along walls that already enclose a room is that room, never a second zone: a room still named "Room N", or already named label, takes the label and properties; a room a pe…
No input schema was published for this tool.
undoUndo the most recent N steps in the scene history (default 1). Returns the number of steps actually undone.Undo the most recent N steps in the scene history (default 1). Returns the number of steps actually undone.
No input schema was published for this tool.
25 of 27 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Create, inspect, validate, and save editable 3D building scenes with Pascal's MCP server.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
Not followed: peerDependencies. This tree covers runtime dependencies only, so anything those pull in was never resolved.