PDF invoices (VAT by rate, EN/FR) and links to free in-browser PDF tools on dozokit.com.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Lay out a PDF invoice from the details the user gives: who sends it, who pays, and the lines (description, quantity, unit price, VAT %). Shows a preview, and returns a dozokit.com link that opens the invoice filled in, where the user checks it and downloads the PDF, made on their device. Use lang fr and EUR for a French invoice; set noVat for a French micro-entrepreneur exempt from VAT (it prints « TVA non applicable, art. 293 B du CGI »). Read-only: nothing is sent or stored. Crée une facture PDF à partir des informations données.
Due date, YYYY-MM-DD. Defaults to 30 days after the issue date.
Bank details such as IBAN and BIC.
Language printed on the invoice.
Payment terms or notes.
Issue date, YYYY-MM-DD. Defaults to today.
Invoice number. Defaults to INV-<year>-001.
ISO currency code.
Lay out a PDF invoice from the details the user gives: who sends it, who pays, and the lines (description, quantity, unit price, VAT %). Shows a preview, and returns a dozokit.com link that opens the invoice filled in, where the user checks it and downloads the PDF, made on their device. Use lang fr and EUR for a French invoice; set noVat for a French micro-entrepreneur exempt from VAT (it prints « TVA non applicable, art. 293 B du CGI »). Read-only: nothing is sent or stored. Crée une facture PDF à partir des informations données.
| Argument | Type | Description |
|---|---|---|
| due | string | Due date, YYYY-MM-DD. Defaults to 30 days after the issue date. |
| bank | string | Bank details such as IBAN and BIC. |
| lang | string | Language printed on the invoice. |
| lines* | array | |
| noVat | boolean | |
| terms | string | Payment terms or notes. |
| client* | object | |
| issued | string | Issue date, YYYY-MM-DD. Defaults to today. |
| number | string | Invoice number. Defaults to INV-<year>-001. |
| seller* | object | |
| currency | string | ISO currency code. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"seller",
"client",
"lines"
],
"properties": {
"due": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Due date, YYYY-MM-DD. Defaults to 30 days after the issue date."
},
"bank": {
"type": "string",
"maxLength": 300,
"description": "Bank details such as IBAN and BIC."
},
"lang": {
"enum": [
"en",
"fr"
],
"type": "string",
"default": "en",
"description": "Language printed on the invoice."
},
"lines": {
"type": "array",
"items": {
"type": "object",
"required": [
"description",
"price"
],
"properties": {
"qty": {
"type": "number",
"default": 1,
"maximum": 1000000,
"minimum": 0
},
"vat": {
"type": "number",
"default": 0,
"maximum": 100,
"minimum": 0,
"description": "VAT rate in percent, 0 when there is none."
},
"price": {
"type": "number",
"maximum": 1000000000,
"minimum": -1000000000,
"description": "Unit price, before VAT."
},
"description": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
}
},
"maxItems": 50,
"minItems": 1
},
"noVat": {
"type": "boolean",
"default": false
},
"terms": {
"type": "string",
"maxLength": 600,
"description": "Payment terms or notes."
},
"client": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Who pays the invoice."
},
"address": {
"type": "string",
"maxLength": 300
},
"vatNumber": {
"type": "string",
"maxLength": 40
}
}
},
"issued": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Issue date, YYYY-MM-DD. Defaults to today."
},
"number": {
"type": "string",
"maxLength": 40,
"description": "Invoice number. Defaults to INV-<year>-001."
},
"seller": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "The person or company sending the invoice."
},
"email": {
"type": "string",
"maxLength": 120
},
"address": {
"type": "string",
"maxLength": 300
},
"companyId": {
"type": "string",
"maxLength": 60,
"description": "SIRET, company number, ABN…"
},
"vatNumber": {
"type": "string",
"maxLength": 40
}
}
},
"currency": {
"type": "string",
"default": "EUR",
"pattern": "^[A-Z]{3}$",
"description": "ISO currency code."
}
}
}Give the user the Dozo PDF tool they need, on dozokit.com: merge (several PDFs into one), compress (make a PDF smaller), split (by page ranges), jpg_to_pdf (images into one PDF), sign, organize (reorder, rotate, delete pages). The user picks the files there and they never leave their device. Files already attached to this conversation cannot be used. Read-only. Donne le lien vers l’outil PDF : les fichiers restent sur l’appareil.
| Argument | Type | Description |
|---|---|---|
| lang | string | Language of the tool, fr for a French-speaking user. |
| tool* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"tool"
],
"properties": {
"lang": {
"enum": [
"en",
"fr"
],
"type": "string",
"default": "en",
"description": "Language of the tool, fr for a French-speaking user."
},
"tool": {
"enum": [
"merge",
"compress",
"split",
"jpg_to_pdf",
"sign",
"organize"
],
"type": "string"
}
}
}