RevitMCPBridge

"Teaching AI to Build"

Episode 3: First Autonomous Breakthrough

December 2024

THE TEST

December 2024

REVIT

[ Empty Floor Plan ]

Project1.rvt

Start with nothing. End with something.

THE PROMPT

Claude Code

> Create a small office floor plan with perimeter walls, interior partitions, and a lobby area.

Claude: Let me check the available levels and wall types, then create your floor plan...

Natural language. That's all it took.

CLAUDE'S PROCESS

STEP 1: Query the model
getLevels() β†’ Level 1 (ID: 30) at 0'-0"
getWallTypes() β†’ Generic - 8" (ID: 441451)
STEP 2: Plan the geometry
Building: 80' x 50' = 4,000 SF
Lobby: 20' x 25' near entrance
Offices: 10' x 12' typical
STEP 3: Execute commands
createWall() x 30

COMMANDS FLOWING TO REVIT

{"method":"createWall","params":{"startPoint":[0,0,0],

"endPoint":[80,0,0],"levelId":30,"height":10}}

{"method":"createWall","params":{"startPoint":[80,0,0],

"endPoint":[80,50,0],"levelId":30,"height":10}}

{"method":"createWall","params":{"startPoint":[80,50,0],

"endPoint":[0,50,0],"levelId":30,"height":10}}

... 27 more commands ...

Precise. Coordinated. Autonomous.

THE MOMENT

BEFORE
Empty
β†’
AFTER
IT WORKED.

WHAT THIS MEANT

βœ“ AI can reason about architectural space
βœ“ AI can translate intent to precise geometry
βœ“ AI can execute multi-step workflows autonomously
βœ“ The bridge actually carries real load

This wasn't a demo. This was a foundation.

IT WASN'T ALL SMOOTH

PROBLEM 1: Transaction Rollback
Walls created, then disappeared. Revit warnings were causing automatic undo.
PROBLEM 2: Coordinate Confusion
First attempts used wrong unitsβ€”inches instead of feet. Walls 12x smaller than expected.
PROBLEM 3: Overlapping Walls
No collision detection. Walls placed on top of each other at corners.

Every bug was a lesson. Every fix, progress.

THE WARNINGSWALLOWER PATTERN

// Before: Transaction would rollback on warnings

trans.Commit(); // ← Warnings = failure

// After: Suppress warnings, let it complete

using (var swallower = new WarningSwallower())

{

trans.SetFailureHandlingOptions(

swallower.GetOptions());

trans.Commit(); // ← Warnings ignored

}

A pattern we'd use 85+ times across the codebase.

FIRST SUCCESS: THE NUMBERS

30
walls created
11
rooms formed
4,000
square feet
0
mouse clicks

< 60 seconds total execution time

THE PARADIGM SHIFT

BEFORE

"Draw wall here"
"Extend to there"
"Add door at X"

Human drives
every action

β†’
AFTER

"Create a room"
(Claude decides
where, how, what)

AI drives
from intent

You describe the outcome. Claude figures out the how.

BUT THIS WAS JUST THE BEGINNING

30 methods β†’ 705+ methods

30 Growth: 1,400% 705

Next Episode:

"From Methods to Intelligence"

How 30 methods became 705 methods.
How commands became comprehension.

BIM Ops Studio

www.bimopsstudio.com

1 / 13
Audio