{"name":"ai.structupath/steel-tools","slug":"structupath-steel-tools","title":null,"description":"Steel takeoff, weight and gauge calculators plus RFQ, RFI, NCR and Bluebeam markup generators.","url":"https://mcp.market/server/structupath-steel-tools","rating":null,"grade":"B","score":75,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T02:50:53.054Z","last_ok_at":"2026-11-04T02:50:53.054Z","latency_ms":1253},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://www.structupath.ai/tools","version":"1.7.0","remotes":[{"type":"streamable-http","url":"https://www.structupath.ai/api/mcp"}],"packages":[],"tools":[{"name":"steel_bolt_pretension","description":"RCSC minimum pretension for A325/A490 structural bolts by diameter, with the turn-of-the-nut rotation when a bolt length is given. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"dia":{"type":"string","minLength":1,"maxLength":8,"description":"Bolt diameter in inches — fraction (\"3/4\") or decimal (0.75)"},"length_in":{"description":"Optional bolt length in inches, for the turn-of-the-nut rotation","type":"number","exclusiveMinimum":0,"maximum":60}},"required":["dia"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_coating_area","description":"Surface area to coat for an AISC shape: ft² per foot from the cross-section perimeter, piece/lot area with length and qty, optional interior faces for galvanized tubes and gallons at a supplied coverage rate. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"designation":{"type":"string","maxLength":32,"description":"AISC designation, e.g. W21X50, HSS6X6X3/8, Pipe4STD"},"length_ft":{"description":"Optional length in feet for a piece/lot area","type":"number","exclusiveMinimum":0,"maximum":10000},"qty":{"description":"Optional piece count (default 1) when a length is given","type":"integer","exclusiveMinimum":0,"maximum":100000},"include_inside_faces":{"description":"Tubes only: add interior surface, as hot-dip galvanizing coats vented HSS/pipe interiors. Default false (outside only).","type":"boolean"},"coverage_sqft_per_gal":{"description":"Optional practical coverage rate from the coating datasheet, to estimate gallons","type":"number","exclusiveMinimum":0,"maximum":2000}},"required":["designation"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_connection_reference","description":"Describe a structural steel connection type (behaviour, use, what goes wrong) by name, alias or slug — or look up a structural bolt grade (A325, A490, A307). Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"name_or_slug":{"type":"string","minLength":1,"maxLength":80,"description":"Connection name, alias or slug (e.g. \"clip angle\", \"base-plate\") or a bolt grade (e.g. \"A490\")"}},"required":["name_or_slug"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_gauge_thickness","description":"Look up sheet steel gauge thickness (gauges 3-28) in inches and mm with lb/ft², for plain, galvanized or stainless series. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gauge":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"description":"Sheet steel gauge number, 3 through 28"},"material":{"default":"steel","description":"Gauge series — the same number is a different thickness each","type":"string","enum":["steel","galvanized","stainless"]}},"required":["gauge"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_mtr_check","description":"Screen a mill cert's yield and tensile against the specified limits for A992, A572 Gr. 50 or A36 — a screening aid, not acceptance. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"grade":{"type":"string","minLength":2,"maxLength":24,"description":"Steel grade: \"A992\", \"A572 Gr. 50\" or \"A36\""},"yield_ksi":{"type":"number","exclusiveMinimum":0,"maximum":200,"description":"Reported yield, ksi"},"tensile_ksi":{"type":"number","exclusiveMinimum":0,"maximum":200,"description":"Reported tensile, ksi"}},"required":["grade","yield_ksi","tensile_ksi"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_ncr_generate","description":"Generate a formal Nonconformance Report PDF: identification, description, the violated requirement, containment, root cause (prose or 5-Whys chain), disposition (accept-as-is/repair/rework/reject) with actions, and blank quality-review and sign-off blocks. Flags accept-as-is dispositions whose corrective action describes physical work. The disposition decision belongs to the responsible quality authority. Returns a download link that expires within ~48 hours. Nothing you submit is stored.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"company_name":{"type":"string","minLength":1,"maxLength":120,"description":"Contractor raising the NCR — appears in the header"},"company_location":{"type":"string","maxLength":120},"ncr_number":{"type":"string","minLength":1,"maxLength":40,"description":"NCR number from the project register, e.g. \"NCR-008\""},"date":{"type":"string","minLength":1,"maxLength":60,"description":"Date raised"},"project_name":{"type":"string","minLength":1,"maxLength":160},"project_number":{"type":"string","maxLength":60},"raised_by":{"type":"string","minLength":1,"maxLength":160,"description":"Name — role"},"trade_or_supplier":{"type":"string","maxLength":160},"location":{"description":"Area, level, grid, or piece mark","type":"string","maxLength":200},"description":{"type":"string","minLength":1,"maxLength":4000,"description":"What was found, measured against what was required"},"requirement_violated":{"type":"string","minLength":1,"maxLength":500,"description":"The cited requirement — spec section, drawing/detail, or code clause. An NCR without a cited requirement is dispute fuel."},"containment":{"description":"What was done on the spot — quarantine, stop work, tag","type":"string","maxLength":1000},"root_cause":{"type":"string","maxLength":2000},"root_cause_whys":{"description":"5-Whys chain, first why to root; overrides root_cause","maxItems":5,"type":"array","items":{"type":"string","maxLength":300}},"resolution":{"type":"string","enum":["accept-as-is","repair","rework","reject"],"description":"Disposition: accept-as-is (no physical work), repair, rework, or reject"},"resolution_justification":{"description":"Required in practice for accept-as-is — the concession basis","type":"string","maxLength":1000},"corrective_action":{"description":"Bringing this instance into compliance","type":"string","maxLength":2000},"preventive_action":{"description":"Stopping recurrence — procedure, inspection, supplier","type":"string","maxLength":2000}},"required":["company_name","ncr_number","date","project_name","raised_by","description","requirement_violated","resolution"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_pdf_markup","description":"Add real Bluebeam-compatible annotation objects to a drawing PDF — counts, length/area measurements with live scales, RFI clouds, callouts — from a markups JSON you supply plus placement coordinates. Pass the PDF as an https URL or small base64; returns a marked PDF download link that expires within ~48 hours. Markups appear in Bluebeam Revu's Markups List. You decide placement; the tool guarantees the format. Nothing you submit is stored.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pdf_url":{"description":"HTTPS URL of the source drawing PDF (fetched server-side, SSRF-guarded)","type":"string","maxLength":2000,"format":"uri"},"pdf_base64":{"description":"Base64 PDF for small files (~3 MB max decoded); prefer pdf_url for drawing sets","type":"string","maxLength":4800000},"markups":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"object","properties":{"page":{"type":"integer","minimum":1,"maximum":5000,"description":"1-based page number"},"tool":{"description":"A steel takeoff preset key, e.g. hss-ea, w-beam-lf, rfi-cloud","type":"string","maxLength":60},"type":{"description":"Annotation type when not using a preset tool","type":"string","maxLength":40},"at":{"anyOf":[{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}]},{"maxItems":2000,"type":"array","items":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}]}}]},"points":{"maxItems":2000,"type":"array","items":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}]}},"rect":{"description":"[x, y, w, h] in the markup's coordinate space","type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}]},"arrow":{"type":"boolean"},"arrow_at":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}]},"size":{"type":"number","maximum":1000},"bump":{"type":"number","maximum":200},"box_w":{"type":"number","maximum":10000},"box_h":{"type":"number","maximum":10000},"subject":{"type":"string","maxLength":120},"label":{"type":"string","maxLength":200},"contents":{"type":"string","maxLength":2000},"author":{"type":"string","maxLength":120},"color":{"description":"Hex color, e.g. #FF0000","type":"string","maxLength":9},"fill":{"type":"string","maxLength":9},"fill_opacity":{"type":"number","minimum":0,"maximum":1},"opacity":{"type":"number","minimum":0,"maximum":1},"width":{"type":"number","maximum":100},"font_size":{"type":"number","maximum":200},"scale":{"description":"Per-markup scale, e.g. \"1/4 in = 1 ft\"","type":"string","maxLength":40},"coordinate_space":{"type":"string","enum":["ratio","pdf"]},"data":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"column_data":{"maxItems":50,"type":"array","items":{}}},"required":["page"]},"description":"Markups to place — geometry in ratio (0–1 from top-left) or pdf coordinates"},"scale":{"description":"Document scale for measurements, e.g. \"1/4 in = 1 ft\" or \"1:100\"","type":"string","maxLength":40},"page_scales":{"description":"Per-page scale overrides, keyed by page number string","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"coordinate_space":{"type":"string","enum":["ratio","pdf"]},"author":{"description":"Markups List author column","type":"string","maxLength":120}},"required":["markups"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_pipe_schedule","description":"Steel pipe dimensions by NPS and schedule: OD, wall, inside diameter and lb/ft for schedules 5, 10, 40/STD, 80/XS, 160 and XXS. Omit the schedule to list them all. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"nps":{"type":"string","minLength":1,"maxLength":8,"description":"Nominal pipe size, e.g. \"2\", \"1/2\", \"1-1/4\""},"schedule":{"description":"Optional schedule: \"40\", \"80\", \"160\", \"STD\", \"XS\", \"XXS\", \"5\", \"10\"","type":"string","minLength":1,"maxLength":8}},"required":["nps"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_plate_weight","description":"Compute carbon steel plate weight from thickness (decimal or fraction) and width/length in inches, with optional material cost via price_per_lb. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"thickness_in":{"anyOf":[{"type":"string","maxLength":16},{"type":"number"}],"description":"Plate thickness in inches — decimal or fraction (\"3/4\", \"1-1/8\")"},"width_in":{"type":"number","exclusiveMinimum":0,"maximum":2000,"description":"Plate width in INCHES (a 4x8 ft plate is 48 x 96 in)"},"length_in":{"type":"number","exclusiveMinimum":0,"maximum":2000,"description":"Plate length in INCHES"},"price_per_lb":{"description":"Optional material price in $/lb, to include a cost estimate","type":"number","exclusiveMinimum":0,"maximum":1000}},"required":["thickness_in","width_in","length_in"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_rfi_generate","description":"Generate a formal Request for Information PDF from structured fields — header, meta grid, subject, description, proposed solution, attachments, and a blank response block for the design team. You do the judgement (one issue per RFI, exact drawing references, a proposed path forward); the tool guarantees the format. Returns a download link that expires within ~48 hours. Nothing you submit is stored.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"company_name":{"type":"string","minLength":1,"maxLength":120,"description":"Contractor issuing the RFI — appears in the header"},"company_location":{"type":"string","maxLength":120},"rfi_number":{"type":"string","minLength":1,"maxLength":40,"description":"RFI number from the project register, e.g. \"RFI-017\""},"date":{"type":"string","minLength":1,"maxLength":60,"description":"Submission date"},"project_name":{"type":"string","minLength":1,"maxLength":160},"project_number":{"type":"string","maxLength":60},"submitted_to":{"type":"string","minLength":1,"maxLength":160,"description":"The party who must respond — engineer, architect, GC"},"submitted_by":{"type":"string","minLength":1,"maxLength":160,"description":"Name — company"},"reason":{"description":"Category: Design Omission, Design Error, Constructability Issue, Scope Clarification, Site Condition, Missing Information, Coordination Conflict — or free text","type":"string","maxLength":60},"drawing_refs":{"description":"Exact drawing numbers with revisions","maxItems":20,"type":"array","items":{"type":"string","maxLength":80}},"spec_refs":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":80}},"subject":{"type":"string","minLength":1,"maxLength":160,"description":"One-line subject — one issue per RFI"},"description":{"type":"string","minLength":1,"maxLength":4000,"description":"The issue: specific references, what is missing or conflicting, why it matters. Newlines respected."},"proposed_solution":{"description":"Suggested path forward, framed as a proposal","type":"string","maxLength":2000},"response_needed_by":{"type":"string","maxLength":60},"attachments":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":160}}},"required":["company_name","rfi_number","date","project_name","submitted_to","submitted_by","subject","description"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_rfq_generate","description":"Generate a vendor-ready Request for Quotation (.xlsx) from structured takeoff line items — grouped by material, with vendor pricing columns, totals and standard terms. You pass parsed line items and a company name; returns a download link that expires within ~48 hours. Nothing you submit is stored.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"company_name":{"type":"string","minLength":1,"maxLength":120,"description":"Buyer company on the RFQ header and terms — required"},"company_location":{"description":"City, state under the company name, e.g. \"Denver, CO\"","type":"string","maxLength":120},"project_name":{"type":"string","minLength":1,"maxLength":160,"description":"Project name for the header and filename"},"project_location":{"type":"string","maxLength":160},"date_issued":{"description":"Free-form issue date; a blank line is used if omitted","type":"string","maxLength":60},"line_items":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"object","properties":{"item":{"type":"string","maxLength":40,"description":"Estimate item number, e.g. \"A-01\""},"category":{"type":"string","maxLength":60,"description":"Shop category, e.g. \"Columns\", \"Plate\", \"Flat Bar\""},"description":{"type":"string","maxLength":300,"description":"Full description; a row containing \"BY OTHERS\" is excluded"},"size":{"type":"string","maxLength":80,"description":"AISC designation or plate/bar dimensions"},"grade":{"type":"string","maxLength":40,"description":"Material grade, e.g. \"A992 Gr.50\", \"A36\""},"qty":{"type":"integer","minimum":0,"maximum":100000,"description":"Piece or stick count; a zero-qty row is excluded"},"stock_length":{"type":"string","maxLength":80,"description":"How it is purchased, e.g. \"3 sticks × 30′\""},"purchase_wt_lbs":{"type":"number","minimum":0,"maximum":10000000,"description":"Estimated purchase weight in pounds"},"notes":{"type":"string","maxLength":300},"material_type":{"type":"string","enum":["w-shape","plate","flat-bar"],"description":"Grouping key: w-shape, plate, or flat-bar"},"is_stock_purchase":{"description":"True for consolidated stock items that supersede piece-level plate/flat-bar rows","type":"boolean"}},"required":["item","category","description","size","grade","qty","stock_length","purchase_wt_lbs","material_type"]},"description":"Parsed takeoff line items — the calling agent reads the estimate"},"nesting_rows":{"description":"Optional fabricator-facing nesting/drop reference rows","maxItems":100,"type":"array","items":{"type":"object","properties":{"material":{"type":"string","maxLength":120},"nesting_plan":{"type":"string","maxLength":200},"drop_notes":{"type":"string","maxLength":300}},"required":["material","nesting_plan","drop_notes"]}},"terms":{"description":"Override the eight default terms; omit for the standard set","maxItems":30,"type":"array","items":{"type":"string","maxLength":500}}},"required":["company_name","project_name","line_items"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_section_weight","description":"Weight of round bar, square bar, flat bar or round tube from dimensions in inches — lb/ft and optional piece weight, in carbon, stainless or aluminum. For AISC designations use steel_shape_weight; for plate use steel_plate_weight. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"section":{"type":"string","enum":["round-bar","square-bar","flat-bar","round-tube"],"description":"Cross-section type"},"dim1_in":{"type":"number","exclusiveMinimum":0,"maximum":120,"description":"First dimension in inches: diameter (round bar), side (square bar), width (flat bar) or OD (round tube)"},"dim2_in":{"description":"Second dimension in inches: thickness (flat bar) or wall (round tube); unused for round and square bar","type":"number","exclusiveMinimum":0,"maximum":60},"length_ft":{"description":"Optional length in feet for a piece weight","type":"number","exclusiveMinimum":0,"maximum":10000},"material":{"description":"Default carbon steel; stainless is +2%, aluminum ×0.35","type":"string","enum":["carbon","stainless","aluminum"]}},"required":["section","dim1_in"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_shape_weight","description":"Look up an AISC shape designation (W, C, MC, L, HSS, PIPE) for lb/ft, depth and area, with optional piece weight. 14th-Edition-era data. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"designation":{"type":"string","minLength":1,"maxLength":40,"description":"AISC designation, e.g. \"W21X50\", \"HSS6X6X3/8\", \"L4X4X3/8\""},"length_ft":{"description":"Optional piece length in feet, for a piece weight","type":"number","exclusiveMinimum":0,"maximum":500},"qty":{"description":"Optional piece count","type":"integer","exclusiveMinimum":0,"maximum":10000}},"required":["designation"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"steel_takeoff_weight","description":"Roll a member list (AISC designation, length in feet, piece count — up to 500 lines) into a bill-of-steel ledger: weight per line, total pounds and tons, piece and lineal-foot counts. Net weight only; unmatched designations are listed, not guessed. Published nominal values for estimating and orientation, not design guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"members":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"object","properties":{"designation":{"type":"string","maxLength":32,"description":"AISC designation, e.g. W21X50, L4X4X1/2, HSS6X6X3/8"},"length_ft":{"type":"number","exclusiveMinimum":0,"maximum":10000,"description":"Piece length, feet"},"qty":{"type":"integer","exclusiveMinimum":0,"maximum":100000,"description":"Piece count"}},"required":["designation","length_ft","qty"]},"description":"The member list to roll up, one line per mark/size"}},"required":["members"],"$schema":"https://json-schema.org/draft/2020-12/schema"}}],"scan":{"score":75,"grade":"B","scanned_at":"2026-11-03T19:42:24.340Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-11-03T19:42:24.292Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 671ms"]},"poisoning":{"score":15,"max":15,"notes":["14 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":8,"max":10,"notes":["endpoint served from the registry-verified namespace domain"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://www.structupath.ai/api/mcp","reachable":true,"authRequired":false,"latencyMs":671,"serverInfo":{"name":"structupath-steel","version":"1.7.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://www.structupath.ai/icon?170996b2c9598871","source":"registry","width":64,"height":64},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[{"kind":"restore","fromGrade":"C","toGrade":"B","reason":"score 75: No source repository listed","createdAt":"2026-11-03T19:42:26.419Z"}],"reviews":[]}