Pascal 3D Editor
Create, inspect, validate, and save editable 3D building scenes with Pascal's MCP server.
Connector by pascal.appOfficial · Domain verified by the MCP Registry
Install
Works with Claude Code, VS Code, Codex, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/pascal-app-editor
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Remote endpoint
https://editor.pascal.app/api/mcpRemote (HTTP)
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: ui-design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 10 read · 5 write · 12 delete
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Node.js package
Tools by what they do 27
Read from the source code; the running server may list different tools.
Read 10 · Look things up without changing anything.
analyze_floorplan_imageanalyze_room_photocheck_collisionsexport_glbexport_jsonget_scenelist_sceneslist_templateslist_unitsmeasure
Write 5 · Create, change, send or run things.
create_projectcreate_story_shellcreate_unitgenerate_variantsset_zone
Delete 12 · Delete, drop, revoke or wipe things.
apply_patchcreate_from_templatecreate_house_from_briefdelete_sceneget_project_statusload_scenephoto_to_sceneredorename_scenesave_sceneset_unit_membersundo
Network hosts it talks to 1
editor.pascal.app· found in remote endpoint, install command
Tools (27)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
analyze_floorplan_imageAnalyze floor-plan imageread-onlyDefer to the MCP host (via sampling) to extract walls, rooms, and approximate dimensions from a floor-plan image. Requires host support for sampling.
analyze_room_photoAnalyze room photoread-onlyDefer to the MCP host (via sampling) to extract approximate dimensions, fixtures, and windows from a single-room photograph. Requires host support for sampling.
apply_patchApply patchcan change or delete dataApply a batch of create/update/delete operations atomically. All patches are validated before any are applied; the entire batch forms a single undo step. Batch-first is the default: prefer one apply_patch call containing all create/update/delete ops for a build step, in stable order so later ops can reference ids created by earlier ops. A single call is atomic (all or nothing) and pays the snapshot and save cost once; do not loop one-op calls. A create whose id already exists fails the whole patch with node_exists; to replace a node, delete it earlier in the same patch. An update cannot change…
check_collisionsCheck collisionsread-onlyAssess 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.
create_from_templateCreate scene from templatecan change or delete dataInstantiate 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.
create_house_from_briefCreate house from briefcan change or delete dataHigh-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.
create_projectCreate projectCreate a browser-visible Pascal project for the authenticated user. Use this before save_scene when the user asks for a new project.
create_story_shellCreate story shellCreate 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 intent instead. Use once per story; do not make first-floor walls span multiple stories.
create_unitCreate unitCreate a named unit in a building, optionally referencing zones across its levels.
delete_sceneDelete scenecan change or delete dataRemove 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 may hide it. A local scene store deletes the scene. Optionally pass `expectedVersion` for optimistic concurrency.
export_glbExport GLBread-onlyGLB export is not available in headless mode — it requires the Three.js renderer, which is browser-only. Returns a structured `not_implemented` tool error.
export_jsonExport JSONread-onlyReturn the scene as a serialized JSON string. Pass `pretty: true` to indent with 2 spaces.
generate_variantsGenerate 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.
get_project_statusGet project statuscan change or delete dataAuthoritative status/debug call for a Pascal project: editor URL, browser-visible version, latest saved version, published version, node count, and graph hash.
get_sceneGet sceneread-onlyReturns the full scene graph: flat node dictionary, root node IDs, collections, and explicit installed plugin IDs when present.
Show 12 more tools
list_scenesList scenesread-onlyList scenes in the SceneStore. Optionally filter by `projectId` and cap results with `limit` (default 100).
list_templatesList scene templatesread-onlyList the seed Pascal scene templates available to `create_from_template`. Returns the id, display name, one-line description and node count for each.
list_unitsList unitsread-onlyList units with their member zones and current area reports, optionally filtered by building.
load_sceneLoad scenecan change or delete dataLoad a scene from the SceneStore into the bridge. Returns the scene metadata. Throws `scene_not_found` if the id does not exist.
measureMeasureread-onlyMeasure the distance (in meters) between two nodes, or the net area of a polygon node when fromId === toId. Distance is between world-space reference points, returned as fromPoint/toPoint: a positioned node's origin in its host's frame (an item's base, a door's or window's centre in its wall), a wall's or fence's midpoint at its base, a slab's, ceiling's or zone's polygon centroid on its plane, a block's or imported mesh's vertex-bounds centre, a level's plan centre on its base plane, and another container's descendants' centre. `approximate` lists nodes whose renderer derives the pose from da…
photo_to_scenePhoto to Pascal scenecan change or delete dataOrchestrator: 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.
redoRedocan change or delete dataRedo the next N previously-undone steps (default 1). Returns the number of steps actually redone.
rename_sceneRename scenecan change or delete dataRename a scene in the SceneStore. Returns the updated SceneMeta. Optionally pass `expectedVersion` for optimistic concurrency.
save_sceneSave scenecan change or delete dataSave 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" for meaningful version history.
set_unit_membersSet unit memberscan change or delete dataReplace the zones referenced by a unit. Every zone must belong to a level in the same building.
set_zoneSet 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 person named otherwise is refused (rename it with update_node only when the person asked).
undoUndocan change or delete dataUndo the most recent N steps in the scene history (default 1). Returns the number of steps actually undone.
Compare and alternatives
Featured in
Signals
- Stars
- 25,086
- Forks
- 3,122
- Open issues
- 27
- Contributors
- 55
- Weekly downloads
- 453
- Last commit (this folder)
- Oct 23, 2026 (3 days ago)
- Last release
- Oct 23, 2026 (4 days ago)
- Last package publish
- Oct 23, 2026 (4 days ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
app.pascal/editor- Version
- 1.0.6
- Auth
- Auth not stated
- Packages
- npm @pascal-app/mcp
- License
- MIT
- Repository
- github.com/pascalorg/editor
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
Pascal 3D Editor MCP server. Agent Mart. https://agentmart.dev/connectors/pascal-app-editor (last updated 2026-10-24)