Work Order MCP

Ordens de serviço a partir do chat: criar, atribuir, acompanhar status e peças, fechar com totais de mão de obra. Integra-se com orçamentos e fichas de trabalho.

Documentação

mcp-work-order

Servidor MCP para ordens de serviço e cartões de trabalho para ofícios e serviço de campo. Ordens de serviço para ofícios e trabalho de campo, precificadas da forma como a fatura será.

Funciona com Claude Desktop, Claude Code, Cursor e qualquer cliente Model Context Protocol. Roda na sua própria máquina ou hospedado, sem instalação.

Página do produto: https://mcp.zovo.one/s/work-order — o que faz, as ferramentas que expõe e um endpoint de token ao vivo.

Instalação

Hospedado, nada para instalar. Obtenha um token em https://mcp.zovo.one/mcp/connect (a página de conexão) ou https://mcp.zovo.one/mcp/token (o mesmo token como JSON); um token anônimo gratuito é emitido na hora e uma chave Pro funciona da mesma forma. Em seguida, aponte um cliente MCP para https://mcp.zovo.one/mcp/work-order via streamable-http e envie o token como Authorization: Bearer <token>.

Se o seu cliente não puder definir cabeçalhos, coloque o token no caminho: https://mcp.zovo.one/mcp/work-order/t/<token>. Ambas as formas funcionam. A URL simples sem token responde 401 em tools/call, então o token não é opcional.

Claude Desktop, um clique. Baixe work-order.mcpb do último lançamento e clique duas vezes nele.

A partir do código-fonte. O espelho é autossuficiente: cada dependência @theluckystrike/* é incluída, então um clone novo compila sem configuração extra.

git clone https://github.com/theluckystrike/mcp-work-order.git
cd mcp-work-order
npm install && npm run build

Em seguida, aponte seu cliente para o ponto de entrada compilado:

{
  "mcpServers": {
    "work-order": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-work-order/dist/index.js"]
    }
  }
}

@theluckystrike/mcp-work-order ainda não está publicado no npm, então um comando npx -y @theluckystrike/mcp-work-order falhará. Os três caminhos acima são os que funcionam e cada um é exercitado pelo CI.

work-order demo

Espelho somente leitura de mcp-servers/servers/work-order. Veja MIRROR.md.

No Registro Oficial de MCP (io.github.theluckystrike/work-order). Ordens de serviço para ofícios e trabalho de campo, mantidas da forma como um cartão de trabalho é mantido. Abra uma ordem de serviço contra um cliente (o mesmo registro de cliente que suas faturas usam), forneça um endereço do local, a data em que foi solicitada, o que é o trabalho e quão urgente. Registre o que o trabalho realmente usou conforme avança: mão de obra como horas a uma taxa, peças como quantidade a um custo unitário com margem opcional. Avance um passo de cada vez, de rascunho para agendado para em andamento para concluído para faturado, cada etapa carimbada com sua data e uma nota. Quando terminar, entregue ao cliente um relatório de conclusão com as horas, os materiais, os totais e um bloco de assinatura, e leve o payload da fatura diretamente para invoice_create sem redigitar um único número.

Nada é inventado e nada é armazenado duas vezes: o valor, as horas, os materiais e o IVA são derivados das linhas em cada chamada, e os preços unitários do payload da fatura são já as unidades faturadas, então a fatura reproduz a ordem de serviço até a unidade menor.

A publicação no npm para @theluckystrike/mcp-work-order está pendente, então npx -y @theluckystrike/mcp-work-order retorna 404 hoje. Até lá, o pacote de um clique .mcpb ou um clone+compilação é o caminho que funciona.

Instalação

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) ou %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "work-order": {
      "command": "npx",
      "args": ["-y", "@theluckystrike/mcp-work-order"]
    }
  }
}

Claude Code

claude mcp add work-order -- npx -y @theluckystrike/mcp-work-order

Cursor

~/.cursor/mcp.json (global) ou .cursor/mcp.json (projeto), mesma entrada do Claude Desktop.

Ferramentas

FerramentaO que faz
work_order_createAbre uma ordem de serviço e retorna seu número WO-YYYY-NNNN: cliente, endereço do local, data solicitada, descrição, prioridade
work_order_add_lineAdiciona uma linha: peças com quantidade e custo unitário em unidades menores e percentual de margem opcional, ou mão de obra com horas e taxa horária
work_order_statusAvança um passo: rascunho, agendado, em andamento, concluído, faturado, carimbando a data e uma nota
work_order_getUma ordem de serviço completa: cada linha com sua unidade faturada, as horas, os materiais, líquido e IVA, e o histórico de status
work_order_listLista ordens de serviço por status, por cliente e por intervalo de data solicitada
work_order_deleteExclui uma ordem de serviço aberta por engano. Somente rascunho sem linhas. Gratuito em todos os níveis
completion_report_textO relatório de conclusão como texto simples, pronto para colar em um e-mail
completion_report_pdfO relatório de conclusão como PDF A4, com o bloco de assinatura
work_order_invoice_payloadUm payload pronto para invoice_create a partir das linhas, com IVA na taxa do perfil compartilhado
work_orders_reportO quadro completo: ordens de serviço por status, horas registradas neste mês, valor não faturado por moeda
license_status / license_activateGratuito ou Pro, e onde atualizar

Gratuito vs Pro

GratuitoPro
Ordens de serviço abertas5ilimitadas
Linhas por ordem de serviço200200
Abrir, registrar, mover, listar, excluirsimsim
Relatório de conclusão (texto)simsim
Relatório de conclusão (PDF)nãosim
Payload da faturanãosim
Relatório do quadronãosim

O limite conta ordens de serviço ABERTAS (rascunho, agendado, em andamento), não as que você já abriu, então concluir um trabalho libera seu espaço. O mesmo vale para work_order_delete em um rascunho que não tem linhas, que é gratuito em todos os níveis: um caminho de volta que só uma chave Pro pode alcançar não é um caminho de volta.

Obtenha Pro: https://mcp.zovo.one/buy/work-order (pagamento único de $19, vitalício), ou todos os servidores por $39: https://mcp.zovo.one/buy/bundle

De onde vem o dinheiro

Este servidor não mantém aritmética própria. computeTotals, currencyDecimals, formatMoney e roundHalfUp são importados de @theluckystrike/mcp-invoice/lib, o renderizador A4 de @theluckystrike/mcp-billing-docs/lib, a quarentena de armazenamento corrompido de @theluckystrike/mcp-timezone/lib. A taxa de IVA, a moeda e o nome da empresa vêm do perfil de negócios compartilhado que business_set no servidor de fatura escreve; o cliente vem dos registros de cliente desse servidor. Nada é escrito fora do diretório próprio deste servidor.

A percepção medida

Uma margem pertence ao custo unitário, não ao total da linha, e uma unidade menor é o que diz isso. Sete peças a EUR 12,99 com 15 por cento por cima é EUR 14,94 por unidade e EUR 104,58 na linha. Marcar o total da linha em vez disso é round(9093 * 1.15) = 10.457 unidades menores, um centavo a menos. Ambos parecem a mesma soma, e apenas um deles é o valor que o cliente será faturado: o servidor de fatura arredonda o preço unitário para a unidade menor primeiro e multiplica (sua base D-R24), então uma ordem de serviço que cita o valor do total da linha cita um número que sua própria fatura não pode reproduzir. A lacuna aparece em cada linha cuja unidade com margem não cai em um centavo inteiro, nunca se compensa entre linhas porque é uma direção de arredondamento e não um erro, e é invisível em uma verificação de planilha porque ambas as bases somam corretamente. A suíte de unidades afirma a lacuna de 1 unidade explicitamente, então uma mudança de base falha na compilação em vez de reprecificar silenciosamente cada trabalho no quadro.

Privacidade

Todos os dados permanecem na sua máquina, em ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/work-order/. Nada é enviado a lugar algum. Não há conta nem chave de API. As chaves de licença são verificadas offline. Este servidor lê um arquivo irmão, o clients.json do servidor de fatura, e escreve em nenhum armazenamento além do seu próprio.

Construído por theluckystrike. https://github.com/theluckystrike

Use estes documentos como um servidor MCP

Qualquer cliente MCP (Claude, Cursor, Windsurf, VS Code) pode ler a documentação deste repositório diretamente via GitMCP — sem instalação: