{
  "markdown": "# IFC MCP\n\nIFC MCP lets your AI assistant inspect IFC/BIM files, create IFC files, create\nreports, open IFC models in a viewer, and apply BCF viewpoints.\n\n## How It Works\n\nAfter installation, ask your AI client in normal language. The AI client starts\nIFC MCP when it needs the IFC tools and sends your request to the local server.\nIFC MCP reads IFC files locally, runs the needed IFC logic in a local Pyodide\nruntime with IfcOpenShell, and returns the answer to the chat.\n\n[![Watch IFC MCP with Claude demo on YouTube](https://cdn.jsdelivr.net/npm/ifc-mcp@0.1.17/docs/ifc-mcp-demo-thumbnail.jpg)](https://youtu.be/Y4IgtZVmUeE)\n\nGood example prompts:\n\n- `Open examples/sample.ifc and summarize the model.`\n- `Count the walls, doors, windows, spaces, and property sets in examples/sample.ifc.`\n- `Find missing names, classifications, and suspicious property values in this IFC file.`\n- `Create a CSV room-area report from this IFC file.`\n- `Create a simple IFC file with one building, one storey, and four walls.`\n- `Open the IFC viewer and show examples/sample.ifc.`\n- `Apply C:\\path\\to\\viewpoint.bcfzip in the open IFC viewer.`\n- `Clear the IFC viewer.`\n\nIf IFC MCP creates a report, BCF file, or new IFC file, it returns a local\ndownload link. If you ask to view a model, IFC MCP opens a local viewer link.\nIf your AI client does not open that link automatically, open it in your\nbrowser.\n\n## Installation\n\n### 1. Prerequisites\n\nInstall Node.js 18.20 or newer from the [official Node.js download page](https://nodejs.org/en/download).\nChoose the LTS version for your operating system, run the installer, then\nreopen the app where you want to use IFC MCP.\n\nIFC MCP uses `npx`, which is included with Node.js. If your app later says\n`node` or `npx` is not found, reinstall Node.js LTS and reopen the app.\n\n### 2. Choose your client\n\n<a id=\"chatgpt-desktop\"></a>\n<details>\n<summary><strong>ChatGPT desktop app</strong></summary>\n\nChatGPT desktop supports local MCP servers over STDIO.\n\n1. Open the ChatGPT desktop app.\n2. Open `Settings`.\n3. Select `Plugins`, then `MCPs`.\n4. Click `Add`. If prompted for a server type, choose `STDIO`.\n5. Enter:\n   - Name: `ifc-mcp`\n   - Command to launch: `npx`\n   - First argument: `-y`\n   - Second argument: `ifc-mcp`\n6. Leave the environment variable fields empty and save the server.\n7. Restart the ChatGPT desktop app.\n8. Start a new chat, type `/mcp`, and confirm that `ifc-mcp` is connected.\n\nFor more detail, see OpenAI's [MCP documentation](https://learn.chatgpt.com/docs/extend/mcp).\n\n</details>\n\n<a id=\"claude-desktop\"></a>\n<details>\n<summary><strong>Claude Desktop</strong></summary>\n\n**Option 1: Use the Claude Desktop UI**\n\n1. Open Claude Desktop.\n2. Open `Settings`.\n3. Open `Developer` or `Desktop app` developer settings.\n4. Click `Edit Config` if that button is available. This opens the Claude\n   Desktop MCP config file.\n5. Paste the JSON below, save the file, then fully quit and reopen Claude\n   Desktop.\n\n```json\n{\n  \"mcpServers\": {\n    \"ifc-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ifc-mcp\"]\n    }\n  }\n}\n```\n\nIf the file already contains JSON, add only the `ifc-mcp` entry inside the\nexisting `mcpServers` object. Do not create a second `mcpServers` object.\n\n**Option 2: Open the config file directly**\n\nUse this only if you do not see `Edit Config` in Claude Desktop:\n\n- Windows: `%APPDATA%\\Claude\\claude_desktop_config.json`\n- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`\n\nPaste the same JSON from Option 1, save the file, then fully quit and reopen\nClaude Desktop.\n\n**Check**\n\nTo check the setup, open Claude Desktop, start a new chat, click the `+` button\nnear the chat box, and look for `Connectors`. IFC MCP should appear there after\nClaude Desktop has restarted. You should see the tools listed in the\n**How It Works** section above.\n\nFor more detail, see Claude's [local MCP server guide](https://support.claude.com/en/articles/10949351-getting-started-with-local-mcp-servers-on-claude-desktop).\n\n</details>\n\n<a id=\"vs-code-mcp\"></a>\n<details>\n<summary><strong>VS Code Copilot</strong></summary>\n\n**Option 1: Use the install button**\n\nThis opens VS Code and adds `IFC MCP`.\n\n[![Install IFC MCP in VS Code](https://img.shields.io/badge/Install%20IFC%20MCP-VS%20Code-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://vscode.dev/redirect?url=vscode%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522IFC%2520MCP%2522%252C%2522type%2522%253A%2522stdio%2522%252C%2522command%2522%253A%2522npx%2522%252C%2522args%2522%253A%255B%2522-y%2522%252C%2522ifc-mcp%2522%255D%257D)\n\nIf VS Code asks whether you trust the server, accept it. Reload VS Code if the\ntools do not appear. Open Chat and use the tools/configure-tools button to see\nthe IFC MCP tools.\n\n**Option 2: Add `.vscode/mcp.json` manually**\n\n```json\n{\n  \"servers\": {\n    \"IFC MCP\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ifc-mcp\"]\n    }\n  }\n}\n```\n\nReload VS Code after saving the file.\n\nOpen Chat and use the tools/configure-tools button to see the IFC MCP tools.\n\nFor more detail, see the [VS Code MCP server docs](https://code.visualstudio.com/docs/agent-customization/mcp-servers).\n\n</details>\n\n<a id=\"codex-in-vs-code\"></a>\n<details>\n<summary><strong>VS Code Codex</strong></summary>\n\n**Option 1: Use the Codex settings UI**\n\n1. Open VS Code.\n2. Open the Codex panel.\n3. Open Codex settings.\n4. Select `MCP servers`.\n5. Click `Add server`.\n6. Enter:\n   - Name: `ifc-mcp`\n   - Command: `npx`\n   - Arguments: `-y ifc-mcp`\n7. Save the server.\n8. Reload VS Code or start a new Codex session.\n9. Check that the IFC MCP tools are available in the new Codex session.\n\n**Option 2: Use the terminal command**\n\n1. Open `Terminal -> New Terminal` in VS Code.\n2. Paste and run:\n\n```powershell\ncodex mcp add ifc-mcp -- npx -y ifc-mcp\n```\n\n3. Reload VS Code or start a new Codex session.\n4. Check that the IFC MCP tools are available in the new Codex session.\n\nFor more detail, see the [Codex MCP docs](https://developers.openai.com/codex/mcp).\n\n</details>\n\n<a id=\"claude-code-in-vs-code\"></a>\n<details>\n<summary><strong>VS Code Claude Code</strong></summary>\n\n**Option 1: Use a project JSON file**\n\n1. Open your project in VS Code.\n2. Create or edit `.mcp.json` in the project root.\n3. Add this JSON and save the file:\n\n```json\n{\n  \"mcpServers\": {\n    \"ifc-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ifc-mcp\"]\n    }\n  }\n}\n```\n\n4. Reopen Claude Code in VS Code.\n5. Type `/mcp` and approve the project server if Claude asks.\n6. Check that `ifc-mcp` is connected.\n\n**Option 2: Use the terminal command for all projects**\n\n```powershell\nclaude mcp add --transport stdio ifc-mcp --scope user -- npx -y ifc-mcp\n```\n\nThen reopen Claude Code in VS Code, type `/mcp`, and check that `ifc-mcp` is\nconnected.\n\nIf the `claude` command is not found, install Claude Code first.\n\nFor more detail, see the [Claude Code VS Code docs](https://code.claude.com/docs/en/vs-code) and [Claude Code MCP docs](https://code.claude.com/docs/en/mcp).\n\n</details>\n\n<a id=\"other-mcp-clients\"></a>\n<details>\n<summary><strong>Other MCP clients</strong></summary>\n\nAdd this server entry to your MCP client config:\n\n```json\n{\n  \"mcpServers\": {\n    \"ifc-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ifc-mcp\"]\n    }\n  }\n}\n```\n\nRestart the MCP client after saving the config.\n\nFor more detail, see the [Model Context Protocol docs](https://modelcontextprotocol.io/docs/getting-started/intro).\n\n</details>\n\n## Use Your Own Viewer\n\nIf your app already has an IFC viewer, you can reuse IFC MCP's normal tool\ninterface and apply viewer actions in your app instead of opening the default\nlocal viewer. The MCP client still calls tools like `show-ifc-file` and\n`set-bcf-view`; your app only defines what those viewer tools do.\n\n```js\nimport { createServer } from \"ifc-mcp\";\n\nconst server = createServer({\n  viewer: {\n    \"show-ifc-file\": async ({ file_path }) => {\n      return loadIfcIntoThisViewer(file_path);\n    },\n\n    \"set-bcf-view\": async ({ bcf_path }) => {\n      return applyBcfToThisViewer(bcf_path);\n    },\n\n    \"clear-ifc-viewer\": async () => {\n      return clearThisViewer();\n    },\n  },\n});\n```\n\nThe callback names and argument names match the MCP tool names and schemas, so\nthere is no second naming system to learn.\n\n## Local Development\n\nFor local development from this checkout:\n\n```powershell\nnpm install\nnpm test\n```\n\nThe workspace includes `.vscode/mcp.json`, so VS Code can run the server from\nthis checkout.\n\n## Security\n\nIFC MCP keeps the IFC work on your own machine. It reads your IFC files locally,\nruns the IFC analysis locally, and opens a local viewer. It does not publish the\nviewer to the public internet.\n\nGenerated reports, BCF files, and IFC files are temporary local download links.\nIFC MCP does not write generated output files into your project folder by\ndefault.\n\nUse IFC MCP only with IFC/BIM files and project folders you trust. It can read\nthe files you ask it to use, and incorrect or misleading model data can lead to\nwrong reports or generated IFC files.\n",
  "bytes": 9077,
  "sha": "997256190732bdf07700d9a21d47c20ae355347c2bc0c0e35b7429a16ea41dd3",
  "repo_slug": "flinker-app/ifc-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_flinker_app_ifc_mcp_7086d357/readme"
}