Zovo Per Diem MCP Server

Cálculo de diárias e auxílios de viagem por cidade e função para agentes de finanças. Local-first, plano gratuito, Pro por US$ 19 pagamento único.

Documentação

Todos os servidores · Comprar Pro $19 · Todos os 46 por $39 · Código-fonte

Duas maneiras de executá-lo, ambas gratuitas para começar. Abra mcp.zovo.one/mcp/connect, copie a URL de diárias e cole-a em qualquer cliente que aceite uma URL. Ela já contém um token gratuito, então não há nada para instalar, nenhuma conta e nenhum cabeçalho para configurar. A URL é https://mcp.zovo.one/mcp/per-diem/t/<token>. O token não é opcional: o https://mcp.zovo.one/mcp/per-diem puro conecta e lista suas ferramentas, mas responde a toda chamada de ferramenta com HTTP 401, então use o link de /mcp/connect ou envie Authorization: Bearer <token>. Ou baixe per-diem.mcpb e clique duas vezes nele no Claude Desktop.

mcp-per-diem

Calcule o auxílio diário de viagem a trabalho com base nas tabelas de tarifas que as autoridades fiscais realmente publicam, e mantenha as viagens que você precificou. Você informa para onde foi, quando saiu e quando voltou, e quais refeições outra pessoa pagou; ele retorna o valor por dia e o total, na moeda do próprio esquema, com a regra de dia parcial e cada dedução de refeição exibida ao lado do número que a gerou. Três esquemas acompanham o servidor: o regulamento de delegação polonês (doméstico e por país), as tarifas de referência da escala HMRC para viagens dentro do Reino Unido, e o padrão CONUS de M&IE e hospedagem do GSA dos EUA. As tabelas são arquivos incluídos, não um feed ao vivo, então a mesma viagem precificada duas vezes dá a mesma resposta, e cada tarifa traz o regulamento, a URL de origem e a data em que entrou em vigor. Nada sai da sua máquina.

Construído por theluckystrike.

No Registro Oficial de MCP (io.github.theluckystrike/per-diem).

per-diem demo

Instalação

Um clique (.mcpb): baixe per-diem.mcpb do lançamento mais recente e clique duas vezes nele no Claude Desktop: https://github.com/theluckystrike/mcp-servers/releases/latest

Hospedado, sem instalação: aponte um cliente baseado em URL para https://mcp.zovo.one/mcp/per-diem. GET https://mcp.zovo.one/mcp/connect gera um token e imprime uma URL pronta.

A publicação no npm para @theluckystrike/mcp-per-diem está pendente, então a linha npx abaixo retorna 404 hoje.

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

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

Claude Code:

claude mcp add per-diem -- npx -y @theluckystrike/mcp-per-diem

Cursor (~/.cursor/mcp.json ou .cursor/mcp.json): a mesma entrada do Claude Desktop.

Ferramentas

ferramentao que faz
perdiem_ratesLista as tarifas incluídas de um esquema com a autoridade, o instrumento, a URL de origem e a data de vigência. Filtre por país ou cidade.
perdiem_calcPrecifica uma viagem: o auxílio por dia e o total, com a fração de dia parcial e as deduções de refeição que a regra do esquema aplica.
trip_recordCalcula uma viagem e a salva sob um nome, com o viajante do perfil de negócios compartilhado.
trip_listLista viagens salvas com um total por moeda.
trip_deleteExclui uma viagem salva que não foi exportada e não tem despesa lançada contra ela, e libera o slot do plano gratuito que ela ocupava.
trip_exportOs argumentos exatos de expense_add para uma viagem salva, um payload por moeda, para o servidor de controle de despesas.
perdiem_reportTotais por esquema e por mês calendário, na moeda de cada esquema.
license_statusGratuito ou Pro, e onde fazer upgrade.
license_activateAtiva uma chave Pro. Verificada offline.

Gratuito vs Pro

GratuitoPro
perdiem_rates, perdiem_calcSim, ilimitadoSim
Viagens salvas por mês calendário5, pela data de inícioIlimitado
trip_listSim, ilimitadoSim
trip_deleteSim, ilimitadoSim
trip_exportNãoSim
perdiem_reportNãoSim

Obter Pro: $19 pagamento único, ou $39 pelo pacote. Ou o pacote de 46 servidores por $39.

O que está nas tabelas, e o que deliberadamente não está

Cada tabela em src/tables/ traz um header com a autoridade, o instrumento, a URL de origem, a data em que as tarifas entraram em vigor e a data em que foram lidas. perdiem_rates retorna esse cabeçalho com as tarifas, para que a proveniência viaje junto com o número.

A regra para o que está nelas: um valor que não pudesse ser afirmado com confiança a partir do texto público do regulamento foi omitido, não adivinhado. Um valor de diária acaba em uma declaração de imposto. Um valor errado que parece autoritativo é pior do que um ausente, porque um ausente é recusado pelo nome e você vai procurá-lo.

tabelaincluídaomitida
Polônia, domésticaA diária de 45,00 PLN, o montante fixo de hospedagem de 150 por cento, e as regras de dia parcial e refeiçõesO montante fixo de 20 por cento para transporte local está listado, mas não é pago: não é subsistência
Polônia, estrangeira34 países do anexo, com a diária e sua moedaOs outros aproximadamente 90 países, e todos os limites de hospedagem por país. Um país ausente significa "não verificado aqui", não "não existe tarifa"
Reino Unido, domésticaTodas as quatro tarifas de referência da escala HMRC (faixas de 5, 10 e 15 horas e o suplemento de fim de noite)Nada
Reino Unido, no exteriorNada. O arquivo acompanha uma lista de tarifas vazia e um cabeçalho dizendo issoToda a tabela de tarifas de escala no exterior por cidade: aproximadamente 250 cidades vezes oito valores cada, na moeda do destino. Esta versão não pôde afirmá-los com confiança, então nenhum deles está incluído. perdiem_calc {scheme:"uk"} recusa um destino estrangeiro pelo nome e aponta para a página do HMRC
EUA, GSAO teto padrão CONUS de M&IE e hospedagem para FY2025 e FY2026, com o detalhamento de refeições publicadoAs aproximadamente 300 localidades não padrão (Nova York, São Francisco e as demais). Um destino que não é uma delas recebe a tarifa padrão de qualquer forma, que é o que esta tabela fornece

As tarifas mudam. Verifique o effective_date em qualquer resposta antes de confiar nela, e leia o source_url se a viagem for recente.

Regras que a calculadora aplica

  • Início e fim são instantes, não relógios de parede. Passe ISO 8601 com um offset (2026-03-28T22:00:00+01:00) ou um datetime local mais um timezone IANA. As horas decorridas são uma diferença de época, então uma viagem através de uma mudança de relógio é 23 ou 25 horas, não 24.
  • Polônia conta períodos de 24 horas a partir da partida. Abaixo de 24 horas no doméstico: nada abaixo de 8 horas, metade da diária de 8 a 12, a diária inteira acima de 12. Acima de 24 horas: uma diária inteira por período, depois metade para um restante de até 8 horas e uma inteira acima disso. No exterior, a escala é um terço até 8 horas, metade acima de 8 e até 12, inteira acima. Refeições gratuitas descontam 25/50/25 por cento de um dia doméstico e 15/30/30 de um estrangeiro.
  • O Reino Unido paga por faixa: 5,00 GBP a partir de 5 horas de ausência, 10,00 GBP a partir de 10, 25,00 GBP a partir de 15 quando a viagem está em andamento às 20h, nada abaixo de 5. Uma refeição fornecida remove sua parcela da faixa, pro rata. O HMRC declara o princípio ("a tarifa não é paga por uma refeição que foi fornecida"); a aritmética pro rata é a leitura deste servidor, e ele diz isso na resposta.
  • Os EUA contam dias calendário no fuso do destino, a 75 por cento do M&IE no primeiro e no último dia. Uma refeição fornecida é deduzida pelo seu próprio valor publicado, e os 5,00 USD de incidentes nunca são deduzidos. A hospedagem é um teto para reembolso com recibo, não um auxílio que é pago; a resposta diz isso toda vez.
  • Moedas nunca são somadas. Não há taxa de câmbio neste servidor, então uma diária em PLN e uma em EUR permanecem dois valores.

Exportando para o controle de despesas

trip_export retorna os argumentos exatos de expense_add para o servidor expense-tracker, um payload por moeda, e não escreve nada por conta própria. Isso é deliberado: o expense-tracker não publica um ponto de entrada de biblioteca, e seu contador de id, suas regras de categoria, sua divisão de IVA e seus padrões de moeda vivem todos dentro de seu próprio manipulador expense_add sob seu próprio bloqueio. Anexar uma linha ao seu data.json diretamente produziria uma despesa sem nenhum desses aplicados: uma que parece nativa e não é. Devolver os argumentos é o mesmo contrato que kanban usa para o timer_start do time-tracker.

Nenhum vat_rate é definido no payload. Uma diária estatutária é um auxílio, não uma compra, então não há IVA de entrada a recuperar sobre ela.

Uma percepção medida

A correspondência por substring de um nome de país é como uma diária é silenciosamente precificada à tarifa de outro país.

A primeira versão resolvia um destino por nome exato, depois código ISO, depois country.includes(destination). Uma viagem a Omã voltou precificada, em EUR, sem aviso: "romania".includes("oman") é true, então pegou a diária de 42,00 EUR da Romênia. Omã não está entre os 34 países que esta versão inclui, então a resposta correta era uma recusa nomeando a lacuna. Em vez disso, o chamador recebeu um número confiante, na moeda errada, de um país a 3.000 km de distância.

A correção é uma linha, o fallback é uma correspondência de prefixo de quatro caracteres ou mais, e é assegurada em test/adversarial.test.mjs. A forma geral vale mais que a correção: uma correspondência difusa é segura quando um erro é barato e cara quando um erro é silencioso. Aqui um erro produz um valor fiscal, então o fallback tem que falhar de forma fechada. A tabela ser deliberadamente parcial é exatamente o que torna o fallback por substring perigoso: com uma tabela completa, a linha errada é um quase erro, e com uma parcial, é uma linha que nunca deveria ter correspondido.

Privacidade

Tudo permanece na sua máquina. As viagens são JSON em ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/per-diem/. As tabelas de tarifas são arquivos dentro do pacote. Não há chamada de rede em nenhum lugar deste servidor, nenhuma conta e nenhuma chave de API. Chaves de licença são verificadas offline.

Licença

MIT. Suporte: support@zovo.one

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:

Primeiros cinco minutos

Um prompt que pontuou 3 de 3, medido na rodada 27, 2026-09-05. Cole-o como está escrito.

I am going to Berlin for a client meeting, leaving 14 September 2026 at 8am and back on 15 September at 6pm. Breakfast is included at the hotel both days. What diet am I owed?

Cole isto no Claude com o servidor conectado.

O que ele fez, medido na rodada 27, 2026-09-05: Uma chamada, e resolveu quatro coisas da frase sem nenhuma pergunta: Berlim significa Alemanha significa a tabela estrangeira polonesa, o fuso horário é Europe/Warsaw do perfil compartilhado, o café da manhã em ambos os dias são duas deduções de refeição separadas em vez de uma, e uma noite fora é uma noite de hospedagem.

No plano gratuito para este caminho: Consultas de tarifas e cálculos são ilimitados em todos os planos: as tabelas são regulamentação pública, e medir a leitura de uma regulamentação seria cobrar pelo trabalho da autoridade fiscal. 5 viagens salvas por mês calendário, contadas pela data de início, e listas de viagens ilimitadas.

Configure no seu cliente

Caminho de configuração exato, entrada e ressalvas: Claude Desktop · Claude Code · Cursor · VS Code · Windsurf · Cline · conectores Claude.ai e Claude Desktop · todos os clientes

Comparado com as alternativas

MCP Per Diem vs gsa-perdiem-mcp - qual servidor MCP escolher · todas as comparações

Guias

Como rastrear horas faturáveis dentro do Claude Code e do Cursor · Criar um PDF de fatura a partir de uma mensagem de chat com um servidor MCP · Fazer perguntas sobre um arquivo Excel ou CSV a partir do Cursor ou do Claude · Acompanhar o preço de um produto com o Claude e ser avisado quando ele cair · O que o plano gratuito inclui e o que o Pro adiciona · Registrar despesas e quilometragem no Claude, dividir o IVA, repassar para uma fatura · Converter moedas no Claude com taxas reais do BCE, sem chave de API · Gerar propostas e contratos em Word a partir de uma mensagem de chat · Encontrar um horário de reunião entre fusos horários sem fazer a aritmética · Escrever um currículo e uma carta de apresentação a partir do chat, sem inventar nada · Cobrar um retentor em um cronograma sem um SaaS de faturamento · Montar um contrato a partir da sua própria biblioteca de cláusulas, no chat · Conectar servidores MCP ao Claude.ai, Claude Desktop, Cursor e VS Code sem instalar nada · Mesclar, dividir e carimbar PDFs a partir do chat, e por que alguns voltam como números de glifos · Ler um calendário .ics no Claude: livre e ocupado, conflitos e reuniões faturáveis · Executar um quadro kanban no Claude, com controle de tempo na mesma tarefa · Redimensionar, compactar e adicionar marca d'água a imagens a partir de uma mensagem de chat · Categorizar e conciliar uma exportação CSV de banco a partir do chat · Enviar um orçamento a partir do chat e transformar o "sim" em fatura · Colocar um código QR de pagamento SEPA em uma fatura a partir do chat · Compactar e descompactar arquivos com segurança a partir do Claude ou do Cursor · Depósitos de clientes e retentores a partir do chat, aplicados às suas faturas reais · Ativos fixos e depreciação a partir do chat, com as taxas publicadas pelas autoridades fiscais · Diárias e ajudas de custo de viagem a partir do chat, com as tabelas de taxas publicadas pelas autoridades fiscais · Um único livro de partidas dobradas a partir de cada servidor que você já executa · Cronogramas de empréstimos e arrendamentos a partir do chat, fechando exatamente em zero · Ordens de serviço e cartões de trabalho a partir do chat, e por que o markup vai no custo unitário · Listas de preços e tabelas de tarifas a partir do chat, e a lacuna de escala de 100x entre a fatura e o orçamento · Ordens de alteração e o valor do contrato em andamento a partir do chat, e por que uma linha alterada são dois itens · Um fundo de caixa pequeno a partir do chat, e por que o cheque não é a soma dos comprovantes · Extratos de clientes e cobranças a partir do chat, com vencimento em qualquer data que você indicar · Notas de crédito e ordens de compra a partir do chat, contra suas faturas reais · Uma instalação, todos os servidores: o pacote de suíte de escritório · Fechar um mês no chat: fatura, nota de crédito, retentor, conciliação bancária, extrato · Servidor MCP não aparecendo no Claude Desktop: as seis verificações que o encontram · Onde está o claude_desktop_config.json e o que vai nele · claude mcp add: todas as flags e o escopo que silenciosamente perde seu servidor · Servidores MCP no Windows: spawn npx ENOENT, barras invertidas e o PATH · Instalando esses servidores MCP quando o npx ainda não funciona · Configuração do MCP no Cursor: mcp.json, o campo de tipo obrigatório e onde os servidores aparecem · Quais servidores MCP funcionam sem nenhuma rede · Faturando um cliente da UE com reverse charge, a partir de uma mensagem de chat · Orçamento, depósito, fatura, extrato: todo o ciclo em uma única conversa · Este projeto está dando lucro? Horas contra custos, sem planilha · Montando um pacote do ano fiscal para seu contador a partir do chat · Mantendo um registro de quilometragem no chat, com a taxa que você realmente cobra · Conciliando um CSV de banco contra o que você faturou e gastou · Repassando despesas de clientes, com markup e o IVA tratado com honestidade · Cobrando uma fatura não paga: vencimento e depois a carta · Uma nota de venda a partir do chat, com os identificadores verificados e as linhas de assinatura impressas · Precificando um trabalho a partir de uma tabela de tarifas e o que fazer quando o escopo muda · Calculando sua taxa horária a partir do que você realmente faturou · Convertendo CSV para xlsx e vice-versa sem abrir o Excel · Fazendo perguntas a uma planilha em linguagem simples · Mesclando uma pasta de recibos em um único PDF a partir do chat · Dividindo um único scan grande em documentos separados · Enviando um mês de papelada como um único arquivo, com segurança · Servidores MCP no VS Code: o erro de uma palavra que quebra toda configuração · Servidores MCP no Windsurf e no Cline: dois padrões que desperdiçam uma tarde · Servidor MCP local ou URL hospedada: qual escolher e o que você perde · O que esses servidores MCP realmente fazem no plano gratuito · Escolhendo um servidor MCP para faturamento: as sete perguntas que valem a pena fazer · Quando você precisa de um servidor MCP e quando um prompt é suficiente · Locais de arquivos de configuração MCP e chaves JSON, para cada cliente · Por que um servidor MCP não aparece, em ordem de probabilidade · Como a pesquisa do registro MCP realmente funciona, medida · O que realmente está no registro MCP: 6.000 linhas contadas · stdio ou streamable HTTP: qual transporte MCP e o que quebra · Versões do protocolo MCP: o que cada uma mudou · Cada campo em uma entrada de configuração de servidor MCP, por cliente · Escopos de configuração MCP: qual definição vence quando um servidor é definido duas vezes · Onde cada cliente MCP grava seus logs · Enviando um servidor MCP: um pacote para baixar ou uma URL para colar · O que há dentro de um pacote MCP .mcpb · Cobrando por um servidor MCP: como o licenciamento realmente funciona · Quanto texto um servidor MCP pode retornar e quanto ele pode descrever · O que verificar antes de deixar um servidor MCP rodar · Por que um diretório diz que seu servidor MCP hospedado não está respondendo · O registro MCP vincula uma URL remota a um nome de servidor · Letras maiúsculas no seu nome de usuário do GitHub mudam sua classificação no registro MCP · Quantos servidores MCP já têm sua palavra no nome · Referência de campos do server.json para o registro MCP · Quando uma ferramenta MCP falha, não retorne um erro JSON-RPC · structuredContent e outputSchema no MCP, e o que DEVE ser mantido · Regras para nomear uma ferramenta MCP e a colisão que ninguém planeja · MCP não tem sessão, então como duas chamadas de ferramenta compartilham estado · x-mcp-header: espelhando parâmetros de ferramenta em cabeçalhos HTTP · Como um diretório pontua um servidor MCP e por que sua pior ferramenta decide isso · O que os rastreadores de IA buscam que o Googlebot não busca, medido em 141 URLs · A API de Inspeção de URL do Search Console muda sua resposta entre chamadas · Quais servidores MCP funcionam colando uma URL, sem nada instalado · Onde encontrar servidores MCP que custam dinheiro e como você realmente paga · Fazendo um assistente preencher um orçamento ou estimativa para um cliente · Existe um servidor MCP para livro de caixa pequeno ou livro de caixa · Conversão de moedas em um assistente e qual servidor MCP usar · Compactando e descompactando arquivos a partir de um assistente, e o que as proteções fazem · Produzindo um cronograma de entrega ou um documento de ordem de serviço a partir de um chat · Um servidor MCP enviará a fatura por e-mail para meu cliente · Um assistente pode ler uma foto de um recibo e registrar a despesa · Qual servidor MCP pode gerar PDFs de fatura a partir de uma mensagem de chat? · Um servidor MCP pode ler um PDF de extrato bancário e categorizar as transações? · Melhores servidores MCP para contabilidade e papelada de pequenas empresas em 2026 · Diretório de Fornecedores MCP: evite que listas de fornecedores apodreçam em uma planilha · Contrato de Serviço MCP: pare de copiar um modelo de contrato podre da internet · Registro de Manutenção MCP: saiba qual serviço é devido sem que ninguém precise lembrar · Registro de Quilometragem MCP: mantenha o registro dedutível no momento da viagem, não em abril · Melhores práticas de condições de pagamento de faturas: Net 30, data de vencimento e multas por atraso · Como categorizar transações bancárias · Modelo de registro de caixa pequeno · Faça perguntas sobre uma planilha no chat, sem precisar de fórmulas · Transforme um orçamento ou estimativa em fatura sem redigitá-lo · Produza um cronograma de entrega e uma ordem de serviço a partir de um chat · Use servidores MCP sem instalar nada, colando uma URL · Servidores MCP para contabilidade de pequenas empresas: o resumo · Como encontrar e pagar por servidores MCP · Rastreie horas faturáveis como entradas de timesheet em vez de um cronômetro de parede · Converta um CSV em JSON para uma importação de API ou uma ferramenta de desenvolvimento · Construa um NDA ou acordo de confidencialidade mútua a partir de cláusulas · Faça uma lista de embalagem ou nota de entrega a partir do pedido no chat · Execute uma contagem de estoque com códigos de barras e atualize o catálogo no chat · Mescle arquivos PDF no Claude ou no Cursor sem enviá-los para nenhum lugar · Divida um PDF em documentos separados a partir da janela de chat · Acompanhe despesas e orçamentos dentro do Claude sem uma assinatura de SaaS · Execute sessões de foco pomodoro a partir do Claude e cobre as horas depois · Acompanhe preços de produtos e receba alertas de queda no seu chat de IA · Rastreie tempo faturável e exporte timesheets a partir do seu chat de IA · Mantenha números de fatura sequenciais e nunca reutilize um · Verificação de currículo ATS e carta de apresentação a partir do chat: passe no parser antes do recrutador · Faturamento de freelancer a partir do chat: horas faturáveis para linhas de fatura para PDF sem assinatura de SaaS · Alertas de queda de preço e limpeza de PDF a partir do chat: dois pequenos trabalhos que você fica adiando · Converta USD para cedis, rands e xelins no Claude com taxas reais · Construa um cronograma de amortização de empréstimo a partir do chat e exporte-o para o Excel · Todos os guias

Mais servidores

Servidor MCP para Extratos de Conta — Saldos de Clientes a partir do Claude · Servidor MCP para Livro de Caixa — Recebimentos, Pagamentos e Saldos a partir do Claude · Amortização MCP · Servidor MCP de Caixa Pequeno — Acompanhe um Fundo de Caixa Pequeno a partir do Claude · Ordem de Serviço MCP · Catálogo MCP · Ordem de Alteração MCP · Servidor MCP para Cronogramas de Entrega — Entregas Atrasadas a partir do Claude