{
  "product": "NativeBIM",
  "server": "nativebim-mcp",
  "version": "0.3.1",
  "source": {
    "command": "node docs/launch/site/gen-tools.js",
    "script": "docs/launch/site/gen-tools.js",
    "registry": "packages/mcp/src/registry.js",
    "listingBytes": 43803,
    "listingBudgetBytes": 65536
  },
  "total": 24,
  "core": 0,
  "groups": [
    {
      "id": "read",
      "label": "Open, read and ask",
      "blurb": "Open an IFC file, summarise it, read elements and answer questions with the GlobalIds behind every answer.",
      "tools": [
        {
          "name": "bim_open",
          "title": "Open model",
          "desc": "Open a local IFC file (IFC2X3, IFC4 or IFC4X3; .ifc or .ifczip) and return a model handle with its schema, units, stories and element counts. A Revit .rvt or .rfa opens as file metadata only (version, worksharing, links, thumbnail) with the IFC export steps; its geometry is not read. The file itself is never modified. See bim_help({tool:'bim_open'})",
          "access": "read"
        },
        {
          "name": "bim_close",
          "title": "Close model",
          "desc": "Close an open model when you are done with it and free its memory and handles. A model with unsaved edits is refused (NB_STATE_CONFLICT, model-dirty) unless discard is true, which drops them. Never touches files on disk. See bim_help({tool:'bim_close'})",
          "access": "destructive"
        },
        {
          "name": "bim_summary",
          "title": "Model summary",
          "desc": "Overview of an open model: what kind of building it is, how many floors with elevations, spaces and areas, element counts by class, types, materials, units and georeferencing. Call it before querying; detail full adds per-story breakdowns. See bim_help({tool:'bim_summary'})",
          "access": "read"
        },
        {
          "name": "bim_get",
          "title": "Get elements",
          "desc": "Return every detail of elements named by GlobalId or #id (50 at most): attributes, type, story, property and quantity sets, materials, classifications, relations, placement and bounding box. Use it for known elements; to find elements use bim_query. File text is fenced as data. See bim_help({tool:'bim_get'})",
          "access": "read"
        },
        {
          "name": "bim_query",
          "title": "Query elements",
          "desc": "Find, list and count elements in an open model by class, story, space, name, property value (fire rating, sill height) or material, and group counts by story or type. Every row carries its GlobalId. Pages with limit and cursor. For all details of a few known elements use bim_get. See bim_help({tool:'bim_query'})",
          "access": "read"
        },
        {
          "name": "bim_knowledge",
          "title": "Design knowledge",
          "desc": "Look up sourced facts before you generate, edit or screen a building: dimensions, clearances, area standards, IFC authoring and exporter behaviour. list shows the packs, load pages one by sector, search takes your own words, get returns one entry with its detail. Read-only, local. See bim_help({tool:'bim_knowledge'})",
          "access": "read"
        },
        {
          "name": "bim_history",
          "title": "Edit history",
          "desc": "List the edits already made to a model, newest to oldest: message, ops, counts added, changed and deleted, validation delta, and which can be undone. Pass tx for one transaction's full change set. To reverse an edit use bim_undo. See bim_help({tool:'bim_history'})",
          "access": "read"
        }
      ]
    },
    {
      "id": "check",
      "label": "Check and measure",
      "blurb": "Schema and rule validation, screening against named code and zoning tables, areas by a stated rule set and edition, quantities.",
      "tools": [
        {
          "name": "bim_check",
          "title": "Check model",
          "desc": "Validate (check) an open model against the IFC schema and list its problems with severity and GlobalIds: relationship rules, completeness lints, an IDS file, code screening (zoning, egress, parking) with cited findings, or clashes. Gives a result handle for BCF export. Drafts for review by the licensed professional of record. See bim_help({tool:'bim_check'})",
          "access": "read"
        },
        {
          "name": "bim_area",
          "title": "Area measurement",
          "desc": "Measure floor areas by a named rule set: gross, net, or BOMA office (Z65.1) and industrial (Z65.2) editions, grouped by story, use or tenant. Returns rentable and usable figures with the spaces behind each one and the edition used. Areas are computed by NativeBIM, not a certified BOMA measurement. See bim_help({tool:'bim_area'})",
          "access": "read"
        },
        {
          "name": "bim_quantities",
          "title": "Quantities and schedules",
          "desc": "Compute quantities (count, length, area, volume, net and gross) for a selection grouped by type, story or property, or build a standard schedule (doors, windows, rooms, walls, slabs). Says whether each figure came from the file's quantity sets or from geometry. See bim_help({tool:'bim_quantities'})",
          "access": "read"
        }
      ]
    },
    {
      "id": "edit",
      "label": "Edit",
      "blurb": "Edits are dry-run diffs by default, validated before apply, applied as one transaction and reversible.",
      "tools": [
        {
          "name": "bim_edit",
          "title": "Edit model",
          "desc": "Change a model as one transaction: set properties or attributes (fire rating), move, copy, delete, rename; set the site location (latitude, longitude); add walls, floor slabs, rooms, doors, windows, openings, MEP runs and terminals. Columns, stories and grids are not built yet. Dry run by default; commit with dryRun:false or commit. See bim_help({tool:'bim_edit'})",
          "access": "destructive"
        },
        {
          "name": "bim_repair",
          "title": "Repair model",
          "desc": "Repair an open model as a guarded edit: dangling references, repeated, invalid or missing GlobalIds, elements outside every story, orphaned stories, missing owner history (IFC2X3), skewed placements, wrongly wound faceted shells, empty representations, duplicate property sets. Previews each fix by NB_ code; commit applies it, bim_undo reverses it. See bim_help({tool:'bim_repair'})",
          "access": "destructive"
        },
        {
          "name": "bim_undo",
          "title": "Undo or redo",
          "desc": "Undo the last committed transactions on a model, or redo them with redo:true. Returns what changed back and the validation delta. Redo stays available until the next new edit. Undo works on the open model only and never touches files on disk. See bim_help({tool:'bim_undo'})",
          "access": "destructive"
        }
      ]
    },
    {
      "id": "document",
      "label": "Drawings and export",
      "blurb": "Draft sheets and schedules, and export to IFC and the other formats.",
      "tools": [
        {
          "name": "bim_drawing",
          "title": "Drawing sheet",
          "desc": "Make a floor plan drawing sheet for a story, with title block, grids, tags, dimensions and scale bar, as new PDF or SVG files; profile portland-esubmittal applies that city's sheet rules. Area plans, schedules and DXF are not built yet. Sheets are marked NOT FOR CONSTRUCTION by default; outputs are drafts for review by the licensed professional of record. See bim_help({tool:'bim_drawing'})",
          "access": "write"
        },
        {
          "name": "bim_export",
          "title": "Export files",
          "desc": "Save an open model or its data as a new file: edited IFC (IFC4, IFC4X3, IFC2X3 or ifcZIP), schedules as Excel (XLSX) or CSV, COBie handover data, BCF issues from a bim_check result, glTF, the design log of edits, or STEP. IFC is validated before writing. Never overwrites a file. See bim_help({tool:'bim_export'})",
          "access": "write"
        }
      ]
    },
    {
      "id": "jobs",
      "label": "Jobs",
      "blurb": "Long calls run as jobs that survive a restart as records.",
      "tools": [
        {
          "name": "bim_job_status",
          "title": "Job status",
          "desc": "Is a background job still running? Report queued (place in queue), running (progress), done, failed, cancelled or lost; leave job out to list recent jobs, such as a long export. Instant, never waits. The finished result comes from bim_job_result. See bim_help({tool:'bim_job_status'})",
          "access": "read"
        },
        {
          "name": "bim_job_result",
          "title": "Job result",
          "desc": "Return a finished job's result exactly as the original tool would have, or its current status if it is still running. waitMs waits up to 25 s for it to finish. A failed, cancelled or lost job returns its error. See bim_help({tool:'bim_job_result'})",
          "access": "read"
        },
        {
          "name": "bim_job_cancel",
          "title": "Cancel job",
          "desc": "Cancel a queued or running job. A queued job is dropped at once; a running one stops at its next safe point and nothing it was doing is applied. Cancelling a finished job changes nothing and reports its final state. See bim_help({tool:'bim_job_cancel'})",
          "access": "write"
        }
      ]
    },
    {
      "id": "server",
      "label": "Help, licence and server",
      "blurb": "Reference and help topics, version and release notes, licence, settings and updates, bug reports.",
      "tools": [
        {
          "name": "bim_help",
          "title": "NativeBIM help",
          "desc": "How to use NativeBIM tools: fields, examples and schema of one tool, conventions (SI units, handles, previews, jobs), and what each error code (NB_*) means. Call with no arguments for an overview of every tool. See bim_help({tool:'bim_help'})",
          "access": "read"
        },
        {
          "name": "bim_server_info",
          "title": "Server info",
          "desc": "Report this server's version, build, mode and process epoch, the open models and jobs, the worker state, the limits, and the status of licensing, updates and telemetry. Use it to diagnose a problem or to see what is open. See bim_help({tool:'bim_server_info'})",
          "access": "read"
        },
        {
          "name": "bim_versions",
          "title": "Versions and changes",
          "desc": "List NativeBIM versions with their release notes, newest at the top, and say whether a newer version is available and how this install updates (auto, notify or off). Reads the notes bundled with this build and the last update check; it does not go online. See bim_help({tool:'bim_versions'})",
          "access": "read"
        },
        {
          "name": "bim_license",
          "title": "Licence status and activation",
          "desc": "Report or set the NativeBIM licence. Keys are checked offline; nothing is sent. action \"status\" (default) gives tier, key source, key id and what the tier opens; \"activate\" checks a CSLV1 key and stores it; \"deactivate\" removes the stored key; \"register\" returns the free sign-up link. See bim_help({tool:'bim_license'})",
          "access": "write"
        },
        {
          "name": "bim_settings",
          "title": "Settings and updates",
          "desc": "Show or change NativeBIM's own settings: update mode (off, notify, auto), update channel (stable, beta), daily usage counts and failure reports; or check for and install an update now. Never reads or changes a model. An update installs only when its signature verifies. See bim_help({tool:'bim_settings'})",
          "access": "destructive"
        },
        {
          "name": "bim_report_bug",
          "title": "Report a NativeBIM bug",
          "desc": "File a bug about NativeBIM itself. Sends what you type (title, description, optional steps, expected, actual, severity, the bim_* tool) plus versions and model counts. Paths, file names, GlobalIds, IFC records and e-mails are redacted before sending; model content only in a repro sent with reproConsent. See bim_help({tool:'bim_report_bug'})",
          "access": "write"
        }
      ]
    }
  ],
  "designed": [
    {
      "name": "bim_build_plan",
      "group": "other"
    },
    {
      "name": "bim_generate",
      "group": "generate"
    },
    {
      "name": "bim_structure",
      "group": "other"
    },
    {
      "name": "bim_testfit",
      "group": "generate"
    },
    {
      "name": "bim_view",
      "group": "read"
    }
  ],
  "network": [
    "bim_report_bug",
    "bim_settings"
  ],
  "notices": [
    "NativeBIM by NativeCAD",
    "Areas are computed by NativeBIM, not a certified BOMA measurement.",
    "NativeBIM is not affiliated with, endorsed by or sponsored by the companies and organizations named here.",
    "Outputs are drafts for review by the licensed professional of record."
  ]
}
