# Altoviz — how to use (mcp.ai)

Connect your Altoviz account and use 67 tools for accounting straight from your AI agent. Connect with your own API key. Altoviz is a cloud-based billing and invoicing platform for businesses, offering online payments, expense tracking, document management, and customizable invoices.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_altoviz?ms=1787296080000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `altoviz_create_contact`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/altoviz`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/altoviz/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/altoviz/create/contact` — Creates a new contact in the Altoviz system. Use when you need to add a new contact with details like name, email, phone, and company information.
  - body: { email?: string, phone?: string, title?: string, service?: string, function?: string, last_name?: string, cell_phone?: string, first_name?: string, internal_id?: string, company_name?: string, display_name?: string, inverted_display_name?: string }
- `POST https://api.mcp.ai/api/altoviz/create/customer` — Creates a new customer in Altoviz. Use type='Company' for business customers (requires companyName) or type='Individual' for personal customers (typically uses firstName/lastName).
  - body: { type: string, email?: string, phone?: string, title?: string, active?: boolean, family?: object, number?: string, lastName?: string, cellPhone?: string, firstName?: string, internalId?: string, companyName?: string, internalNotes?: string, billingAddress?: object, billingOptions?: object, shippingAddress?: object, companyInformations?: object }
- `POST https://api.mcp.ai/api/altoviz/create/customer/family` — Creates a new customer family in Altoviz for categorizing and organizing customers into groups. Use when you need to create customer segments or categories for better organization.
  - body: { label?: string, number?: string, internal_id?: string }
- `POST https://api.mcp.ai/api/altoviz/create/product` — Creates a new product in the Altoviz system. This tool allows for the independent creation of a product with all necessary details.
  - body: { vat?: object, name: string, unit?: object, active?: boolean, family?: object, number: string, unit_price: number, description: string, internal_id?: string, product_type: string, internal_notes?: string, purchase_price: number, default_quantity?: number, is_unit_price_tax_included?: boolean }
- `POST https://api.mcp.ai/api/altoviz/create/product/family` — Tool to create a new product family in Altoviz. Use when you need to organize products into categories or families for better inventory management.
  - body: { label: string, number?: string }
- `POST https://api.mcp.ai/api/altoviz/create/receipt` — Creates a new receipt in the Altoviz system to record customer payments. Use when you need to document received payments and optionally link them to invoices or other documents.
  - body: { date: string, links?: object[], notes?: string, amount: number, status?: string, metadata?: object, reference?: string, customer_id?: integer, internal_id?: string, customer_name?: string, payment_method: string, customer_number?: string, customer_internal_id?: string }
- `POST https://api.mcp.ai/api/altoviz/create/sale/credit` — Creates a new draft credit note (avoir) in Altoviz. Credit notes are used to cancel or refund invoices. The credit note is created in draft status and can be modified before being finalized.
  - body: { date?: string, lines?: object[], region: string, subject?: string, vatMode?: string, vatNote?: string, metadata?: object, customerId?: integer, internalId?: string, footerNotes?: string, headerNotes?: string, liableToVat?: boolean, customerName?: string, internalNotes?: string, billingAddress?: object, billingContact?: object, customerNumber?: string, globalDiscount?: object, shippingAmount?: number, shippingAddress?: object, shippingContact?: object, vendorReference?: string, vatReverseCharge?: boolean, customerVatNumber?: string, cancelledInvoicetId?: integer, useTaxIncludedPrices: boolean, customerOrderReference?: string, cancelledInvoicetNumber?: string }
- `POST https://api.mcp.ai/api/altoviz/create/sale/invoice` — Creates a new draft sale invoice in Altoviz. The invoice is created in draft status and can be modified before being finalized. Use when you need to generate an invoice for a customer with line items.
  - body: { date?: string, lines: object[], region?: string, subject?: string, vatMode?: string, vatNote?: string, metadata?: object, customerId: integer, internalId?: string, footerNotes?: string, headerNotes?: string, liableToVat?: boolean, shippingVat?: object, customerName?: string, internalNotes?: string, billingAddress?: object, billingContact?: object, customerNumber?: string, globalDiscount?: object, shippingAmount?: number, shippingAddress?: object, shippingContact?: object, vendorReference?: string, vatReverseCharge?: boolean, customerVatNumber?: string, useTaxIncludedPrices?: boolean, customerOrderReference?: string }
- `POST https://api.mcp.ai/api/altoviz/delete/colleague` — Tool to delete a colleague from Altoviz. Use when you need to permanently remove a colleague from the system.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/delete/customer` — Tool to delete a customer from Altoviz. Use when you need to permanently remove a customer record from the system. Use ALTOVIZ_FIND_CUSTOMER first to look up customer IDs by email address if needed.
  - body: { customer_id: string }
- `POST https://api.mcp.ai/api/altoviz/delete/customer/family` — Tool to delete a customer family from Altoviz. Use when you need to permanently remove a customer family from the system.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/delete/product` — This tool allows you to delete an existing product from Altoviz. The action permanently removes the product from the system.
  - body: { product_id: string }
- `POST https://api.mcp.ai/api/altoviz/delete/product/family` — Tool to delete a product family from Altoviz. Use when you need to permanently remove a product family from the system.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/delete/receipt` — Tool to delete a receipt from Altoviz. Use when you need to permanently remove a receipt from the system.
  - body: { receipt_id: integer }
- `POST https://api.mcp.ai/api/altoviz/delete/sale/credit` — Tool to delete a draft credit from Altoviz. Use when you need to permanently remove a draft credit. Only draft credits can be deleted; finalized credits cannot be removed.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/delete/sale/invoice` — Tool to delete a draft sale invoice from Altoviz. Use when you need to permanently remove a draft invoice from the system. Only draft invoices can be deleted; finalized invoices cannot be deleted.
  - body: { invoice_id: integer }
- `POST https://api.mcp.ai/api/altoviz/delete/sale/quote` — Tool to delete a sale quote from Altoviz. Use when you need to permanently remove a quote from the system.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/delete/supplier` — Tool to delete a supplier from Altoviz. Use when you need to permanently remove a supplier record from the system.
  - body: { supplier_id: integer }
- `POST https://api.mcp.ai/api/altoviz/download/purchase/invoice` — Tool to download a purchase invoice as a PDF file from Altoviz. Use when you need to retrieve the PDF document of a specific purchase invoice.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/download/sale/credit` — Tool to download a sale credit as a PDF file from Altoviz. Use when you need to retrieve the PDF version of a specific sale credit document.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/download/sale/invoice` — Tool to download a sale invoice as a PDF file from Altoviz. Use when you need to retrieve the PDF document of a specific sale invoice.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/find/contact` — This tool allows searching for contacts in Altoviz using an email address. The action is independently executable and returns contact details if found.
  - body: { email: string }
- `POST https://api.mcp.ai/api/altoviz/find/customer` — This tool allows you to find a customer in Altoviz by their email address. This is a standalone action that doesn't require any resource IDs or dependencies on other tools.
  - body: { email: string }
- `POST https://api.mcp.ai/api/altoviz/find/product` — Search for a product in Altoviz by its product number/SKU. Returns the first matching product with complete details including name, description, pricing, VAT, unit of measurement, and more. Returns nu
  - body: { product_number: string }
- `POST https://api.mcp.ai/api/altoviz/find/product/by/number/or/id` — Tool to find a product in Altoviz by exact product number or internal ID. Use when you need to look up a product by either its product number/SKU or your internal system ID. At least one of the parame
  - body: { number?: string, internal_id?: string }
- `POST https://api.mcp.ai/api/altoviz/find/receipt` — Tool to find receipts in Altoviz by customer internal ID. Returns a list of receipts associated with the specified internal ID. If no internal ID is provided, may return all receipts. Use when you nee
  - body: { PageSize?: integer, PageIndex?: integer, internalId?: string }
- `POST https://api.mcp.ai/api/altoviz/find/sale/credit` — Tool to find sale credits in Altoviz. Use when you need to search for or retrieve credit notes. Can filter by internal ID or return all credits if no filter is provided.
  - body: { PageSize?: integer, PageIndex?: integer, internalId?: string }
- `POST https://api.mcp.ai/api/altoviz/find/sale/invoice` — Tool to find sale invoices in Altoviz. Use when you need to search for or retrieve invoices. Can filter by internal ID or return all invoices if no filter is provided.
  - body: { PageSize?: integer, PageIndex?: integer, internalId?: string }
- `POST https://api.mcp.ai/api/altoviz/find/sale/quote` — Tool to find sale quotes in Altoviz. Use when you need to search for or retrieve quotations. Can filter by internal ID or return all quotes if no filter is provided.
  - body: { PageSize?: integer, PageIndex?: integer, internalId?: string }
- `POST https://api.mcp.ai/api/altoviz/get/classifications` — This tool retrieves a list of classifications from the Altoviz platform. Classifications are essential for producing accounting registers from user-created invoices. It can fetch all classifications o
  - body: { type?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer }
- `POST https://api.mcp.ai/api/altoviz/get/colleague` — Tool to retrieve a colleague's details from Altoviz by their ID. Use this when you need to fetch information about a specific colleague including their contact information, partner status, and metadat
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/contact` — Tool to retrieve a contact by its unique ID from Altoviz. Use when you need to fetch detailed information about a specific contact.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/current/user` — Tool to retrieve the current authenticated user's information from Altoviz. Use when you need to get details about the currently authenticated user.
- `POST https://api.mcp.ai/api/altoviz/get/customer` — Tool to retrieve a customer by their ID from Altoviz. Use when you need detailed information about a specific customer.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/customer/by/internal/id` — Tool to retrieve a single customer from Altoviz by their internal ID. Use when you need to fetch detailed information about a specific customer using their internal identifier.
  - body: { internal_id: string }
- `POST https://api.mcp.ai/api/altoviz/get/customer/contacts` — Tool to retrieve all contacts associated with a specific customer in Altoviz. Use when you need to get contact information for a customer using their customer ID.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/customer/family` — Tool to retrieve a customer family by ID from Altoviz. Use when you need to fetch details of a specific customer family.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/product` — Tool to retrieve a product by its unique ID in Altoviz. Use when you need complete details about a specific product including pricing, VAT, units, and inventory information.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/product/family` — Tool to retrieve a specific product family by its ID from Altoviz. Use when you need to fetch details about a product category or family grouping.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/receipt` — Tool to retrieve a receipt by its ID from Altoviz. Use when you need to fetch details of a specific receipt including amount, payment method, status, and customer information.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/sale/credit` — Tool to retrieve a sale credit by its ID from Altoviz. Use when you need to get detailed information about a specific credit.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/sale/invoice` — Tool to retrieve a sale invoice by its ID from Altoviz. Use when you need to get detailed information about a specific invoice.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/settings` — Tool to retrieve application settings from Altoviz. Use when you need to access configuration for accounting, company information, emailing, sales, social media, or VAT settings.
- `POST https://api.mcp.ai/api/altoviz/get/supplier` — Tool to retrieve a supplier by their ID from Altoviz. Use when you need detailed information about a specific supplier.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/supplier/contacts` — Tool to retrieve all contacts associated with a specific supplier in Altoviz. Use when you need to get contact information for a supplier using their supplier ID.
  - body: { id: integer }
- `POST https://api.mcp.ai/api/altoviz/get/units` — This tool retrieves a list of all available units in the Altoviz system. Units are used for product measurements and quantity specifications in various transactions.
  - body: { OrderBy?: string, PageSize?: integer, PageIndex?: integer }
- `POST https://api.mcp.ai/api/altoviz/get/vats` — This tool retrieves a list of all available VAT rates from Altoviz. It's essential for creating and managing invoices and quotes where VAT calculations are required. It supports retrieving VAT rates, 
- `POST https://api.mcp.ai/api/altoviz/list/colleagues` — Retrieves a list of colleagues from Altoviz. Supports pagination, sorting, and full-text search. Use this to discover available colleagues, search for specific team members, or list all colleagues in 
  - body: { query?: string, order_by?: string, page_size?: integer, page_index?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/contacts` — Tool to retrieve a list of contacts from Altoviz with optional filtering and pagination. Use when you need to browse or search through available contacts.
  - body: { query?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/customer/families` — Tool to list customer families from Altoviz. Use when you need to retrieve or search through customer family groups. Supports pagination and full-text search to filter results.
  - body: { query?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/customers` — Tool to retrieve a paginated list of customers from Altoviz. Use when you need to browse all customers, search for customers by name/email/company, or fetch multiple customers at once. Supports pagina
  - body: { query?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/product/families` — Tool to retrieve a list of product families from Altoviz. Use when you need to browse available product families, search for specific families, or get family information for product categorization.
  - body: { query?: string, order_by?: string, page_size?: integer, page_index?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/receipts` — Tool to retrieve a list of receipts from Altoviz. Use this when you need to view, search, or filter receipts by pagination, ordering, or full-text search.
  - body: { query?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/sale/credits` — Tool to retrieve a list of sale credits from Altoviz. Use when you need to view credit notes issued to customers, filter by date range, or find credits for a specific customer. Supports pagination and
  - body: { To?: string, From?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer, CustomerId?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/sale/invoices` — Tool to retrieve a list of sale invoices from Altoviz. Use when you need to view invoices issued to customers, filter by date range, status, or find invoices for a specific customer. Supports paginati
  - body: { To?: string, From?: string, Status?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer, CustomerId?: integer, IncludeCancelled?: boolean }
- `POST https://api.mcp.ai/api/altoviz/list/sale/quotes` — Tool to retrieve a list of sale quotes from Altoviz. Use when you need to view quotes issued to customers, filter by date range, or find quotes for a specific customer. Supports pagination and sorting
  - body: { To?: string, From?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer, CustomerId?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/suppliers` — Tool to retrieve a paginated list of suppliers from Altoviz. Use when you need to browse all suppliers, search for suppliers by name/email/company, or fetch multiple suppliers at once. Supports pagina
  - body: { query?: string, OrderBy?: string, PageSize?: integer, PageIndex?: integer }
- `POST https://api.mcp.ai/api/altoviz/list/webhooks` — Tool to retrieve all configured webhooks from Altoviz. Use when you need to view all webhook configurations, including their URLs, event types, and authentication details.
- `POST https://api.mcp.ai/api/altoviz/register/webhook` — Tool to register a new webhook in Altoviz. Use when you need to receive real-time notifications for events like customer creation, invoice updates, or product changes.
  - body: { url: string, name: string, types: string[], secret_key?: string }
- `POST https://api.mcp.ai/api/altoviz/test/api/key` — Tool to test API key validity and retrieve basic account information. Use this action to verify that the API key is working correctly and to get basic information about the authenticated account.
  - body: { api_version?: string }
- `POST https://api.mcp.ai/api/altoviz/unregister/webhook` — Tool to unregister a webhook from Altoviz. Use when you need to remove a webhook configuration. Either webhook ID or URL must be provided to identify which webhook to unregister.
  - body: { id?: integer, url?: string }
- `POST https://api.mcp.ai/api/altoviz/update/colleague` — Updates an existing colleague's information in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Use this action to modify colleague details such as c
  - body: { id: integer, name?: string, email?: string, phone?: string, title?: string, number?: string, user_id?: string, last_name?: string, metadatas?: object, cell_phone?: string, first_name?: string, is_partner?: boolean, internal_id?: string, homecare_service_number?: string, initial_partner_balance?: number }
- `POST https://api.mcp.ai/api/altoviz/update/customer` — Updates an existing customer's information in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Important: For Individual customers, you must provide 
  - body: { email?: string, phone?: string, title?: string, last_name?: string, cell_phone?: string, first_name?: string, customer_id: string, internal_id?: string, company_name?: string }
- `POST https://api.mcp.ai/api/altoviz/update/receipt` — Updates an existing receipt in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Use this to modify receipt details such as amount, date, payment meth
  - body: { id: integer, date?: string, links?: object[], notes?: string, amount?: number, status?: string, metadata?: object, reference?: string, customer_id?: integer, internal_id?: string, customer_name?: string, payment_method?: string, customer_number?: string, customer_internal_id?: string }
- `POST https://api.mcp.ai/api/altoviz/update/sale/credit` — Tool to update a draft credit note in Altoviz. Use when you need to modify an existing draft credit. Only draft credits can be updated; finalized credits cannot be modified.
  - body: { id: integer, date?: string, lines?: object[], region?: string, isDraft?: boolean, subject?: string, vatMode?: string, vatNote?: string, metadata?: object, customerId?: integer, internalId?: string, footerNotes?: string, headerNotes?: string, liableToVat?: boolean, shippingVat?: object, customerName?: string, internalNotes?: string, billingAddress?: object, billingContact?: object, customerNumber?: string, globalDiscount?: object, shippingAmount?: number, shippingAddress?: object, shippingContact?: object, vendorReference?: string, vatReverseCharge?: boolean, customerVatNumber?: string, cancelledInvoicetId?: integer, useTaxIncludedPrices?: boolean, customerOrderReference?: string, cancelledInvoicetNumber?: string }
- `POST https://api.mcp.ai/api/altoviz/update/supplier` — Updates an existing supplier's information in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Use this when you need to modify supplier details such
  - body: { id: integer, name?: string, email?: string, phone?: string, title?: string, number?: string, address?: object, last_name?: string, cell_phone?: string, first_name?: string, internal_id?: string, internal_notes?: string, company_informations?: object, default_payment_method?: string }
- `POST https://api.mcp.ai/api/altoviz/upload/purchase/invoice` — Tool to upload and create a new purchase invoice from a file (PDF or image format). Use when you need to create a purchase invoice by uploading a document.
  - body: { file: object }

## Example prompts
- "What can I do in Altoviz?"
- "Show me a summary of my Altoviz account"

## More
- Page: https://mcp.ai/altoviz
- Agent spec (llms.txt): https://mcp.ai/altoviz/llms.txt
- Postman collection: https://mcp.ai/altoviz/postman.json
