Office Suite MCP

Um pacote completo: docx, xlsx, pdf, mala-direta e modelos para propostas, orçamentos e contratos a partir do chat. Tudo local.

Documentação

mcp-office-suite

Servidor MCP para contabilidade e papelada de pequenas empresas: notas fiscais, PDFs, planilhas, documentos do Word, controle de tempo e despesas. Uma única instalação que expõe todas as ferramentas dos 45 servidores hospedados, 418 no total.

Funciona com Claude Desktop, Claude Code, Cursor e qualquer cliente do Model Context Protocol. Roda na sua própria máquina: este não tem endpoint hospedado, então instale a partir do pacote ou do código-fonte.

Instalação

Claude Desktop, um clique. Baixe o office-suite.mcpb da última versão e clique duas vezes nele.

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

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

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

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

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

office-suite demo

Espelho somente leitura de mcp-servers/servers/office-suite. Veja MIRROR.md.

theluckystrike/mcp-office-suite MCP server

No Registro Oficial do MCP (io.github.theluckystrike/office-suite-time-invoice-expense-excel-price).

Uma instalação para todo o escritório do freelancer. Este servidor MCP faz proxy de todos os 31 servidores irmãos neste repositório, então um cliente recebe todas as 292 ferramentas deles atrás de uma única entrada de configuração em vez de 31. A lista de filhos é publicada em tempo de execução como o recurso office://tools_map, que é a única fonte confiável: ela é lida do servidor em execução, não deste arquivo. Internamente, ele inicia cada irmão como seu próprio processo filho stdio, encaminha tools/call, resources/* e prompts/* para o filho que possui o nome e mescla o estado de licença deles em um único par license_status / license_activate. Nada é reimplementado: cada servidor filho roda exatamente como roda de forma independente, com seu próprio armazenamento JSON local.

Todas as ferramentas de controle de tempo, rastreador de preços, planilha e nota fiscal, um único claude mcp add.

Instalação em 60 segundos

A publicação no npm para @theluckystrike/mcp-office-suite (e suas dependências) está pendente. Até lá, o pacote de um clique .mcpb ou um clone+compilação é o caminho que funciona, ambos verificados abaixo. Este servidor é empacotado como office-suite.mcpb na versão v0.2.1 e está listado no registro oficial do MCP (io.github.theluckystrike/office-suite-time-invoice-expense-excel-price).

Um clique (.mcpb): baixe o office-suite.mcpb da última versão e clique duas vezes nele no Claude Desktop: https://github.com/theluckystrike/mcp-servers/releases/latest

(claude_desktop_config.json):

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

Claude Code:

claude mcp add office-suite -- npx -y @theluckystrike/mcp-office-suite

(.cursor/mcp.json):

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

O formulário npx acima começa a funcionar no momento em que o pacote é publicado. Até lá, use o pacote .mcpb acima, ou compile a partir do código-fonte com exatamente estes comandos:

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

npm run build (sem -w) é necessário aqui, ele compila mcp-license e cada servidor irmão que o office-suite inicia como filho, e então o próprio office-suite. Em seguida, aponte o command do seu cliente para node com um argumento: o caminho absoluto para servers/office-suite/dist/index.js.

Para executar todos os servidores no modo Pro, defina MCP_LICENSE_KEY no mesmo bloco de configuração, ou chame license_activate uma vez com sua chave; ela é encaminhada para cada filho conectado. A ativação é tudo-ou-nada: a resposta é um erro a menos que todos os filhos aceitem a chave, e ela imprime uma tabela por filho (OK / FAILED com a mensagem de cada filho) para que um pacote que está meio Pro não possa parecer um sucesso.

Por que um servidor em vez de trinta e um

A agregação é o que o uso recompensa nesta categoria: o servidor mais usado que rastreamos é um gateway agregador de ferramentas com 2.530 ferramentas e 419.019 usos, 7,5x o próximo servidor e 30x a mediana do grupo. Um usuário que quer "coisas de escritório" não deveria ter que adicionar trinta e um servidores MCP separados a uma única configuração de cliente. Instalar este obtém todas as ferramentas abaixo.

Ferramentas

Os nomes das ferramentas são repassados sem alteração de cada filho. Se este pacote algum dia fizer proxy de dois filhos que registram o mesmo nome de ferramenta, ambos são expostos com um prefixo <child>_<tool> em vez disso; os pares renomeados atuais estão listados em Ferramentas renomeadas abaixo.

time-tracker

FerramentaO que faz
timer_startInicia um cronômetro para um projeto; para e registra qualquer timer anterior em execução
timer_stopPara o timer em execução e o registra como uma entrada de tempo
timer_statusMostra o timer em execução e o total de horas de hoje
entry_addRegistra tempo que você já trabalhou, com início mais fim ou minutos
entry_listLista entradas de tempo registradas como uma tabela (grátis: últimos 7 dias)
entry_deleteExclui uma entrada de tempo por id
entry_editAltera campos de uma entrada existente
project_set_rateDefine a taxa horária e a moeda para um projeto
reportHoras e dinheiro por projeto, dia, tarefa ou tag (agrupamento por tag é Pro)
export_csvExporta a folha de ponto para um arquivo CSV
invoice_summaryTransforma tempo faturável rastreado em itens de linha de nota fiscal

price-tracker

FerramentaO que faz
price_checkVerifica o preço atual de um produto agora
watch_addComeça a monitorar uma URL de produto para quedas de preço
watch_listLista todos os produtos monitorados e seu preço mais recente
watch_removePara de monitorar um produto
watch_refreshVerifica novamente todos os monitoramentos (ou um) imediatamente
price_historyHistórico de preços de um produto monitorado
price_add_manualRegistra um preço manualmente, para sites que bloqueiam a busca
alerts_pendingMonitoramentos que caíram abaixo do preço-alvo

spreadsheet

FerramentaO que faz
sheet_infoVisão geral de um arquivo CSV/XLSX: planilhas, colunas, contagem de linhas
sheet_readLê linhas de uma planilha
sheet_queryFiltra, agrupa e ordena linhas
sheet_statsEstatísticas por coluna (mín, máx, média, soma, distintos)
sheet_findEncontra texto em uma planilha
sheet_writeEscreve linhas em uma planilha
sheet_add_columnAdiciona uma coluna calculada
sheet_convertConverte entre CSV e XLSX

invoice

FerramentaO que faz
business_setDefine seu perfil comercial: nome, endereço, ID de IVA, IBAN, moeda padrão e condições
client_addArmazena um cliente para que notas fiscais possam referenciá-lo pelo nome
client_listLista todos os clientes armazenados
invoice_createCria uma nota fiscal a partir de itens de linha, com imposto e desconto
invoice_from_hoursCria uma nota fiscal a partir de horas trabalhadas a uma taxa
invoice_listLista notas fiscais
invoice_getObtém uma nota fiscal por id ou número
invoice_mark_paidRegistra um pagamento contra uma nota fiscal
invoice_pdfRenderiza uma nota fiscal como arquivo PDF
overdue_reportNotas fiscais vencidas, por quantos dias (Pro)

Em todo o pacote

FerramentaO que faz
license_statusStatus Grátis/Pro de cada servidor com proxy e o link de atualização do pacote
license_activateAtiva uma chave Pro do pacote em todos os servidores de uma vez. Retorna um erro com uma tabela por filho a menos que todos a aceitem

Recursos e prompts registrados por qualquer filho (por exemplo, o recurso timetracker://today e o prompt daily_standup do time-tracker) também são repassados sob seus nomes originais.

Ferramentas renomeadas

Dois filhos podem registrar o mesmo nome de ferramenta; invoice e docx ambos têm business_set. O pacote então expõe ambos, prefixados com o servidor de onde vieram (invoice_business_set, docx_business_set), anuncia as renomeações uma vez na inicialização e reescreve a própria resposta do filho para que uma resposta que dizia "Execute business_set ..." diga o nome que você pode realmente chamar. O mapeamento completo é publicado como o recurso office://tools_map: nome exposto -> child.tool, com os pares renomeados listados separadamente.

Grátis vs Pro

Cada servidor filho mantém seu próprio nível gratuito exatamente como documentado em seu próprio README (veja cada servers/<name>/README.md). Este pacote não muda nada sobre esses limites; ele apenas muda quantas entradas de configuração são necessárias para alcançar todos eles.

Uma única chave Pro de pacote ($39 pagamento único, vitalício) desbloqueia Pro em todos os servidores do pacote, em vez de comprar a chave de $19 de cada servidor separadamente. Ative-a uma vez aqui e ela é encaminhada para cada filho.

Obtenha Pro: https://mcp.zovo.one/buy/bundle

Processos filhos

Cada filho roda como seu próprio processo stdio. Duas coisas que o proxy faz em nome deles:

  • O stderr deles é drenado para o nosso, uma linha por vez, marcado com o filho de onde veio ([invoice] ...). O stderr de um filho é um pipe com um pequeno buffer do SO; se não for lido, um filho que registrou mais do que esse buffer ficaria bloqueado em write() e a chamada de ferramenta que ele estava respondendo nunca retornaria.
  • Um filho que morre rejeita suas solicitações em andamento antes que o pacote tente reiniciá-lo, então uma chamada com proxy falha rapidamente em vez de pendurar até o timeout do cliente, onde uma nova tentativa poderia repetir uma mutação que já havia sido aplicada.

Privacidade

Cada servidor filho armazena seus dados localmente, em ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/<name>/ por servidor. Este pacote não adiciona armazenamento próprio e não envia nada para lugar nenhum; ele apenas canaliza stdio entre seu cliente MCP e os processos filhos que ele inicia na sua própria máquina.

expense-tracker

TODO: servers/expense-tracker/dist ainda não existe neste repositório. Quando esse servidor for construído e lançado, adicione-o a CHILDREN em src/index.ts, sua dependência a package.json, sua etapa de compilação ao Dockerfile e sua tabela de ferramentas a este README.


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: