Skip to main content
Glama
vascocardosondBIM

mcp-server-for-revit

mcp-server-for-revit

MCP-сервер (Node.js) для взаимодействия с Autodesk Revit из ИИ-ассистентов (Claude, Cursor и др.).

Этот репозиторий содержит две вещи, которые следует различать:

  1. Оригинальный MCP (Node-мост) — соответствует экосистеме mcp-servers-for-revit: предоставляет операции Revit как инструменты MCP; сервер общается с официальным плагином Revit по протоколу TCP (по умолчанию порт 8080), а не через WebSocket в этом потоке моста.

  2. Расширение этого форкадвойной порт в мосту (REVIT_PLUGIN_PORT / REVIT_SKETCH_PORT) и отдельная надстройка RevitSketchPoC (C# / WPF) в папке revit-plugin/RevitSketchPoC/, которая прослушивает другой порт (по умолчанию 8081) и обрабатывает только инструмент create_house_from_sketch (интерпретация изображения + создание стен/комнат/дверей в Revit) с настраиваемыми в плагине Ollama или Gemini.

[!NOTE] Для полноценной работы вам потребуется оригинальный плагин Revit (порт 8080) и, если вы используете эскизы через MCP или интерфейс, RevitSketchPoC (порт 8081). Инструкции к официальному плагину: mcp-servers-for-revit. Подробности PoC: revit-plugin/RevitSketchPoC/README.md.

Безопасность и Git

  • Не коммитьте файлы .env, ключи в JSON или локальные копии с секретами. Репозиторий включает .gitignore для node_modules/, артефактов .NET (bin/ / obj/), .env* и pluginsettings.local.json.

  • Файл deploy/pluginsettings.json в PoC должен содержать пустой GeminiApiKey в Git; используйте локальную копию или следуйте примеру pluginsettings.example.json.

Настройка (MCP-клиент)

Claude Code

claude mcp add mcp-server-for-revit -- npx -y mcp-server-for-revit

Claude Desktopclaude_desktop_config.json:

{
    "mcpServers": {
        "mcp-server-for-revit": {
            "command": "npx",
            "args": ["-y", "mcp-server-for-revit"],
            "env": {
                "REVIT_PLUGIN_PORT": "8080",
                "REVIT_SKETCH_PORT": "8081"
            }
        }
    }
}

Перезапустите клиент. Значок инструментов укажет на то, что MCP подключен.

Два порта, два плагина

Переменная окружения

Значение по умолчанию

TCP-назначение

REVIT_PLUGIN_PORT

8080

Оригинальный плагин — все инструменты, кроме create_house_from_sketch

REVIT_SKETCH_PORT

8081

RevitSketchPoCтолько create_house_from_sketch

Инструмент create_house_from_sketch использует REVIT_SKETCH_PORT (или data.pluginPort в запросе). Поле pluginPort не отправляется в Revit (мост удаляет его). Остальные инструменты используют REVIT_PLUGIN_PORT.

Поддерживаемые инструменты MCP

Инструмент

Описание

get_current_view_info

Информация об активном виде

get_current_view_elements

Элементы на активном виде

get_available_family_types

Доступные типы семейств

get_selected_elements

Выбранные элементы

get_material_quantities

Объемы материалов

ai_element_filter

Интеллектуальный запрос к модели

analyze_model_statistics

Статистика модели

create_point_based_element

Элементы на основе точек

create_line_based_element

Элементы на основе линий

create_surface_based_element

Элементы на основе поверхностей

create_grid

Сетка

create_level

Уровни

create_room

Комнаты

create_dimensions

Размеры

create_structural_framing_system

Каркасная система

delete_element

Удаление по ID

operate_element

Операции (выбор, цвет, скрытие и т.д.)

color_elements

Раскраска по параметру

tag_all_walls / tag_all_rooms

Маркировка

export_room_data

Экспорт данных о комнатах

store_project_data / store_room_data / query_stored_data

Локальные метаданные

send_code_to_revit

Отправка C# для выполнения в Revit

create_house_from_sketch

Изображение эскиза → интерпретация LLM (Ollama или Gemini в RevitSketchPoC) → стены/комнаты/двери

say_hello

Проверка соединения

Разработка (Node)

npm install
npm run build

Sketch PoC (C# / WPF)

Текущая поддерживаемая реализация находится в revit-plugin/RevitSketchPoC/ (UI, TCP-маршрутизатор MCP, Ollama/Gemini, транзакции Revit). Папка samples/RevitSketchPoC/ может существовать как старая ссылка; следуйте README плагина в revit-plugin/RevitSketchPoC/README.md.

Краткий поток:

  1. Пользователь отправляет изображение (через ленту Sketch AI PoC или MCP create_house_from_sketch).

  2. Плагин вызывает LLM (Ollama или Gemini согласно pluginsettings.json).

  3. Структурированный ответ → создание элементов в Transaction в Revit.

Лицензия

MIT

Related MCP Connectors