ifc-mcp
Enables AI assistants to inspect, create, and report on IFC/BIM files locally, and to open models in a viewer with BCF viewpoint support.
README
IFC MCP
IFC MCP lets your AI assistant inspect IFC/BIM files, create IFC files, create reports, open IFC models in a viewer, and apply BCF viewpoints.
How It Works
After installation, ask your AI client in normal language. The AI client starts IFC MCP when it needs the IFC tools and sends your request to the local server. IFC MCP reads IFC files locally, runs the needed IFC logic in a local Pyodide runtime with IfcOpenShell, and returns the answer to the chat.
Good example prompts:
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.
If IFC MCP creates a report, BCF file, or new IFC file, it returns a local download link. If you ask to view a model, IFC MCP opens a local viewer link. If your AI client does not open that link automatically, open it in your browser.
Installation
1. Prerequisites
Install Node.js 18.20 or newer from the official Node.js download page. Choose the LTS version for your operating system, run the installer, then reopen the app where you want to use IFC MCP.
IFC MCP uses npx, which is included with Node.js. If your app later says
node or npx is not found, reinstall Node.js LTS and reopen the app.
2. Choose your client
<a id="chatgpt-desktop"></a> <details> <summary><strong>ChatGPT desktop app</strong></summary>
ChatGPT desktop supports local MCP servers over STDIO.
- Open the ChatGPT desktop app.
- Open
Settings. - Select
Plugins, thenMCPs. - Click
Add. If prompted for a server type, chooseSTDIO. - Enter:
- Name:
ifc-mcp - Command to launch:
npx - First argument:
-y - Second argument:
ifc-mcp
- Name:
- Leave the environment variable fields empty and save the server.
- Restart the ChatGPT desktop app.
- Start a new chat, type
/mcp, and confirm thatifc-mcpis connected.
For more detail, see OpenAI's MCP documentation.
</details>
<a id="claude-desktop"></a> <details> <summary><strong>Claude Desktop</strong></summary>
Option 1: Use the Claude Desktop UI
- Open Claude Desktop.
- Open
Settings. - Open
DeveloperorDesktop appdeveloper settings. - Click
Edit Configif that button is available. This opens the Claude Desktop MCP config file. - Paste the JSON below, save the file, then fully quit and reopen Claude Desktop.
{
"mcpServers": {
"ifc-mcp": {
"command": "npx",
"args": ["-y", "ifc-mcp"]
}
}
}
If the file already contains JSON, add only the ifc-mcp entry inside the
existing mcpServers object. Do not create a second mcpServers object.
Option 2: Open the config file directly
Use this only if you do not see Edit Config in Claude Desktop:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Paste the same JSON from Option 1, save the file, then fully quit and reopen Claude Desktop.
Check
To check the setup, open Claude Desktop, start a new chat, click the + button
near the chat box, and look for Connectors. IFC MCP should appear there after
Claude Desktop has restarted. You should see the tools listed in the
How It Works section above.
For more detail, see Claude's local MCP server guide.
</details>
<a id="vs-code-mcp"></a> <details> <summary><strong>VS Code Copilot</strong></summary>
Option 1: Use the install button
This opens VS Code and adds IFC MCP.
If VS Code asks whether you trust the server, accept it. Reload VS Code if the tools do not appear. Open Chat and use the tools/configure-tools button to see the IFC MCP tools.
Option 2: Add .vscode/mcp.json manually
{
"servers": {
"IFC MCP": {
"type": "stdio",
"command": "npx",
"args": ["-y", "ifc-mcp"]
}
}
}
Reload VS Code after saving the file.
Open Chat and use the tools/configure-tools button to see the IFC MCP tools.
For more detail, see the VS Code MCP server docs.
</details>
<a id="codex-in-vs-code"></a> <details> <summary><strong>VS Code Codex</strong></summary>
Option 1: Use the Codex settings UI
- Open VS Code.
- Open the Codex panel.
- Open Codex settings.
- Select
MCP servers. - Click
Add server. - Enter:
- Name:
ifc-mcp - Command:
npx - Arguments:
-y ifc-mcp
- Name:
- Save the server.
- Reload VS Code or start a new Codex session.
- Check that the IFC MCP tools are available in the new Codex session.
Option 2: Use the terminal command
- Open
Terminal -> New Terminalin VS Code. - Paste and run:
codex mcp add ifc-mcp -- npx -y ifc-mcp
- Reload VS Code or start a new Codex session.
- Check that the IFC MCP tools are available in the new Codex session.
For more detail, see the Codex MCP docs.
</details>
<a id="claude-code-in-vs-code"></a> <details> <summary><strong>VS Code Claude Code</strong></summary>
Option 1: Use a project JSON file
- Open your project in VS Code.
- Create or edit
.mcp.jsonin the project root. - Add this JSON and save the file:
{
"mcpServers": {
"ifc-mcp": {
"command": "npx",
"args": ["-y", "ifc-mcp"]
}
}
}
- Reopen Claude Code in VS Code.
- Type
/mcpand approve the project server if Claude asks. - Check that
ifc-mcpis connected.
Option 2: Use the terminal command for all projects
claude mcp add --transport stdio ifc-mcp --scope user -- npx -y ifc-mcp
Then reopen Claude Code in VS Code, type /mcp, and check that ifc-mcp is
connected.
If the claude command is not found, install Claude Code first.
For more detail, see the Claude Code VS Code docs and Claude Code MCP docs.
</details>
<a id="other-mcp-clients"></a> <details> <summary><strong>Other MCP clients</strong></summary>
Add this server entry to your MCP client config:
{
"mcpServers": {
"ifc-mcp": {
"command": "npx",
"args": ["-y", "ifc-mcp"]
}
}
}
Restart the MCP client after saving the config.
For more detail, see the Model Context Protocol docs.
</details>
Use Your Own Viewer
If your app already has an IFC viewer, you can reuse IFC MCP's normal tool
interface and apply viewer actions in your app instead of opening the default
local viewer. The MCP client still calls tools like show-ifc-file and
set-bcf-view; your app only defines what those viewer tools do.
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();
},
},
});
The callback names and argument names match the MCP tool names and schemas, so there is no second naming system to learn.
Local Development
For local development from this checkout:
npm install
npm test
The workspace includes .vscode/mcp.json, so VS Code can run the server from
this checkout.
Security
IFC MCP keeps the IFC work on your own machine. It reads your IFC files locally, runs the IFC analysis locally, and opens a local viewer. It does not publish the viewer to the public internet.
Generated reports, BCF files, and IFC files are temporary local download links. IFC MCP does not write generated output files into your project folder by default.
Use IFC MCP only with IFC/BIM files and project folders you trust. It can read the files you ask it to use, and incorrect or misleading model data can lead to wrong reports or generated IFC files.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。