ifc-mcp
v0.1.6
Published
Local MCP server for IFC/BIM workflows with generated IfcOpenShell Python in Pyodide and an IFC viewer.
Maintainers
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.
Use IFC MCP
After installation, ask your AI client in normal language. You do not need to know the technical tool names.
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.
When the viewer opens, IFC MCP returns a local viewer link. If your AI client does not open it automatically, open that link 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
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
Use IFC MCP section above.
For more detail, see Claude's local MCP server guide.
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.
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.
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-mcpThen 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.
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.
Local Development
For local development from this checkout:
npm install
npm testThe workspace includes .vscode/mcp.json, so VS Code can run the server from
this checkout.
Security
IFC MCP runs AI-generated code locally in a Pyodide runtime. Use it only in trusted workspaces.
Generated files are returned as temporary localhost download links. IFC MCP does not write generated output files into your working directory by default.
