Reported issues for io.github.KittyCAD/zoo-mcp
Pod holds 8 of 8 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.
Back to io.github.KittyCAD/zoo-mcp.
Most discussed
Use the composite file physical-properties endpoint for CAD analysis
Problem
calculate_cad_physical_properties currently makes separate Zoo API requests for volume, mass, surface area, center of mass, and CAD-to-STL conversion for local bounds. The same source can therefore be uploaded, imported, and tessellated up to five times for one MCP tool call. When STEP analysis is asynchronous, this can create multiple long-running worker jobs for the same customer request.
KittyCAD/api#4491 adds a composite POST /file/physical-properties operation that imports
Read the thread · 2026-08-29 · open · outside contributor · 0 comments
Poll asynchronous file-analysis results instead of treating uploaded responses as failures
Summary
Zoo MCP treats asynchronous file-analysis responses as terminal failures. The Zoo API intentionally returns an uploaded response with an operation ID and a null result when a source file exceeds 25 MB. The MCP helpers immediately inspect the null result and raise errors such as Failed to calculate volume instead of polling the operation.
This affects the narrow file endpoints used by calculate_volume, calculate_mass, calculate_surface_area, calculate_center_of_mass, `cal
Read the thread · 2026-08-29 · closed · outside contributor · 0 comments
Add an MCP tool to inspect and visualize sketch-region topology
Summary
Add an MCP tool that returns both machine-readable sketch-region topology and a high-contrast PNG for a sketch in an active modeling session.
Zookeeper can currently validate KCL and take 3D snapshots, but it cannot inspect the 2D topology that Engine used when deciding whether sketch segments form regions. When region creation or solid lofting fails, the agent therefore has to infer whether the cause is an open loop, self-intersection, wrong arc sweep, incorrect winding, an exterio
Read the thread · 2026-08-27 · open · outside contributor · 1 comment
Return CAD physical-analysis vectors in one coordinate frame
Return CAD physical-analysis vectors in one coordinate frame
Summary
calculate_cad_physical_properties can return center_of_mass and
bounding_box in different coordinate frames.
The center of mass comes from the API's file center-of-mass endpoint in the format library's internal OpenGL frame. The bounding box comes from STL mesh coordinates: either the original STL or a default CAD-to-STL conversion. The default imported-model/STL convention is KittyCAD coordinates. The combined re
Read the thread · 2026-08-27 · closed · outside contributor · 1 comment
Calculate CAD bounding boxes across every converted output
Calculate CAD bounding boxes across every converted output
Summary
The combined CAD physical-analysis helper and the standalone CAD bounding-box helper calculate bounds from only the first STL returned by CAD conversion:
stl_data = next(iter(stl_result.outputs.values()))
If a source file converts into multiple output files or bodies, the reported volume, mass, surface area, and center of mass can describe the complete source file while the bounding box describes only which
Read the thread · 2026-08-27 · open · outside contributor · 0 comments
Return CAD physical-analysis length results in one explicit unit
Return CAD physical-analysis length results in one explicit unit
Summary
zoo_calculate_cad_physical_properties can return center-of-mass coordinates
and bounding-box coordinates in different length units without identifying that
the units differ.
The caller's unit_length is passed to the remote center-of-mass endpoint, but
the bounding box is computed locally from the source STL coordinates. For
non-STL inputs, the source file is converted to STL and the returned mesh
coordinates are
Read the thread · 2026-08-27 · open · outside contributor · 0 comments
Bound CAD snapshot import latency and reconnect retries when an engine response stalls
Summary
CAD inspection can block synchronously for minutes while waiting for the engine's import response, then repeat the same expensive attempt after every reconnect. In production, repeated inspect(..., camera_view="multiview", zoom=true) attempts against the same public-supplier STEP attachment remained open until the conversation reconnected. On reconnect, unrelated documentation and retrieval tools completed, while inspect alone stalled again. This loop continued for more than an h
Read the thread · 2026-08-19 · closed · outside contributor · 4 comments
Bound sketch constraint status calls that can hang indefinitely
During a Zookeeper Pro smoke run, kcl.get_sketch_constraint_status() appears to have hung indefinitely. zoo_get_sketch_constraint_status() awaits it through _execute_with_retries(), but retries only begin after an exception and there is no deadline for a call that never returns.
Please add a bounded timeout/cancellation path and return a clear timeout error to callers.
TTC caller-side guard: https://github.com/KittyCAD/text-to-cad/issues/4009
Evidence:
- [Opik trace](https://www.comet.c
Read the thread · 2026-08-08 · open · outside contributor · 0 comments
Most recent
The remaining reports are on the project's issue tracker.