Skip to main content
Glama

Extrabold Tools Gridfinity

Generate Gridfinity Grid

generate_gridfinity_grid
Read-onlyIdempotent

Generate a Gridfinity baseplate grid by columns and rows, returning the calculated millimeter dimensions and a shareable Extrabold Tools URL.

Input Schema

NameRequiredDescriptionDefault
rowsYesNumber of Gridfinity rows across the depth.
columnsYesNumber of Gridfinity columns across the width.
versionNo5.3
toleranceNoExperimental fit setting saved per printer. For dovetails, 0 mm gives the largest male tab; higher values make it smaller, up to 0.5 mm. Also affects CLICKbase clips and magnet holes. Print the tolerance test package to choose a dovetail fit. Normal bin pockets keep fixed geometry; the included bin-fit sample is a reference check. Values: none = 0 mm, tight = 0.1 mm, standard = 0.2 mm, loose = 0.3 mm, very-loose = 0.4 mm, extra-loose = 0.5 mm.standard
linkOriginNoLink origin tag added as the org query parameter for attribution.mcp
marginTypeNosolid
borderRadiusNo
magnetHeightNoHeight or thickness of the magnets in millimeters.
baseplateTypeNoBaseplate style to generate.normal
gridUnitDepthNoDepth of one grid unit in millimeters. Standard Gridfinity uses 42.
gridUnitWidthNoWidth of one grid unit in millimeters. Standard Gridfinity uses 42.
plateMarginMmNo
screwHeadSizeNoDiameter of the screw head in millimeters.
screwHoleSizeNoDiameter of the screw shaft in millimeters.
splitStrategyNofewerParts
toggleMagnetsNo
magnetDiameterNoDiameter of the magnets in millimeters.
partsConnectorNoExperimental dovetails interlock split pieces without separate parts and use your printer tolerance for male tabs. They require Split to Build Plates and work with all baseplate types. Clips connect split seams and optional outer edges; the printable clip model is included (not compatible with Skeleton).none
magnetDirectionNoWhich side of the baseplate magnets are inserted from.top
magnetHoleStyleNoRound holes are sized with the magnet diameter. Crush ribs use a wavy profile with flexible ribs that grip the magnet.cylinder
splitOffMarginsNoCreate outer margins as separate strips while keeping corners attached to top or bottom strips.
toggleScrewHolesNo
edgeConnectorSidesNo
printerBuildVolumeNo
splitToBuildplatesNoOverride automatic printer-fit splitting. When omitted with a printer build volume, splitting is enabled only when needed.
enableEdgeConnectorsNo
connectMarginCrossingsNoAlso place a dovetail wherever a split edge crosses from grid cells into a margin region. Off: dovetails only at cell-to-cell crossings.
removeHolesOnSplitLinesNoRemove screw holes that fall on split edges.
toggleMagnetReleaseHoleNoAdd through-holes so magnets can be pushed back out from the opposite side.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / connectMarginCrossings
      Added value: +{
      +  "default": true,
      +  "description": "Also place a dovetail wherever a split edge crosses from grid cells into a margin region. Off: dovetails only at cell-to-cell crossings.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / partsConnector / description
      Added value: +"Experimental dovetails interlock split pieces without separate parts and use your printer tolerance for male tabs. They require Split to Build Plates and work with all baseplate types. Clips connect split seams and optional outer edges; the printable clip model is included (not compatible with Skeleton)."
    • addedInput schema / properties / tolerance / description
      Added value: +"Experimental fit setting saved per printer. For dovetails, 0 mm gives the largest male tab; higher values make it smaller, up to 0.5 mm. Also affects CLICKbase clips and magnet holes. Print the tolerance test package to choose a dovetail fit. Normal bin pockets keep fixed geometry; the included bin-fit sample is a reference check. Values: none = 0 mm, tight = 0.1 mm, standard = 0.2 mm, loose = 0.3 mm, very-loose = 0.4 mm, extra-loose = 0.5 mm."
    • changedInput schema / properties / version / default
      Previous value: -"0.5.21"New value: +"5.3"
  2. Changed5 schema fields changed
    • addedInput schema / properties / edgeConnectorSides
      Added value: +{
      +  "default": {
      +    "back": true,
      +    "front": true,
      +    "left": true,
      +    "right": true
      +  },
      +  "properties": {
      +    "back": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "front": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "left": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "right": {
      +      "default": false,
      +      "type": "boolean"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / enableEdgeConnectors
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedInput schema / properties / marginType / enum
      Added value: +[
      +  "solid",
      +  "margin-fit",
      +  "halfgrid",
      +  "overtile"
      +]
    • addedInput schema / properties / partsConnector / enum
      Added value: +[
      +  "none",
      +  "clips",
      +  "dovetails"
      +]
    • addedInput schema / properties / splitStrategy / enum
      Added value: +[
      +  "fewerParts",
      +  "balanced",
      +  "tJunctions"
      +]
  3. Changed2 schema fields changed
    • addedInput schema / properties / splitOffMargins
      Added value: +{
      +  "default": false,
      +  "description": "Create outer margins as separate strips while keeping corners attached to top or bottom strips.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / version / default
      Previous value: -"0.5.20"New value: +"0.5.21"
  4. First observed

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds only that the call returns calculated millimeter dimensions and a shareable Extrabold Tools URL; it says nothing about defaults, whether splitting behavior is triggered, or how the URL is persisted, which would matter for a 29-parameter geometry tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; the verb and resource come first and the output note follows. It is lean, though for a tool with 29 parameters it is arguably thinner than 'appropriately sized' implies.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description must carry return-value explanation; it gives only a one-line summary. For a 29-parameter tool with nested objects, printer build volumes, split strategies, and connector options, there is no guidance on the splitting model, defaults, or practical constraints, leaving significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 66%, so the schema documents most parameters itself. The description only echoes the required columns/rows concept and never touches the many geometry, tolerance, magnet, or split options; the baseline 3 applies since the description adds essentially nothing beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Generate a Gridfinity baseplate grid by columns and rows') and even characterizes the output (mm dimensions plus a shareable URL). However, it never distinguishes itself from the sibling generate_gridfinity_baseplate or generate_gridfinity_drawer_baseplate, so an agent cannot tell from the text which of the baseplate-producing tools to pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no exclusions, and no named alternatives despite six sibling tools with overlapping names. The agent is left to infer that 'grid by columns and rows' is the selecting condition, which is weak routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources