We All Know It’s a TRON Reference Right?
I built a live connection between C (Claude) and Revit. From scratch. And with a ton of help. And yes, Revit 2027 was just released, and it has one already, but I did this over the last 2 weeks and mine works with 2026 and I wanted to share!
Because it’s more about the journey.
No existing project to start from. No local Python environment. No examples for me to copy/paste from. Just me, C, and a lot of iterative problem-solving. And a very long conversation.
The goal was simple enough: let C read data from a live Revit model through natural language. Eventually write to it too. I have seen folks do this on the webs. Like I said, 2027 has it. I know someone is selling one on the webs.
But I had such luck (and frankly fun) with my vibe coding I figured I would use C to talk to C.
What came out the other side is a two-part system: a C# add-in that runs inside Revit and hosts a local HTTP server, and a Python MCP server that bridges Claude Desktop to that add-in.
This was quite the learning experience for me.
But let’s back up.
Natural language interaction with a computer has been the dream since before Microsoft Bob. So many sci-fi shows and movies make talking to the computer and getting an answer look so easy and super cool.

And I saw Michael Kilkelly‘s posts that got me motivated to see what I could do. Don’t get me wrong, he is light years beyond where I expect to get, (did you see the whole family from image thing?!) but it was a nice nudge.
But first I needed to know what I needed.
That wasn’t hard to find out. I needed a Model Context Protocol (MCP) server to be the bridge between my AI platform and Revit. MCP is an open source protocol designed specifically to let AIs communicate with other software, databases, etc. It was doable.
That is often the biggest hurdle for me: is it possible? And luckily others had scouted ahead.
So I needed an MCP. Now, I am not oblivious to the controversy around AI. It’s probably growing too fast… it could impact the job market… it’s using a lot of resources. And frankly, seeing that the first thing I had to build was named after the villain in TRON did not make me feel much better.
I am trying to pay attention to what is going on and be cognizant of the possible impact.
However, that rabbit is already out of the hat. I will try to work in this new realm responsibly. And always fight for the users.
So the easy part was done. What came next was a massive chat thread over several days (not all at once), multiple versions of the project to compile, test, and report back about, and some of me telling the AI that it was seeing things.
Part 2 we get pretty nerdy. Not that the TRON reference didn’t already take us way over that line.

