1 check that ran failed — version behavior — so this release can’t be trusted as-is.
- Publisher
- io.github.Kentucky-ai
- Repository
- github.com/Kentucky-ai/opentakeoff
- Install
- npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp, npm:opentakeoff-mcp
- Versions
- 54
- Inspected
- 5 of 6 checks · 90%
- Scored
- 2026-09-10 · rubric 1.0.0
What we checked
Six static checks, weighted by risk. Every result reflects only what could be observed in the published package and repository — never intent.
Injection surface
warn25% of gradeTool descriptions/manifest scanned for instruction-injection patterns (imperatives at the model, hidden text, 'ignore previous', data-exfil URLs).
tool "sheet_context" description: cross-tool redirection ('instead of call…').
Supply chain
warn25% of gradePackage provenance: namespace verification, repo linkage, maintainer count, account age, postinstall scripts, typosquat distance.
dependency "jsts" is edit-distance 2 from popular package "jest" (typosquat candidate)
Credential hygiene
pass15% of gradeHow the server takes secrets (env vs plaintext config vs hardcoded); secrets appearing in tool schemas.
No hardcoded secrets, secret-shaped tool parameters, or leaked keys found. PASS = no static red flag; static analysis cannot prove the code honors env-based secret handling at runtime.
Permission scope
pass15% of gradeDeclared tools vs. breadth (filesystem, network, exec); flags shell-exec and unbounded filesystem access.
No shell-exec, unbounded/sensitive filesystem, or download-and-run primitives found in scanned source. PASS = no static red flag. Static scanning is blind to code fetched or executed at runtime.
Version behavior
fail10% of gradeDiff of tool definitions between versions; new permissions or changed descriptions in a patch release (the postmark-mcp class).
vs prior 0.9.73 (patch bump): new tool "load_plan" touches a sensitive surface (email/exec/net/fs); new tool "sheet_info" appeared; new tool "set_scale" touches a sensitive surface (email/exec/net/fs); new tool "propose_takeoff" appeared; new tool "measure_polygon" appeared; new tool "cut_out" touches a sensitive surface (email/exec/net/fs); new tool "measure_line" appeared; new tool "measure_surface" touches a sensitive surface (email/exec/net/fs); new tool "place_count" appeared; new tool "symbol_sweep" touches a sensitive surface (email/exec/net/fs); new tool "sweep_schedule_row" touches a sensitive surface (email/exec/net/fs); new tool "count_marks" touches a sensitive surface (email/exec/net/fs); new tool "derive_base" appeared; new tool "derive_transitions" touches a sensitive surface (email/exec/net/fs); new tool "takeoff_summary" appeared; new tool "export_takeoff" touches a sensitive surface (email/exec/net/fs); new tool "export_dxf" touches a sensitive surface (email/exec/net/fs); new tool "export_report" touches a sensitive surface (email/exec/net/fs); new tool "import_takeoff" touches a sensitive surface (email/exec/net/fs); new tool "apply_rules" touches a sensitive surface (email/exec/net/fs); new tool "export_marked_pdf" touches a sensitive surface (email/exec/net/fs); new tool "list_shapes" touches a sensitive surface (email/exec/net/fs); new tool "delete_shape" touches a sensitive surface (email/exec/net/fs); new tool "scope_duplicates" touches a sensitive surface (email/exec/net/fs); new tool "scope_merge" touches a sensitive surface (email/exec/net/fs); new tool "revise_proposal" appeared; new tool "withdraw_proposal" touches a sensitive surface (email/exec/net/fs); new tool "sheet_context" touches a sensitive surface (email/exec/net/fs); new tool "get_sheet_vectors" touches a sensitive surface (email/exec/net/fs); new tool "edit_shape" touches a sensitive surface (email/exec/net/fs); new tool "edit_materials" touches a sensitive surface (email/exec/net/fs); new tool "edit_condition" appeared; new tool "propose_condition_edit" touches a sensitive surface (email/exec/net/fs); new tool "withdraw_condition_edit" appeared; new tool "duplicate_condition" appeared; new tool "split_condition" appeared; new tool "undo_last" touches a sensitive surface (email/exec/net/fs); new tool "sheet_graph" touches a sensitive surface (email/exec/net/fs); new tool "resolve_tag" appeared; new tool "find_schedule" touches a sensitive surface (email/exec/net/fs); new tool "read_sheet_text" touches a sensitive surface (email/exec/net/fs); new tool "find_text" touches a sensitive surface (email/exec/net/fs); new tool "view_sheet" touches a sensitive surface (email/exec/net/fs); new tool "annotate" appeared; new tool "list_annotations" touches a sensitive surface (email/exec/net/fs); new tool "link_annotation" appeared; new tool "mark_verdict" touches a sensitive surface (email/exec/net/fs); new tool "delete_verdict" touches a sensitive surface (email/exec/net/fs); new tool "create_rfi" appeared; new tool "list_rfis" touches a sensitive surface (email/exec/net/fs); new tool "resolve_rfi" appeared; new tool "delete_rfi" touches a sensitive surface (email/exec/net/fs).
Transport config
unscannable10% of gradeRemote servers: TLS and auth mode (none/token/OAuth). Local servers: whether the manifest indicates it phones home.
local stdio server: no remote transport or auth surface, and no phone-home/telemetry signal found in source. Absence of transport findings is NOT a safety guarantee — phone-home hosts can be constructed at runtime and defeat static analysis.
Version history
Each release plotted by grade against the safe line at B. A version that sinks below the line has lost its trusted standing — the shape of a rug-pull.
| Version | Published | Grade | Score | Inspected | Change |
|---|---|---|---|---|---|
| v0.9.77 · current | 2026-09-05 | C | 65 | 5/6 · 90% | B→C in v0.9.77 |
| v0.9.73 | 2026-09-05 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.71 | 2026-09-03 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.65 | 2026-08-25 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.63 | 2026-08-22 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.62 | 2026-08-21 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.49 | 2026-08-16 | B | 87.5 | 4/6 · 80% | ±0 |
| v0.9.44 | 2026-08-16 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.42 | 2026-08-14 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.40 | 2026-08-14 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.39 | 2026-08-11 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.38 | 2026-08-06 | B | 77.5 | 5/6 · 90% | ±0 |
| v0.9.33 | 2026-08-04 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.31 | 2026-08-03 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.21 | 2026-08-02 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.19 | 2026-08-01 | B | 100 | 3/6 · 55% | ±0 |
| v0.9.59 | 2026-08-21 | B | 100 | 3/6 · 55% | ±0 |
| v0.9.43 | 2026-08-16 | B | 100 | 3/6 · 55% | ±0 |
| v0.9.17 | 2026-07-31 | B | 100 | 3/6 · 55% | ±0 |
| v0.9.8 | 2026-07-31 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.7 | 2026-07-29 | B | 100 | 3/6 · 55% | ±0 |
| v0.9.2 | 2026-07-28 | B | 100 | 4/6 · 65% | ±0 |
| v0.9.0 | 2026-07-25 | B | 100 | 4/6 · 65% | ±0 |
| v0.8.0 | 2026-07-25 | B | 100 | 3/6 · 55% | ±0 |
| v0.6.1 | 2026-07-22 | B | 100 | 4/6 · 65% | ±0 |
| v0.6.0 | 2026-07-22 | B | 100 | 4/6 · 65% | ±0 |
| v0.5.0 | 2026-07-21 | B | 100 | 4/6 · 65% | ±0 |
| v0.3.0 | 2026-07-17 | B | 90 | 4/6 · 65% | ±0 |
| v0.2.0 | 2026-07-17 | B | 100 | 3/6 · 55% | — |