Kamai MCP

官方

施工蓝图算量:将PDF图纸转化为房间、墙体、门窗、面积和数量,并提供交互式平面图与算量视图。

你可以用 Kamai MCP 做什么?

  • 浏览项目和蓝图 — 通过 view_projects 或 list_blueprints 请求查看包含就绪状态的施工项目及其蓝图交互面板。

  • 检查工程量测量数据 — 使用 view_takeoff 或 list_elements 从蓝图请求可排序的测量数量表(房间、墙壁、门、窗)。

  • 编辑蓝图元素 — 通过 update_elements、move_elements 或 create_folder 指示重命名、重新着色或重新归档元素,或创建图例文件夹。

  • 下载已处理的图纸 — 使用 download_plan 获取带有检测元素高亮显示的蓝图临时 PDF 链接。

  • 管理项目和作业 — 通过 create_project、update_project、list_jobs 或 cancel_job 创建或重命名项目,并查看或取消处理作业。

  • 运行高级查询 — 启用查询工具后,使用 count_elements、find_elements 或 calculate_wall_surface_area 按类别统计元素、查找特定项目或计算净墙表面积。

托管 MCP 服务器

npx add-mcp 'https://mcp.kamai.io/mcp'

可安装到 Claude Code、Codex、Cursor 等客户端

文档

kamai-mcp

Kamai 的 MCP 服务器:为 Kamai 建筑蓝图项目、蓝图和算量提供工具和 MCP 应用小部件。它通过 Kamai 的 MCP API 运行,并验证由 Kamai 的 OAuth 授权服务器签发的访问令牌。它不持有任何 Kamai 机密。

工具

工具功能
view_projects用户项目和蓝图的交互式面板
list_blueprints按项目分组的蓝图,包含其 ID 及是否就绪
view_blueprint蓝图页面,并在其上绘制算量形状
view_takeoff可排序的测量算量表
list_elements带轮廓的逐元素行(房间、墙体、门、窗、对象)
list_folders蓝图的图例文件夹
download_plan已处理蓝图的 PDF,突出显示检测到的元素,以临时下载链接形式提供
update_elements、move_elements、create_folder重命名、重新着色和重新归档元素;创建文件夹
set_opening_height在墙面开口构件上存储用户指定的高度或门/窗标签
create_project、update_project创建或重命名项目
list_jobs、get_job、cancel_job项目的处理作业
view_upload蓝图 PDF 的上传面板
ingest_blueprint_from_chat导入附加到 ChatGPT 消息中的 PDF(仅限 ChatGPT)
open_kamai在面板中打开 Kamai 应用

配合 KAMAI_QUERY_TOOLS=on(见下文):

工具功能
count_elements按 Kamai 类别(门、窗、墙体、湿区等)统计数量和总计,在数据库中分组求和
find_elements包含类型、文件夹、标签、开启方向和尺寸的单个元素
calculate_wall_surface_area房间的净墙面(涂料或抹灰)面积
render_table表格面板,其行在平面图上高亮显示对应元素
set_scale设置蓝图的绘图比例

list_blueprints 还接受 include_inventory(带 project_id):每个蓝图包含的内容。

list_projects、get_project、get_blueprint、request_blueprint_upload、finalize_blueprint_upload,以及查询工具 get_table_row_elements 和 get_element_outlines,仅限应用内使用:可由小部件调用,但不向模型公开。

使用 API 密钥在本地运行

针对您自己的 Kamai 数据运行此服务器的最快方式是本地模式:宿主机启动服务器,通过 stdio 与其通信,凭据是来自 Kamai 的个人 API 密钥(在 Kamai 应用中的 API 密钥),而非 OAuth。

bun install
bun run build:widgets
KAMAI_API_KEY=... MCP_API_BASE_URL=https://mcp-api.kamai.io bun run local

Claude Code:

claude mcp add --env KAMAI_API_KEY=... --env MCP_API_BASE_URL=https://mcp-api.kamai.io \
  --transport stdio kamai -- bun /path/to/kamai-mcp/src/local.ts

Claude Desktop(claude_desktop_config.json):

{ "mcpServers": { "kamai": {
    "command": "bun", "args": ["/path/to/kamai-mcp/src/local.ts"],
    "env": { "KAMAI_API_KEY": "...", "MCP_API_BASE_URL": "https://mcp-api.kamai.io" } } } }

该密钥用作每次 API 调用的 bearer 凭据;工具以密钥所有者的身份运行。为查询工具添加 KAMAI_QUERY_TOOLS=on 到环境中。

运行 HTTP 服务器

bun install
cp .env.example .env
bun run dev

.env.example 中的值是占位符:在启动前将 MCP_PUBLIC_URL 和 MCP_AUTH_ISSUER 设置为您的隧道和可访问的授权服务器,否则每个请求都会被拒绝并返回 invalid_token。

变量含义
PORT监听端口,默认 8006
MCP_PUBLIC_URL宿主机调用并请求令牌的 URL(发现中的 resource);必须是隧道,而非 localhost
MCP_AUTH_ISSUER访问令牌的签发者,与令牌的 iss 逐字节匹配
MCP_AUTH_JWKS_URI可选。默认为 {MCP_AUTH_ISSUER}/jwks.json
MCP_API_BASE_URLKamai MCP API 基础 URL,https://mcp-api.kamai.io。也是访问令牌必须携带的受众
MCP_ACCEPTED_AUDIENCES可选,逗号分隔的受众列表,用于切换过渡。默认为 MCP_API_BASE_URL
KAMAI_API_KEY仅本地模式:工具以该个人 API 密钥运行
KAMAI_APP_ORIGINS可选,逗号分隔的额外来源,open_kamai 可嵌入这些来源;第一个成为默认值
KAMAI_QUERY_TOOLSon 注册查询工具。https://mcp-api.kamai.io 提供这些工具;如果 API 对 /v1/vocabulary 返回 404,请将其关闭
KAMAI_MCP_NO_INSTRUCTIONS1 省略服务器指令,如同 claude.ai 所做,以单独测试工具描述

MCP API 和授权服务器由 Kamai 运营,因此端到端运行 HTTP 服务器需要同时访问两者。MCP 服务器只能针对真实宿主机进行有效测试,而宿主机只能访问公共 HTTPS URL,因此 HTTP 模式开发意味着在隧道后面运行,并将 MCP_PUBLIC_URL 指向该隧道。

bun run dev 首先构建小部件:服务器从 dist/widgets/ 提供构建后的 HTML,而非 React 源码,因此在修改 src/widgets/app/ 下的任何内容后需要重新构建。

小部件使用 React、TypeScript、Vite、Tailwind CSS、DaisyUI 和 Lucide。Vite 为每个小部件生成一个自包含的 HTML 资源,因此无需托管任何内容。

本地构建需要 Bun 1.3.3 和 Node.js 22.12 或更高版本。

目录结构

src/index.ts       HTTP 服务器、OAuth 受保护资源元数据、MCP 传输
src/local.ts       本地模式的 stdio 入口点(个人 API 密钥)
src/auth.ts        Bearer 令牌验证(RFC 9728 质询)
src/server.ts      工具和资源注册
src/api.ts         Kamai MCP API 的客户端
src/elements.ts    list_elements 分页、过滤和结果预算
src/errors.ts      失败的工具调用向模型显示的文本
src/query/         查询工具:描述、词汇表、过滤器、预算、契约
src/widgets/       小部件资源、CSP 元数据和 React 小部件源码
scripts/           小部件构建(转义 & 以便 Open WebUI 可嵌入
                   小部件);针对实时 API 的 check-routes 和 check-vocabulary
scripts/open-webui/
                   Open WebUI 辅助工具:open_kamai 工具、显示模式
                   宿主机脚本、本地桥接演示

隐私与支持

贡献

参见 CONTRIBUTING.md。安全问题请发送至 SECURITY.md 中的地址,而非问题跟踪器。

许可证

Apache-2.0。版权所有 2026 Kamai Enterprises LTD。

Kamai 名称和徽标是 Kamai Enterprises LTD 的商标,不在许可证覆盖范围内。