API VEGA

IFC MCP

IFC MCP позволяет вашему AI-ассистенту просматривать IFC/BIM-файлы, создавать IFC-файлы, формировать отчёты, открывать IFC-модели в просмотрщике и применять BCF viewpoints.

Как это работает

После установки задайте вашему AI-клиенту запрос на обычном языке. AI-клиент запускает IFC MCP, когда ему нужны инструменты IFC, и отправляет ваш запрос на локальный сервер.

IFC MCP читает IFC-файлы локально, выполняет необходимую логику IFC в локальном Pyodide runtime с IfcOpenShell и возвращает ответ в чат.

Хорошие примеры запросов:

  • Open examples/sample.ifc and summarize the model.

  • Count the walls, doors, windows, spaces, and property sets in examples/sample.ifc.

  • Find missing names, classifications, and suspicious property values in this IFC file.

  • Create a CSV room-area report from this IFC file.

  • Create a simple IFC file with one building, one storey, and four walls.

  • Open the IFC viewer and show examples/sample.ifc.

  • Apply C:\path\to\viewpoint.bcfzip in the open IFC viewer.

  • Clear the IFC viewer.

Если IFC MCP создает отчёт, BCF-файл или новый IFC-файл, он возвращает локальную ссылку для загрузки. Если вы попросили открыть модель, IFC MCP открывает локальную ссылку на просмотрщик. Если ваш AI-клиент автоматически не откроет эту ссылку, откройте её в браузере.

Установка

1. Предварительные требования

Установите Node.js 18.20 или новее с официальной страницы загрузки Node.js: официальная страница загрузки Node.js.

Выберите LTS-версию для вашей ОС, запустите установщик, затем снова запустите приложение, где вы хотите использовать IFC MCP.

IFC MCP использует npx, который включён в Node.js. Если ваше приложение позже скажет, что node или npx не найдены, переустановите Node.js LTS и повторно откройте приложение.

2. Выбор вашего клиента

Claude Desktop
Опция 1: Использовать Claude Desktop UI

  • Откройте Claude Desktop.

  • Откройте Settings (Настройки).

  • Откройте настройки разработчика Developer или Desktop app.

  • Нажмите Edit Config, если кнопка доступна. Это откроет конфигурационный файл IFC MCP для Claude Desktop.

  • Вставьте приведённый ниже JSON, сохраните файл и полностью выйдите и снова запустите Claude Desktop.

{
  "mcpServers": {
    "ifc-mcp": {
      "command": "npx",
      "args": ["-y", "ifc-mcp"]
    }
  }
}

Если файл уже содержит JSON, добавьте только запись ifc-mcp внутри существующего объекта mcpServers. Не создавайте второй объект mcpServers.

Опция 2: Открыть файл конфигурации напрямую

Используйте этот способ, если вы не видите Edit Config в Claude Desktop:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Вставьте тот же JSON из option 1, сохраните файл, затем полностью выйдите и снова запустите Claude Desktop.

Проверка

Чтобы проверить настройку, откройте Claude Desktop, начните новый чат, нажмите кнопку + рядом с полем чата и найдите Connectors. IFC MCP должен появиться там после перезапуска Claude Desktop. Вы должны увидеть инструменты, перечисленные в разделе How It Works выше.

Для подробной информации смотрите руководство Claude по локальному MCP-серверу: local MCP server guide.

VS Code Copilot
Опция 1: Использовать кнопку установки

Это откроет VS Code и добавит IFC MCP.

Если VS Code спросит, доверяете ли вы серверу, примите. Перезагрузите VS Code, если инструменты не появились. Откройте Chat и используйте кнопку tools/configure-tools, чтобы увидеть инструменты IFC MCP.

Опция 2: Добавить файл .vscode/mcp.json вручную

{
  "servers": {
    "IFC MCP": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "ifc-mcp"]
    }
  }
}

Перезагрузите VS Code после сохранения файла.

Откройте Chat и используйте кнопку tools/configure-tools, чтобы увидеть инструменты IFC MCP.

Для более детальной информации смотрите документацию по VS Code MCP server docs.

VS Code Codex
Опция 1: Использовать UI настроек Codex

  • Откройте VS Code.

  • Откройте панель Codex.

  • Откройте настройки Codex.

  • Выберите MCP servers.

  • Нажмите Add server.

  • Введите:

Name: ifc-mcp

  • Command: npx

  • Arguments: -y ifc-mcp

  • Сохраните сервер.

  • Перезапустите VS Code или начните новую сессию Codex.

  • Проверьте доступность инструментов IFC MCP в новой сессии Codex.

Опция 2: Использовать команду терминала

  • Откройте Terminal -> New Terminal в VS Code.

  • Вставьте и запустите:

codex mcp add ifc-mcp -- npx -y ifc-mcp
  • Перезапустите VS Code или начните новую сессию Codex.

  • Проверьте доступность инструментов IFC MCP в новой сессии Codex.

Для подробной информации смотрите Codex MCP docs.

VS Code Claude Code
Опция 1: Использовать проектный JSON-файл

  • Откройте ваш проект в VS Code.

  • Создайте или отредактируйте .mcp.json в корне проекта.

  • Добавьте этот JSON и сохраните файл:

{
  "mcpServers": {
    "ifc-mcp": {
      "command": "npx",
      "args": ["-y", "ifc-mcp"]
    }
  }
}
  • Перезапустите Claude Code в VS Code.

  • Введите /mcp и подтвердите сервер проекта, если Claude спросит.

  • Проверьте, что ifc-mcp подключён.

Опция 2: Использовать терминальную команду для всех проектов

claude mcp add --transport stdio ifc-mcp --scope user -- npx -y ifc-mcp

Затем снова откройте Claude Code в VS Code, наберите /mcp и проверьте, что ifc-mcp подключён.

Если команда claude не найдена, сначала установите Claude Code.

Для подробной информации смотрите Claude Code VS Code docs и Claude Code MCP docs.

VS Code Claude Code
Опция 1: Использовать проектный JSON-файл

  • Откройте ваш проект в VS Code.

  • Создайте или отредактируйте .mcp.json в корне проекта.

  • Добавьте этот JSON и сохраните файл:

{
  "mcpServers": {
    "ifc-mcp": {
      "command": "npx",
      "args": ["-y", "ifc-mcp"]
    }
  }
}
  • Перезапустите Claude Code в VS Code.

  • Введите /mcp и подтвердите сервер проекта, если Claude спросит.

  • Проверьте, что ifc-mcp подключён.

Опция 2: Использовать терминальную команду для всех проектов

claude mcp add --transport stdio ifc-mcp --scope user -- npx -y ifc-mcp

Затем снова откройте Claude Code в VS Code, наберите /mcp, и проверьте, что ifc-mcp подключён.

Если команда claude не найдена, установите Claude Code.

Для подробной информации смотрите Claude Code VS Code docs и Claude Code MCP docs.

Другие MCP клиенты
Добавьте эту запись сервера в конфигурацию вашего MCP клиента:

{
  "mcpServers": {
    "ifc-mcp": {
      "command": "npx",
      "args": ["-y", "ifc-mcp"]
    }
  }
}

Перезапустите MCP-клиент после сохранения конфигурации.

Для подробной информации смотрите Model Context Protocol docs.

Использование вашего собственного просмотрщика

Если ваше приложение уже имеет IFC-viewer, вы можете повторно использовать обычный интерфейс инструментов IFC MCP и выполнять действия просмотрщика в вашем приложении вместо открытия встроенного локального просмотрщика. MCP-клиент всё равно вызывает такие инструменты, как show-ifc-file и set-bcf-view; ваше приложение определяет только, что именно делают эти инструменты просмотра.

{
  "show-ifc-file": async ({ file_path }) => {
    return loadIfcIntoThisViewer(file_path);
  },

  "set-bcf-view": async ({ bcf_path }) => {
    return applyBcfToThisViewer(bcf_path);
  },

  "clear-ifc-viewer": async () => {
    return clearThisViewer();
  },
}
import { createServer } from "ifc-mcp";

const server = createServer({
  viewer: {
    "show-ifc-file": async ({ file_path }) => {
      return loadIfcIntoThisViewer(file_path);
    },

    "set-bcf-view": async ({ bcf_path }) => {
      return applyBcfToThisViewer(bcf_path);
    },

    "clear-ifc-viewer": async () => {
      return clearThisViewer();
    },
  },
});

Названия колбэков и имена аргументов соответствуют именам инструментов MCP и их схемам, поэтому второго механизма именования не требуется.

Локальная разработка

Для локальной разработки из этого репозитория:

npm install
npm test

Рабочее пространство включает .vscode/mcp.json, чтобы VS Code мог запускать сервер из этого репозитория.

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

IFC MCP держит работу с IFC на вашей машине. Он читает ваши IFC-файлы локально, выполняет локальный анализ IFC и открывает локальный просмотрщик. Он не публикует просмотрщик в интернет.

Сгенерированные отчёты, BCF-файлы и IFC-файлы являются временными локальными ссылками для загрузки.

IFC MCP не записывает сгенерированные выходные файлы в папку вашего проекта по умолчанию.

Используйте IFC MCP только с IFC/BIM-файлами и папками проектов, которым доверяете. Он может читать файлы, которые вы просите использовать, и неправильные или вводящие в заблуждение данные модели могут привести к неверным отчётам или сгенерированным IFC-файлам.