Office Suite MCP

Un solo paquete: docx, xlsx, pdf, combinación de correspondencia y plantillas para propuestas, cotizaciones y contratos desde el chat. Todo local.

Documentación

mcp-office-suite

Servidor MCP para contabilidad y papeleo de pequeñas empresas: facturas, PDFs, hojas de cálculo, documentos de Word, seguimiento de tiempo y gastos. Una sola instalación que expone todas las herramientas de los 45 servidores alojados, 418 en total.

Funciona con Claude Desktop, Claude Code, Cursor y cualquier cliente del Protocolo de Contexto de Modelos. Se ejecuta en tu propia máquina: este no tiene un endpoint alojado, así que instálalo desde el paquete o desde el código fuente.

Instalación

Claude Desktop, un clic. Descarga office-suite.mcpb desde la última versión y haz doble clic en él.

Desde el código fuente. El espejo es autocontenido: cada dependencia de @theluckystrike/* está incluida, por lo que un clon nuevo se compila sin configuración adicional.

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

Luego apunta tu cliente al punto de entrada compilado:

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

@theluckystrike/mcp-office-suite aún no está publicado en npm, por lo que un comando npx -y @theluckystrike/mcp-office-suite fallará. Las tres rutas anteriores son las que funcionan y cada una es verificada por CI.

office-suite demo

Espejo de solo lectura de mcp-servers/servers/office-suite. Consulta MIRROR.md.

theluckystrike/mcp-office-suite MCP server

En el Registro oficial de MCP (io.github.theluckystrike/office-suite-time-invoice-expense-excel-price).

Una sola instalación para toda la oficina del freelancer. Este servidor MCP actúa como proxy de los 31 servidores hermanos en este repositorio, por lo que un cliente obtiene todas sus 292 herramientas detrás de una única entrada de configuración en lugar de 31. La lista de hijos se publica en tiempo de ejecución como el recurso office://tools_map, que es la única cifra en la que confiar: se lee del servidor en ejecución, no de este archivo. Internamente, inicia cada servidor hermano como su propio proceso hijo stdio, reenvía tools/call, resources/* y prompts/* al hijo que posee el nombre, y fusiona su estado de licencia en un par license_status / license_activate. No se reimplementa nada: cada servidor hijo se ejecuta exactamente como lo hace de forma independiente, con su propio almacenamiento JSON local.

Cada herramienta de time-tracker, price-tracker, spreadsheet e invoice, un solo claude mcp add.

Instalación en 60 segundos

La publicación en npm de @theluckystrike/mcp-office-suite (y sus dependencias) está pendiente. Hasta entonces, el paquete de un clic .mcpb o un clon+compilación es la ruta que funciona, ambas verificadas a continuación. Este servidor está empaquetado como office-suite.mcpb en la versión v0.2.1 y está listado en el registro oficial de MCP (io.github.theluckystrike/office-suite-time-invoice-expense-excel-price).

Un clic (.mcpb): descarga office-suite.mcpb desde la última versión y haz doble clic en 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"]
    }
  }
}

El formulario npx anterior comienza a funcionar en cuanto se publique el paquete. Hasta entonces, usa el paquete .mcpb anterior, o compila desde el código fuente con exactamente estos comandos:

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

Se requiere npm run build (sin -w) aquí; compila mcp-license y cada servidor hermano que office-suite inicia como hijo, y luego office-suite mismo. Luego apunta el command de tu cliente a node con un argumento: la ruta absoluta a servers/office-suite/dist/index.js.

Para ejecutar cada servidor en modo Pro, establece MCP_LICENSE_KEY en el mismo bloque de configuración, o llama a license_activate una vez con tu clave; se reenvía a cada hijo conectado. La activación es de todo o nada: la respuesta es un error a menos que cada hijo acepte la clave, e imprime una tabla por hijo (OK / FAILED con el mensaje propio de cada hijo) para que un paquete que es mitad Pro no pueda parecer un éxito.

Por qué un servidor en lugar de treinta y uno

La agregación es lo que recompensa el uso en esta categoría: el servidor más utilizado que rastreamos es una puerta de enlace agregadora de herramientas con 2,530 herramientas y 419,019 usos, 7.5 veces el siguiente servidor y 30 veces la mediana de la cohorte. Un usuario que quiere "cosas de oficina" no debería tener que agregar treinta y un servidores MCP separados a una configuración de cliente. Instalar este obtiene todas las herramientas a continuación.

Herramientas

Los nombres de las herramientas se pasan sin cambios desde cada hijo. Si este paquete alguna vez actúa como proxy de dos hijos que registran el mismo nombre de herramienta, ambos se exponen con un prefijo <child>_<tool> en su lugar; los pares renombrados actuales se enumeran en Herramientas renombradas a continuación.

time-tracker

HerramientaQué hace
timer_startInicia un cronómetro para un proyecto; detiene y registra cualquier temporizador anterior en ejecución
timer_stopDetiene el temporizador en ejecución y lo registra como una entrada de tiempo
timer_statusMuestra el temporizador en ejecución y las horas totales de hoy
entry_addRegistra tiempo que ya trabajaste, con inicio más fin o minutos
entry_listLista las entradas de tiempo registradas como tabla (gratis: últimos 7 días)
entry_deleteElimina una entrada de tiempo por id
entry_editCambia campos de una entrada existente
project_set_rateEstablece la tarifa por hora y la moneda para un proyecto
reportHoras y dinero por proyecto, día, tarea o etiqueta (agrupación por etiqueta es Pro)
export_csvExporta la hoja de tiempos a un archivo CSV
invoice_summaryConvierte tiempo facturable rastreado en partidas de factura

price-tracker

HerramientaQué hace
price_checkVerifica el precio actual de un producto ahora mismo
watch_addComienza a vigilar una URL de producto para detectar caídas de precio
watch_listLista todos los productos vigilados y su último precio
watch_removeDeja de vigilar un producto
watch_refreshVuelve a verificar todas las vigilancias (o una) inmediatamente
price_historyHistorial de precios para un producto vigilado
price_add_manualRegistra un precio manualmente, para sitios que bloquean la obtención
alerts_pendingVigilancias que cayeron por debajo de su precio objetivo

spreadsheet

HerramientaQué hace
sheet_infoResumen de un archivo CSV/XLSX: hojas, columnas, número de filas
sheet_readLee filas de una hoja de cálculo
sheet_queryFiltra, agrupa y ordena filas
sheet_statsEstadísticas por columna (mín, máx, media, suma, distintos)
sheet_findBusca texto en una hoja de cálculo
sheet_writeEscribe filas en una hoja de cálculo
sheet_add_columnAgrega una columna calculada
sheet_convertConvierte entre CSV y XLSX

invoice

HerramientaQué hace
business_setEstablece tu perfil de negocio: nombre, dirección, ID de IVA, IBAN, moneda predeterminada y términos
client_addAlmacena un cliente para que las facturas puedan referirse a él por nombre
client_listLista cada cliente almacenado
invoice_createCrea una factura a partir de partidas, con impuesto y descuento
invoice_from_hoursCrea una factura a partir de horas trabajadas a una tarifa
invoice_listLista facturas
invoice_getObtiene una factura por id o número
invoice_mark_paidRegistra un pago contra una factura
invoice_pdfRenderiza una factura como archivo PDF
overdue_reportFacturas vencidas, por cuántos días (Pro)

En todo el paquete

HerramientaQué hace
license_statusEstado Gratis/Pro de cada servidor proxy, y el enlace de actualización del paquete
license_activateActiva una clave Pro del paquete en todos los servidores a la vez. Devuelve un error con una tabla por hijo a menos que todos la acepten

Los recursos y avisos registrados por cualquier hijo (por ejemplo, el recurso timetracker://today de time-tracker y el aviso daily_standup) también se proxean bajo sus nombres originales.

Herramientas renombradas

Dos hijos pueden registrar el mismo nombre de herramienta; invoice y docx ambos tienen business_set. El paquete entonces expone ambos, con el prefijo del servidor del que provienen (invoice_business_set, docx_business_set), anuncia los renombres una vez al inicio, y reescribe la respuesta del propio hijo para que una respuesta que decía "Ejecuta business_set ..." diga el nombre que realmente puedes llamar. El mapeo completo se publica como el recurso office://tools_map: nombre expuesto -> child.tool, con los pares renombrados listados por separado.

Gratis vs Pro

Cada servidor hijo mantiene su propio nivel gratuito exactamente como se documenta en su propio README (consulta cada servers/<name>/README.md). Este paquete no cambia nada sobre esos límites; solo cambia cuántas entradas de configuración se necesitan para alcanzarlos todos.

Una sola clave Pro de paquete ($39 de pago único, de por vida) desbloquea Pro en todos los servidores del paquete, en lugar de comprar la clave de $19 de cada servidor por separado. Actívala una vez aquí y se reenvía a cada hijo.

Obtén Pro: https://mcp.zovo.one/buy/bundle

Procesos hijos

Cada hijo se ejecuta como su propio proceso stdio. Dos cosas que el proxy hace en su nombre:

  • Su stderr se drena hacia el nuestro, una línea a la vez, etiquetada con el hijo del que proviene ([invoice] ...). El stderr de un hijo es una tubería con un pequeño buffer del SO; si no se lee, un hijo que registró más que ese buffer se bloqueaba en write() y la llamada de herramienta que estaba respondiendo nunca regresaba.
  • Un hijo que muere rechaza sus solicitudes en vuelo antes de que el paquete intente reiniciarlo, para que una llamada proxy falle rápido en lugar de colgarse hasta el tiempo de espera del cliente, donde un reintento podría repetir una mutación que ya se había aplicado.

Privacidad

Cada servidor hijo almacena sus datos localmente, en ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/<name>/ por servidor. Este paquete no agrega almacenamiento propio y no envía nada a ningún lugar; solo canaliza stdio entre tu cliente MCP y los procesos hijos que inicia en tu propia máquina.

expense-tracker

PENDIENTE: servers/expense-tracker/dist aún no existe en este repositorio. Una vez que ese servidor esté compilado y publicado, agrégalo a CHILDREN en src/index.ts, su dependencia a package.json, su paso de compilación al Dockerfile, y su tabla de herramientas a este README.


Construido por theluckystrike (https://github.com/theluckystrike).

Usa estos documentos como un servidor MCP

Cualquier cliente MCP (Claude, Cursor, Windsurf, VS Code) puede leer la documentación de este repositorio directamente a través de GitMCP — sin instalación: