About this project

OpenTakeoff measures quantities from construction drawings for bidding and preconstruction. The project is released under Apache-2.0 and runs as a client-only browser application, so plan files are processed locally without an account or upload. A live demo is available, and the repository can be forked to run a private instance. The same geometry and quantity engine powers two front ends. Human estimators get a browser canvas where they can drag in PDF, image, or ZIP plan sets, calibrate sheet scale, trace rooms and lines, derive base conditions and transitions, set materials and waste factors, generate roll-goods seam layouts, and export reports, marked-up PDFs, DXF, or takeoff archives. AI agents get a published stdio MCP package, opentakeoff-mcp, started with npx and configured in MCP clients such as Claude Code or Claude Desktop. The default build exposes 53 tools for loading plans, reading sheet text and vectors, setting scale, measuring polygons, lines and surfaces, placing counts, sweeping symbols, resolving schedule tags, editing shapes, adding RFIs, signing review verdicts, and exporting results. Measurements record scale, method, actor, corrections, and review status. Agent-produced shapes appear as proposals until a human approves them, and only a human action can mint the approved seal. Scale must be set explicitly; the engine refuses to measure unscaled sheets and reports scale conflicts rather than silently choosing a value. One-Click room detection and detect_rooms are currently gated while the flood engine is revalidated. Users can trace rooms with the Area tool on the canvas or measure_polygon over MCP. Other capabilities, including symbol sweeps, derivations, exports, and the review loop, remain available. Optional voice takeoff is also gated behind a build flag. The project includes agent and user manuals, tool reference, a Takeoff Protocol draft, scripted workflow benchmarks, and OpenTakeoff Academy, a benchmark arena for evaluating agents on real takeoff tasks.