InvoiceFlash MCP
Officialby InvoiceFlash
README.md
# InvoiceFlash MCP
Servidor MCP (Model Context Protocol) de solo lectura para [InvoiceFlash](https://github.com/InvoiceFlash/InvoiceFlash). Se conecta directamente a la base de datos MySQL de una instalación de InvoiceFlash y expone clientes, facturas y presupuestos como *tools* que un cliente MCP (Claude Desktop, Claude Code, etc.) puede consultar en lenguaje natural.
## Por qué solo lectura
Este prototipo no incluye ninguna tool de escritura ni una tool de SQL libre: cada tool ejecuta una consulta `SELECT` fija y parametrizada, y la conexión abre la sesión MySQL en modo `READ ONLY` como segunda barrera. Escribir datos (crear facturas, modificar clientes, etc.) es un paso deliberadamente posterior, no algo que se añade "gratis" ampliando estas tools.
## Instalación
```bash
cd invoiceflash-mcp
python -m venv .venv
.venv\Scripts\activate # Windows
pip install -e .
copy .env.example .env
```
Edita `.env` con los mismos datos que `admin/config.php` de tu instalación de InvoiceFlash (`DB_HOSTNAME`, `DB_USERNAME`, `DB_PASSWORD`, `DB_DATABASE`, `DB_PORT`, `DB_PREFIX`).
## Uso con Claude Desktop / Claude Code
Añade en la configuración MCP del cliente:
```json
{
"mcpServers": {
"invoiceflash": {
"command": "invoiceflash-mcp",
"cwd": "C:\\ruta\\a\\invoiceflash-mcp"
}
}
}
```
(O `python -m invoiceflash_mcp.server` si no has instalado el paquete en el PATH.)
## Tools disponibles
| Tool | Descripción |
|---|---|
| `list_customers(company, limit)` | Lista clientes, filtro opcional por nombre de empresa |
| `get_customer(customer_id)` | Ficha de un cliente: NIF/CIF, dirección, cuenta bancaria |
| `list_invoices(company, limit)` | Lista facturas de venta |
| `get_invoice(invoice_id)` | Detalle de una factura: cabecera, líneas y totales |
| `list_quotes(company, limit)` | Lista presupuestos |
| `get_quote(quote_id)` | Detalle de un presupuesto: cabecera, líneas y totales |
| `get_suppliers(company, limit)` | Lista proveedores, filtro opcional por nombre de empresa |
| `get_order(order_id)` | Detalle de un pedido: cabecera, líneas y totales |
## Roadmap
- Tools de escritura (crear factura desde un presupuesto, actualizar estado) detrás de una confirmación explícita.
- Cobertura del resto del dominio: albaranes, pedidos, proveedores, facturas de compra.
- Autenticación/alcance por usuario en vez de credenciales de BD compartidas.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues