# Available tools

This page lists every tool the Altoviz MCP server exposes. You don't call these by name — you ask your assistant in plain language and it picks the right tool. The names are useful when an assistant tells you which tool it used, or when you want to know whether something is possible.

Each tool acts on the Altoviz account tied to the API key you authorized with.

:::tip[A note on IDs]
Most records can be referenced three ways: the Altoviz **numeric ID**, your own **internal ID** (the identifier from your system, if you set one), or a business identifier like a **number**, **email**, or **reference**. The `Find…` tools let the assistant look records up by whichever identifier you mention.
:::

## Account & connection

| Tool | What it does |
|------|--------------|
| `TestApiKey` | Verify connectivity and that your API key is valid. |
| `GetCurrentUser` | Get the profile of the signed-in user. |
| `GetAccountSettings` | Get account settings — company info, invoice settings, VAT settings, etc. |

## Customers

| Tool | What it does |
|------|--------------|
| `ListCustomers` | List customers, with pagination and full-text search. |
| `GetCustomer` | Get a customer by numeric ID. |
| `GetCustomerByInternalId` | Get a customer by your internal ID. |
| `FindCustomers` | Find customers by email, internal ID, or customer number. |
| `GetCustomerContacts` | List all contacts attached to a customer. |
| `CreateCustomer` | Create a new customer. |
| `UpdateCustomer` | Update an existing customer. |
| `DeleteCustomer` | Delete a customer. |

### Customer families

| Tool | What it does |
|------|--------------|
| `ListCustomerFamilies` | List customer families. |
| `GetCustomerFamily` | Get a customer family by numeric ID. |
| `FindCustomerFamily` | Find a customer family by number or internal ID. |
| `CreateCustomerFamily` | Create a new customer family. |
| `DeleteCustomerFamily` | Delete a customer family. |

## Suppliers

| Tool | What it does |
|------|--------------|
| `ListSuppliers` | List suppliers, with pagination and full-text search. |
| `GetSupplier` | Get a supplier by numeric ID. |
| `GetSupplierByInternalId` | Get a supplier by your internal ID. |
| `FindSupplier` | Find a supplier by email or internal ID. |
| `GetSupplierContacts` | List all contacts attached to a supplier. |
| `CreateSupplier` | Create a new supplier. |
| `UpdateSupplier` | Update an existing supplier. |
| `DeleteSupplier` | Delete a supplier. |

## Contacts

| Tool | What it does |
|------|--------------|
| `ListContacts` | List contacts, with pagination and full-text search. |
| `GetContact` | Get a contact by numeric ID. |
| `FindContacts` | Find contacts by email or internal ID. |
| `CreateContact` | Create a new contact. |
| `UpdateContact` | Update an existing contact. |
| `DeleteContact` | Delete a contact. |

## Colleagues (team members)

| Tool | What it does |
|------|--------------|
| `ListColleagues` | List internal users / team members. |
| `GetColleague` | Get a colleague by numeric ID. |
| `GetColleagueByInternalId` | Get a colleague by your internal ID. |
| `FindColleagues` | Find colleagues by email, internal ID, or colleague number. |
| `CreateColleague` | Create a new colleague. |
| `UpdateColleague` | Update an existing colleague. |
| `DeleteColleague` | Delete a colleague. |

## Products

| Tool | What it does |
|------|--------------|
| `ListProducts` | List products, with pagination, search, and family filter. |
| `GetProduct` | Get a product by numeric ID. |
| `FindProduct` | Find a product by reference or internal ID. |
| `CreateProduct` | Create a new product. |
| `UpdateProduct` | Update an existing product. |
| `DeleteProduct` | Delete a product. |

### Product families

| Tool | What it does |
|------|--------------|
| `ListProductFamilies` | List all product families. |
| `GetProductFamily` | Get a product family by ID. |
| `CreateProductFamily` | Create a new product family. |
| `DeleteProductFamily` | Delete a product family. |

## Sale invoices

Invoices are created as **drafts**, then **finalized** (which makes them official and numbered), then sent and marked paid.

| Tool | What it does |
|------|--------------|
| `ListSaleInvoices` | List invoices, filtered by date range, customer, or status. |
| `GetSaleInvoice` | Get an invoice by numeric ID. |
| `FindSaleInvoices` | Find invoices by number or internal ID. |
| `CreateSaleInvoice` | Create a new draft invoice. |
| `UpdateSaleInvoice` | Update a draft invoice. |
| `FinalizeSaleInvoice` | Finalize a draft (makes it official and numbered). |
| `SendSaleInvoice` | Email a finalized invoice to the customer. |
| `MarkSaleInvoicePaid` | Mark an invoice as paid, with payment details. |
| `DeleteSaleInvoice` | Delete a draft invoice. |
| `DownloadSaleInvoicePdf` | Download an invoice as a PDF. |

## Sale quotes

| Tool | What it does |
|------|--------------|
| `ListSaleQuotes` | List quotes, with pagination. |
| `GetSaleQuote` | Get a quote by numeric ID. |
| `FindSaleQuotes` | Find quotes by number or internal ID. |
| `CreateSaleQuote` | Create a new quote. |
| `SendSaleQuote` | Email a quote to the customer. |
| `DeleteSaleQuote` | Delete a quote. |
| `DownloadSaleQuotePdf` | Download a quote as a PDF. |

## Sale credit notes

| Tool | What it does |
|------|--------------|
| `ListSaleCredits` | List credit notes, filtered by date range or customer. |
| `GetSaleCredit` | Get a credit note by numeric ID. |
| `FindSaleCredits` | Find credit notes by number or internal ID. |
| `CreateSaleCredit` | Create a new draft credit note. |
| `UpdateSaleCredit` | Update a draft credit note. |
| `FinalizeSaleCredit` | Finalize a draft credit note. |
| `SendSaleCredit` | Email a finalized credit note to the customer. |
| `RefundSaleCredit` | Mark a credit note as refunded. |
| `DeleteSaleCredit` | Delete a draft credit note. |
| `DownloadSaleCreditPdf` | Download a credit note as a PDF. |

## Expenses (purchases & receipts)

| Tool | What it does |
|------|--------------|
| `ListPurchaseInvoices` | List purchase invoices (incoming bills from suppliers). |
| `DownloadPurchaseInvoicePdf` | Download a purchase invoice as a PDF. |
| `ListReceipts` | List expense / purchase receipts. |
| `GetReceipt` | Get a receipt by numeric ID. |
| `FindReceipt` | Find a receipt by internal ID. |
| `CreateReceipt` | Create a new receipt. |
| `UpdateReceipt` | Update an existing receipt. |
| `DeleteReceipt` | Delete a receipt. |

## Statistics

| Tool | What it does |
|------|--------------|
| `GetMonthlyBreakdown` | Monthly sales and expense breakdown for a given year. |
| `GetSalesTurnoverComparison` | Sales turnover: current vs. previous year/month and same month last year. |
| `GetExpenseTurnoverComparison` | Expense turnover: current vs. previous year/month and same month last year. |
| `GetMicroSalesTurnoverComparison` | Micro-business sales turnover (paid invoices only). |
| `GetMicroExpenseTurnoverComparison` | Micro-business expense turnover (paid expenses only). |
| `GetTotalTurnover` | All-time total turnover. |
| `GetTurnoverEvolution` | Turnover over one or more years, by month, broken down by sales, expenses, customer, supplier, product, or colleague. |
| `GetEinvoicingReadiness` | E-invoicing readiness: which suppliers and customers are configured, and which have issues. |

## Exports

Exports return a downloadable Excel/CSV file covering the requested data.

| Tool | What it does |
|------|--------------|
| `ExportSaleInvoices` | Export sales invoices (and optionally credits). |
| `ExportSaleQuotes` | Export sales quotes. |
| `ExportSaleCredits` | Export sales credit notes. |
| `ExportProducts` | Export the product catalogue. |
| `ExportCustomers` | Export customers. |
| `ExportSuppliers` | Export suppliers. |
| `ExportExpensesBook` | Export the expenses accounting register. |
| `ExportReceiptsBook` | Export the receipts accounting register. |
| `ExportBankTransactions` | Export bank transactions for a bank account. |

Most exports accept a date range, full-text search, and a customer filter where relevant.

## Webhooks

| Tool | What it does |
|------|--------------|
| `ListWebhooks` | List all registered webhooks. |
| `RegisterWebhook` | Register a new webhook endpoint. |
| `UnregisterWebhook` | Remove a webhook by ID or URL. |

## Reference data

| Tool | What it does |
|------|--------------|
| `ListVatRates` | List all VAT rates configured in the account. |
| `ListUnits` | List units of measure (kg, hour, piece, …). |
| `ListClassifications` | List classifications, optionally filtered by type. |
| `ListBankProviders` | List supported bank account providers. |
| `GetAccountSettings` | Get account settings (company, invoice, VAT, …). |

## Dashboard widget

Clients that support interactive MCP resources can render the **Altoviz App** widget (`ui://widget/altoviz.html`) — an embedded view of your Altoviz dashboard inside the conversation.

## Next

- [Connect your assistant](mcp/connect)
- [FAQ & troubleshooting](mcp/faq)