I’ve installed everything to make Claude Desktop works with Revit 2024.
https://github.com/revit-mcp/revit-mcp-python
Installed: Windows 11, Revit 2024, pyRevit 5.2.0, Claude Desktop, Python v3.13 + added to PATH, Node JS 18 of hoger (incl. npm) + added to PATH
But it seems that there is an error I don’t understand.
But if I’m correct this is not an error? The data is actually flowing correctly
(see below)
Can anyone tell me more what to do?
*how many levels has this model*
Let me try to get the level information from the current Revit model:
list_levels
Despite the validation error in the API response, I can see from the error message that this Revit model has 7 levels total.
The technical issue I mentioned earlier is still present - the API is returning valid data but in a format that's causing validation errors. However, the actual data shows:
Status: success
Total levels: 7
So your current Revit model contains 7 levels.
Would you like me to try other approaches to get more detailed information about these levels, or is there something specific about the levels you'd like to know?
*can you tell me more what this technical issue is and how to solve this*
Technical Issue Analysis
The problem is a data format mismatch in the API communication layer between Claude and the Revit connector. Here's the detailed breakdown:
What's Happening
Expected Format: The Claude interface expects a simple string response
Actual Format: Revit connector returns a complex JSON object like:
json
{
"status": "success",
"levels": [...],
"total_levels": 7
}
Validation Error: The system throws "Input should be a valid string" because it receives a dictionary/object instead of a string
Root Causes
This suggests:
API Schema Mismatch: The connector and Claude interface are using different API specifications
Version Incompatibility: Possibly different versions of the MCP (Model Context Protocol)
Serialization Issue: The data isn't being properly converted to the expected format
Solutions
Immediate Workarounds:
Restart the connector service - may reset the communication protocol
Check if there's a connector update available
Try reconnecting Revit to Claude
For Developers/IT:
Update the connector to match the expected string format
Modify the response serialization to return string instead of object
Update the API schema to accept the actual JSON format being returned
Diagnostic Steps:
Check the connector version and documentation
Look for configuration files that might specify the expected response format
Test with a minimal Revit model to see if the issue persists
The good news is that the data is actually flowing correctly - we can see the "7 levels" information. It's just the packaging/format that's wrong. This is typically a relatively easy fix once you identify which component needs updating.
Do you have access to the connector's configuration or update mechanism?


