Kamai MCP

oficial

Levantamento de quantitativos a partir de plantas de construção: transforme plantas em PDF em cômodos, paredes, portas, janelas, áreas e contagens, com visualizações interativas da planta e do levantamento.

O que você pode fazer com Kamai MCP?

  • Navegar por projetos e plantas — Peça para ver um painel interativo dos seus projetos de construção e suas plantas com status de prontidão via view_projects ou list_blueprints.

  • Inspecionar medições de quantitativos — Solicite uma tabela classificável das quantidades medidas (cômodos, paredes, portas, janelas) de uma planta usando view_takeoff ou list_elements.

  • Editar elementos da planta — Instrua a renomear, recolorir ou reclassificar elementos, ou criar uma pasta de legenda, por meio de update_elements, move_elements ou create_folder.

  • Baixar planos processados — Obtenha um link temporário de PDF de uma planta com os elementos detectados destacados usando download_plan.

  • Gerenciar projetos e tarefas — Crie ou renomeie projetos, e visualize ou cancele tarefas de processamento, via create_project, update_project, list_jobs ou cancel_job.

  • Executar consultas avançadas — Com as ferramentas de consulta habilitadas, conte elementos por categoria, encontre itens específicos ou calcule áreas líquidas de superfícies de paredes usando count_elements, find_elements ou calculate_wall_surface_area.

Servidor MCP hospedado

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

Instala no Claude Code, Codex, Cursor e outros

Documentação

kamai-mcp

O servidor MCP da Kamai: ferramentas e widgets de MCP Apps para projetos de blueprint de construção, blueprints e medições do Kamai. Ele roda contra a API MCP da Kamai e valida tokens de acesso emitidos pelo servidor de autorização OAuth da Kamai. Ele não contém segredos da Kamai.

Ferramentas

FerramentaO que faz
view_projectsPainel interativo dos projetos e blueprints do usuário
list_blueprintsBlueprints agrupados por projeto, com seus IDs e se estão prontos
view_blueprintUma página de blueprint com suas formas de medição desenhadas por cima
view_takeoffQuantidades de medição como uma tabela ordenável
list_elementsLinhas por elemento (cômodos, paredes, portas, janelas, objetos) com contornos
list_foldersPastas de legenda de um blueprint
download_planUm PDF de um blueprint processado com seus elementos detectados destacados, como um link de download temporário
update_elements, move_elements, create_folderRenomear, recolorir e reclassificar elementos; criar uma pasta
set_opening_heightArmazenar uma altura informada pelo usuário, ou uma etiqueta de porta/janela, em peças de abertura de superfície de parede
create_project, update_projectCriar ou renomear um projeto
list_jobs, get_job, cancel_jobTrabalhos de processamento de um projeto
view_uploadPainel de upload para um PDF de blueprint
ingest_blueprint_from_chatImportar um PDF anexado a uma mensagem do ChatGPT (somente ChatGPT)
open_kamaiAbrir o aplicativo Kamai em um painel

Com KAMAI_QUERY_TOOLS=on (veja abaixo):

FerramentaO que faz
count_elementsContagens e totais por categoria Kamai (portas, janelas, paredes, áreas molhadas…), agrupados, somados no banco de dados
find_elementsElementos individuais com tipo, pasta, etiqueta, lado e medições
calculate_wall_surface_areaÁrea líquida de parede (tinta ou gesso) dos cômodos
render_tableUm painel de tabela cujas linhas destacam seus elementos na planta
set_scaleDefinir a escala de desenho de um blueprint

list_blueprints também aceita include_inventory (com um project_id): o que cada blueprint contém.

list_projects, get_project, get_blueprint, request_blueprint_upload, finalize_blueprint_upload, e com as ferramentas de consulta get_table_row_elements e get_element_outlines, são somente para aplicativos: chamáveis pelos widgets, não anunciados ao modelo.

Executar localmente com sua chave de API

A maneira mais rápida de executar este servidor com seus próprios dados Kamai é o modo local: o host inicia o servidor, fala com ele via stdio, e a credencial é uma chave de API pessoal da Kamai (API Keys no aplicativo Kamai) em vez de 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" } } } }

A chave é usada como bearer para cada chamada de API; as ferramentas operam como o proprietário da chave. Adicione KAMAI_QUERY_TOOLS=on ao ambiente para as ferramentas de consulta.

Executar o servidor HTTP

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

Os valores em .env.example são placeholders: defina MCP_PUBLIC_URL e MCP_AUTH_ISSUER para seu túnel e para um servidor de autorização acessível antes de iniciar, ou cada solicitação será recusada com invalid_token.

VariávelSignificado
PORTPorta de escuta, padrão 8006
MCP_PUBLIC_URLA URL que os hosts chamam e pedem um token (o resource na descoberta); um túnel, não localhost
MCP_AUTH_ISSUEREmissor dos tokens de acesso, comparado byte a byte com o iss do token
MCP_AUTH_JWKS_URIOpcional. Padrão é {MCP_AUTH_ISSUER}/jwks.json
MCP_API_BASE_URLURL base da API MCP da Kamai, https://mcp-api.kamai.io. Também o público que um token de acesso deve carregar
MCP_ACCEPTED_AUDIENCESOpcional, públicos separados por vírgula, para uma migração. Padrão é MCP_API_BASE_URL
KAMAI_API_KEYSomente modo local: a chave de API pessoal com a qual as ferramentas operam
KAMAI_APP_ORIGINSOpcional, origens extras separadas por vírgula que open_kamai pode enquadrar; a primeira se torna o padrão
KAMAI_QUERY_TOOLSon registra as ferramentas de consulta. https://mcp-api.kamai.io as serve; deixe desligado contra uma API que responde /v1/vocabulary com 404
KAMAI_MCP_NO_INSTRUCTIONS1 deixa as instruções do servidor de fora, como o claude.ai faz, para testar as descrições das ferramentas sozinhas

A API MCP e o servidor de autorização são operados pela Kamai, então executar o servidor HTTP de ponta a ponta precisa de acesso a ambos. Um servidor MCP só é realmente testável contra um host real, e um host só pode alcançar uma URL HTTPS pública, então o desenvolvimento em modo HTTP significa rodar atrás de um túnel e apontar MCP_PUBLIC_URL para ele.

bun run dev compila os widgets primeiro: o servidor serve o HTML compilado de dist/widgets/, não o código-fonte React, então recompile após tocar em qualquer coisa sob src/widgets/app/.

Os widgets usam React, TypeScript, Vite, Tailwind CSS, DaisyUI e Lucide. O Vite produz um recurso HTML autocontido por widget, então nada precisa de hospedagem.

Compilações locais exigem Bun 1.3.3 e Node.js 22.12 ou mais recente.

Estrutura

src/index.ts       Servidor HTTP, metadados de recurso protegido OAuth, transporte MCP
src/local.ts       Ponto de entrada stdio para modo local (chave de API pessoal)
src/auth.ts        Verificação de token Bearer (desafios RFC 9728)
src/server.ts      Registro de ferramentas e recursos
src/api.ts         Cliente para a API MCP da Kamai
src/elements.ts    Paginação, filtragem e orçamento de resultados do list_elements
src/errors.ts      O texto que uma chamada de ferramenta falha mostra ao modelo
src/query/         Ferramentas de consulta: descrições, vocabulário, filtros, orçamentos, contrato
src/widgets/       Recursos de widgets, metadados CSP e fontes dos widgets React
scripts/           Compilação de widgets (escapa & para que o Open WebUI possa incorporar os
                   widgets); check-routes e check-vocabulary contra uma API ativa
scripts/open-webui/
                   Auxiliares do Open WebUI: uma ferramenta open_kamai, um script de host
                   em modo de exibição, uma demonstração de ponte local

Privacidade e suporte

Contribuindo

Veja CONTRIBUTING.md. Problemas de segurança vão para o endereço em SECURITY.md, não para o rastreador de problemas.

Licença

Apache-2.0. Direitos autorais 2026 Kamai Enterprises LTD.

O nome e o logotipo Kamai são marcas registradas da Kamai Enterprises LTD e não são cobertos pela licença.