Petty Cash MCP

Gestão de caixa pequeno e fundo fixo: reposições, vales, saldos e relatórios de conciliação.

Documentação

Rastreie um fundo fixo de caixa pequena a partir do Claude

Servidor MCP para um livro de caixa pequena e razão de vales: um fundo fixo de caixa pequena no sistema de imprest, conciliado à unidade monetária menor.

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

Página do produto: https://mcp.zovo.one/s/petty-cash — 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/petty-cash 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/petty-cash/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 petty-cash.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-petty-cash.git
cd mcp-petty-cash
npm install && npm run build

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

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

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

petty-cash demo

Espelho somente leitura de mcp-servers/servers/petty-cash. Veja MIRROR.md.

No Registro Oficial do MCP (io.github.theluckystrike/petty-cash). Um fundo fixo de caixa pequena, mantido da maneira que a papelada o mantém. Abra uma lata com um valor de imprest e um custodiante, registre um vale para cada recibo que sair dela, conte o dinheiro sempre que quiser e obtenha a diferença até a unidade menor junto com a lista de vales que essa contagem cobre. Quando a lata fica baixa, ele calcula a reposição: qual deve ser o cheque para devolver o fundo ao seu imprest, quais vales ele reembolsa, os totais por categoria como um payload pronto para expense_add e o lançamento em partidas dobradas nos nomes de contas do próprio livro-caixa. Cada valor é um número inteiro de unidades menores, nenhum saldo é armazenado e nada é postado em lugar nenhum: o payload é devolvido para quem é dono dos livros.

Construído por theluckystrike.

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

Instalação

Claude Desktop

macOS ~/Library/Application Support/Claude/claude_desktop_config.json, Windows %APPDATA%\Claude\claude_desktop_config.json:

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

Claude Code

claude mcp add petty-cash -- npx -y @theluckystrike/mcp-petty-cash

Cursor

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

Ferramentas

ferramentao que faz
float_openAbre um fundo no sistema de imprest: nome, moeda, valor de imprest em unidades menores, custodiante. Retorna FLOAT-YYYY-NNNN e o diário de abertura
topup_recordRegistra dinheiro entrando na lata: valor, data, origem. Marca todos os vales até aquela data como reembolsados
voucher_addRegistra um vale saindo da lata: valor, data, categoria, descrição, beneficiário, referência do recibo. Retorna VOU-YYYY-NNNN
voucher_deleteExclui um vale registrado errado, enquanto ainda não foi contado
reconcileConta o dinheiro: o saldo esperado, a diferença, os vales desde a última contagem, todos marcados como conciliados, e a contagem registrada
replenish_requestO que restaura o imprest: o valor, os vales que cobre, o payload expense_add por categoria e o lançamento em partidas dobradas. Não escreve nada
float_reportSaldo contra o imprest, vales não conciliados, a última contagem e o histórico de cada diferença encontrada por uma contagem
license_status / license_activateGratuito ou Pro, e a chave

Gratuito vs Pro

GratuitoPro
Fundos abertos1Ilimitados
Vales por mês calendário20Ilimitados
Conciliação (reconcile)IlimitadaIlimitada
Excluir um vale (voucher_delete)SimSim
Registrar um reforço (topup_record)SimSim
Reposição (replenish_request)-Sim
Relatório (float_report)-Sim

A contagem nunca é medida. Se o dinheiro na lata corresponde à papelada é a pergunta que este servidor existe para responder, e um nível gratuito que retém a resposta é uma demonstração. O que é medido é o volume de manutenção de registros: um segundo fundo é uma segunda lata, e vinte vales por mês é um escritório real de uma lata. voucher_delete é gratuito pela mesma razão pela qual o limite está nos registros mantidos: um vale digitado duas vezes custaria uma vaga sem volta, exceto por uma chave.

Obtenha o Pro: https://mcp.zovo.one/buy/petty-cash, $19 único para este servidor, ou $39 para o pacote.

Uma percepção medida

O cheque não é a soma dos vales, e a lacuna é invisível no rastro dos vales.

O mês trabalhado em test/unit.test.mjs: um imprest de EUR 500,00, cinco vales totalizando 20.194 unidades menores, então a papelada diz que a lata contém 29.806 no dia 31. Ela contém 29.795. A contagem está curta em exatamente 11 unidades menores, onze centavos que nenhum vale explica e nenhum recibo será encontrado.

A reposição é então 20.205, não 20.194. Reembolsar o total dos vales é a coisa natural a fazer, é o que os vales somam, e restaura o fundo 11 a menos. A mesma suíte executa três ciclos disso: o fundo termina em 49.967 contra um imprest de 50.000, 33 unidades menores a menos, e cada uma das três conciliações no meio relatou uma diferença de exatamente 11 e nada pior. Nada parece quebrado. A lata apenas fica menor.

É por isso que replenish_request calcula imprest - balance e nunca sum(vouchers), e por que a diferença volta como sua própria linha de diário cash_over_short em vez de ser dobrada em uma categoria de despesa onde pareceria postagem.

Privacidade

Todos os dados permanecem locais, em ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/petty-cash/. Três arquivos: floats.json, vouchers.json, counter.json. Nada é enviado a lugar nenhum, não há conta, nenhuma chave de API e nenhuma chamada de rede neste servidor. As chaves de licença são verificadas offline. O diário e o payload expense_add são devolvidos a você; este servidor não posta nada em nenhum outro armazenamento.

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

Perguntas frequentes

Existe um servidor MCP para caixa pequena?

Sim. O servidor de caixa pequena em mcp.zovo.one opera um fundo fixo de caixa pequena no sistema de imprest: vales, reforços, saldos por categoria e conciliação. Nível gratuito, endpoint hospedado, armazenamento local-first.

Como rastreio caixa pequena a partir do Claude?

Conecte https://mcp.zovo.one/mcp/petty-cash e diga: 'Registre um vale de 15 EUR para materiais de escritório.' Reposição e conciliação são prompts únicos.

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: