{"name":"io.github.afredenslund/fredenslund-workshop-tools","slug":"afredenslund-fredenslund-workshop-tools","title":"Fredenslund workshop tools","description":"MFT/3 hole patterns (Shaper-ready SVG) and French cleat wall plans with cut lists. Free, unofficial.","url":"https://mcp.market/server/afredenslund-fredenslund-workshop-tools","rating":null,"grade":"C","score":67,"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":6,"ok":6,"last_checked_at":"2026-09-20T22:00:38.315Z","last_ok_at":"2026-09-20T22:00:38.315Z","latency_ms":58},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://fredenslund.dk/mcp","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://fredenslund.dk/mcp"}],"packages":[],"tools":[{"name":"french_cleat_plan","description":"Plan a French cleat wall for a workshop with the Fredenslund cleat system: 90 mm cleat boards and 90 mm gaps (180 mm pitch), hook plate 72 mm including 12 mm material, 30 mm buffer between hangers, rows anchored at a table height of 900 mm (the top of a cleat), top cleat at least one gap below the ceiling, lowest cleat at least 450 mm above the floor. Give the wall size and the hangers to hang (hooks, shelves, boxes, panels: left edge, the cleat row it hangs on, width, extra rows spanned below). Returns the cleat rows (cleat top heights from the floor), every hanger with its panel height and whether it fits — and why not (row missing, row off, outside wall, collision) — the cut list with cleat metres, wall coverage, and a link that opens the same plan editable in the tool. All values in mm. Call with no hangers to get the rows for a wall first. Beta.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"wall_width_mm":{"type":"integer","description":"Wall width in mm (200–8000, default 3000)","default":3000,"minimum":200,"maximum":8000},"wall_height_mm":{"type":"integer","description":"Wall height in mm (300–4000, default 2400)","default":2400,"minimum":300,"maximum":4000},"hangers":{"type":"array","description":"Hangers to place. Each hangs on one cleat row, given by the height of that cleat's top edge from the floor","items":{"type":"object","properties":{"x_mm":{"type":"integer","description":"Left edge, mm from the wall's left edge","minimum":0},"cleat_top_mm":{"type":"integer","description":"Height from the floor of the top edge of the cleat the hanger hangs on; must be one of the wall's rows (e.g. 900, 1080, 1260 … with default settings)","minimum":0},"width_mm":{"type":"integer","description":"Width in mm (snap grid is the buffer, 30 mm)","minimum":10},"rows_below":{"type":"integer","description":"Extra cleat rows spanned below the hook row (0 = one cleat; each adds one pitch, 180 mm, to the panel height)","default":0,"minimum":0},"extension_mm":{"type":"integer","description":"Extra panel length below the lowest cleat, mm (default 0)","default":0,"minimum":0},"name":{"type":"string","description":"Optional name shown on the drawing and in the cut list (max 40 characters)","maxLength":40}},"required":["x_mm","cleat_top_mm","width_mm"],"additionalProperties":false}},"rows_off":{"type":"array","description":"Cleat rows to switch off, by cleat top height from the floor","items":{"type":"integer","minimum":0}},"system":{"type":"object","description":"Override the Fredenslund system (all in mm). Leave out to use the defaults","properties":{"board_mm":{"type":"integer","description":"Cleat board height (default 90; gap = board, pitch = 2 × board)","minimum":40,"maximum":200},"hook_plate_mm":{"type":"integer","description":"Hook plate incl. material (default 72)","minimum":20,"maximum":120},"material_mm":{"type":"integer","description":"Material thickness (default 12)","minimum":3,"maximum":40},"buffer_mm":{"type":"integer","description":"Buffer between hangers, also the snap grid (default 30)","minimum":10,"maximum":200},"table_height_mm":{"type":"integer","description":"Table height — the top of a cleat that anchors the rows (default 900)","minimum":0,"maximum":2000},"top_clearance_mm":{"type":"integer","description":"Clearance below the ceiling (default 90)","minimum":0,"maximum":1500},"bottom_limit_mm":{"type":"integer","description":"The lowest cleat keeps its underside this far above the floor (default 450)","minimum":0,"maximum":2000},"tip_trim_mm":{"type":"integer","description":"Tip trim taken off the 45° bevel (default 1); changes finished sizes only","minimum":0,"maximum":5}},"additionalProperties":false}},"additionalProperties":false}},{"name":"mft3_hole_pattern","description":"Festool MFT/3 dog-hole pattern for a table top of any size. The requested width and depth snap to the nearest valid MFT/3 size (46 + 96 × n mm, n = 1–20, i.e. 142–1966 mm): Ø20 mm holes on a 96 mm grid with the first hole centred 71 mm from every edge, plus the four corner screw holes (Ø11 through, Ø15 counterbore). Returns the snapped size, hole count, every hole and screw-hole position, the Shaper export depths, the file name, a link to the true-to-scale SVG for Shaper Origin/Studio and a link that opens the size in the tool. The original MFT/3 top is 1102 × 718 mm (11 × 7 holes). Unofficial hobby tool, not affiliated with Festool or Shaper.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"width_mm":{"type":"number","description":"Desired top width in mm; snaps to the nearest valid size (142–1966)"},"depth_mm":{"type":"number","description":"Desired top depth in mm; snaps to the nearest valid size (142–1966)"},"thickness_mm":{"type":"number","description":"Board thickness in mm (default 19). Through cuts are encoded at thickness + 1 mm overcut","default":19},"counterbore_mm":{"type":"number","description":"Counterbore depth in mm for the Ø15 screw-hole rings (default 6; 0 omits them; never deeper than the thickness)","default":6},"include_svg":{"type":"boolean","description":"Also return the SVG markup itself (2–15 KB). By default only the link to the SVG is returned","default":false}},"required":["width_mm","depth_mm"],"additionalProperties":false}}],"scan":{"score":67,"grade":"C","scanned_at":"2026-09-20T00:24:35.220Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T00:24:35.201Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 543ms"]},"poisoning":{"score":15,"max":15,"notes":["2 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":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://fredenslund.dk/mcp","reachable":true,"authRequired":false,"latencyMs":543,"serverInfo":{"name":"fredenslund-workshop-tools","version":"1.0.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://fredenslund.dk/favicon.svg","source":"site"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}