Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Local IFC/BIM MCP server with IfcOpenShell Python in Pyodide and an IFC viewer.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"ifc": {
"command": "npx",
"args": [
"-y",
"ifc-mcp"
]
}
}
}在终端中运行这条命令
claude mcp add ifc -- npx -y ifc-mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"ifc": {
"command": "npx",
"args": [
"-y",
"ifc-mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"ifc": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"ifc-mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 flinker-app 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.0)于44天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Claude Checkpoint MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
MCP server that checkpoints Claude Code session context to survive crashes and token limits
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
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.
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.
Large IFC files can take more than a minute to process. Cancelling a request does not stop Python already running; wait for it to finish before trying again.
Install Node.js 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.
ChatGPT desktop app
ChatGPT desktop supports local MCP servers over STDIO.
Settings.Plugins, then MCPs.Add. If prompted for a server type, choose STDIO.ifc-mcpnpx-yifc-mcp/mcp, and confirm that ifc-mcp is connected.For more detail, see OpenAI's MCP documentation.
Claude Desktop
Option 1: Use the Claude Desktop UI
Settings.Developer or Desktop app developer settings.Edit Config if that button is available. This opens the Claude Desktop MCP config file.{
"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:
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.jsonPaste 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.
VS Code Copilot
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.
VS Code Codex
Option 1: Use the Codex settings UI
MCP servers.Add server.ifc-mcpnpx-y ifc-mcpOption 2: Use the terminal command
Terminal -> New Terminal in VS Code.codex mcp add ifc-mcp -- npx -y ifc-mcp
For more detail, see the Codex MCP docs.
VS Code Claude Code
Option 1: Use a project JSON file
.mcp.json in the project root.{
"mcpServers": { "ifc-mcp": { "command": "npx", "args": ["-y", "ifc-mcp"] } } }
/mcp and approve the project server if Claude asks.ifc-mcp is 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.
Other MCP clients
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.
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.
Node MCP server
Provide handlers that receive local file paths. Replace the functions below with your app's viewer actions:
import { createServer } from "ifc-mcp";
import { serveStdio } from "@modelcontextprotocol/server/stdio";
serveStdio(() => createServer({ viewer: { "open-ifc-viewer": () => openThisViewer(), "show-ifc-file": ({ file_path }) => loadIfcIntoThisViewer(file_path), "set-bcf-view": ({ bcf_path }) => applyBcfToThisViewer(bcf_path), "clear-ifc-viewer": () => clearThisViewer(), }, }));
Return MCP tool results from your handlers: content contains feedback, and isError: true indicates failure.
Browser app
Pass files selected in your app and callbacks for your existing viewer. Here, file is a selected IFC File, and viewer is your viewer instance:
import { createIfcMcpHost } from "ifc-mcp/browser";
const files = new Map([ [file.name, { name: file.name, source: file }], ]);
const host = createIfcMcpHost({ files, viewer: { "show-ifc-file": (name, bytes) => viewer.add(name, bytes), "set-bcf-view": (name, bytes) => viewer.add(name, bytes), "clear-ifc-viewer": () => viewer.clear(), }, });
const result = await host.handleToolCall({ name: "show-ifc-file", input: { file_path: file.name }, });
File callbacks receive a filename and Uint8Array bytes. The BCF callback must return an MCP tool result describing whether the viewpoint was applied. Use host.tools for the tool definitions and host.getGeneratedFiles() for generated downloads. Call host.clearFiles() when those downloads are no longer needed.
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.
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.