← Files MizarARCHIVED FILE
plugin.json
9.33 KB · Nov 9, 2026 · 18:08 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "mizar",
"version": "1.1.0",
"description": "Mizar creates invoices as PDFs from your notes, hours, or timesheets inside ChatGPT \u2014 a business-admin productivity tool for freelancers and small businesses. Use when the user wants to create an invoice from notes, generate an invoice PDF, bill a client from a timesheet or hours, or draft an invoice with line items, tax, VAT, and payment terms. Trigger on requests like \"create an invoice from these notes\", \"generate invoice PDF\", \"invoice from timesheet\", \"turn this into an invoice\", \"invoice with line items and VAT\", or \"bill this client for last week's work\".",
"author": {
"name": "Midchat",
"email": "support@midchat.io",
"url": "https://midchat.io/"
},
"license": "MIT",
"keywords": [
"invoice",
"billing",
"invoice pdf",
"freelance",
"vat",
"timesheet",
"rechnung",
"line items"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Mizar",
"shortDescription": "Invoice PDFs from your notes",
"longDescription": "Mizar creates invoices as PDFs from your notes, hours, or timesheets inside ChatGPT \u2014 a business-admin productivity tool for freelancers and small businesses. Use it to create an invoice from notes, generate an invoice PDF, or bill a client from a timesheet. Paste notes, hours, or a timesheet; Mizar structures the line items, checks common invoice fields (seller and client details, invoice number, dates, tax rate, payment details) and asks you for missing ones, calculates line amounts, VAT per rate, discounts, and the total with decimal arithmetic rounded to the cent, and renders a one-page invoice in English or German as a PDF and printable HTML with a download link. It is designed to use only values you provide \u2014 missing fields appear as visible placeholders on a document marked DRAFT. Please review each invoice before sending it. Invoice details are processed only to calculate and render the document and are not stored by Midchat; download links expire after about an hour. Limitations: does not send invoices, take payments, create structured e-invoices (XRechnung/ZUGFeRD), or give tax or legal advice, and does not confirm that an invoice meets the legal requirements of your country.",
"developerName": "Midchat",
"category": "Productivity",
"capabilities": [
"Draft invoices from notes",
"Calculate VAT and totals",
"Create invoice PDFs",
"Flag missing invoice fields",
"English and German invoices"
],
"defaultPrompt": [
"Create an invoice from these notes",
"Turn this timesheet into an invoice with 19% VAT",
"Generate an invoice PDF for this client"
],
"brandColor": "#003DBC",
"brandColorDark": "#8CA7E0",
"composerIcon": "./assets/icon.png",
"composerIconDark": "./assets/icon-dark.png",
"logo": "./assets/logo.png",
"logoDark": "./assets/logo-dark.png",
"websiteURL": "https://midchat.io/mizar/",
"supportURL": "https://midchat.io/mizar/support/",
"privacyPolicyURL": "https://midchat.io/mizar/privacy/",
"termsOfServiceURL": "https://midchat.io/mizar/terms/"
},
"onboardingSkill": "./skills/invoice-from-notes/SKILL.md",
"review": {
"test_cases": {
"positive": [
{
"description": "Notes with full details \u2192 validated fields and calculated totals with 19 % VAT",
"prompt": "Create an invoice from these notes. Seller: Sample Studio, Musterstra\u00dfe 1, 10115 Berlin, Germany, VAT ID DE000000000, IBAN DE89 3704 0044 0532 0130 00, BIC COBADEFFXXX. Client: Acme GmbH, Beispielweg 2, 80331 M\u00fcnchen, Germany. Invoice no. 2026-014, dated 2026-10-06, service period 2026-09-28 to 2026-10-02, payment within 14 days, EUR. Work: workshop preparation 4h, workshop delivery 6h, follow-up document 2h, all at \u20ac110/h plus 19% VAT. Show me the totals first.",
"tools_triggered": "validate_invoice_fields, compute_invoice_totals",
"expected_behavior": "Shows three line items (440.00, 660.00, 220.00), net 1,320.00 EUR, VAT 19 % 250.80, total 1,570.80 EUR, due date 2026-10-20, and asks the user to confirm before rendering. No values are added that were not in the prompt."
},
{
"description": "Mixed VAT rates with a percentage discount applied pro-rata",
"prompt": "Calculate the totals for an invoice in EUR: 10 hours of consulting at \u20ac95/h with 19% VAT, and 3 printed handbooks at \u20ac24.90 each with 7% VAT. Apply a 10% discount on the net amount.",
"tools_triggered": "compute_invoice_totals",
"expected_behavior": "Net 1,024.70, discount 102.47, net after discount 922.23, VAT 19 % 162.45 on 855.00, VAT 7 % 4.71 on 67.23, tax total 167.16, grand total 1,089.39 EUR."
},
{
"description": "Complete invoice rendered as a final German PDF",
"prompt": "Erstelle eine Rechnung als PDF auf Deutsch. Verk\u00e4ufer: Sample Studio, Musterstra\u00dfe 1, 10115 Berlin, USt-IdNr. DE000000000, IBAN DE89 3704 0044 0532 0130 00, BIC COBADEFFXXX. Kunde: Acme GmbH, Beispielweg 2, 80331 M\u00fcnchen. Rechnungsnr. 2026-015, Datum 2026-10-06, Leistung am 2026-10-02, zahlbar in 14 Tagen, EUR. Position: Beratung 8 h \u00e0 120 \u20ac zzgl. 19 % USt. Die Summen sind best\u00e4tigt, bitte direkt das PDF.",
"tools_triggered": "validate_invoice_fields, render_invoice",
"expected_behavior": "Returns a working PDF download link (expires in about 60 minutes) for a non-draft invoice with German labels (Rechnung, Netto, USt, Gesamt, F\u00e4llig am): net 960.00, USt 19 % 182.40, total 1,142.40 EUR, due 2026-10-20."
},
{
"description": "Draft with visible placeholders when the user will add details later",
"prompt": "Turn this into an invoice PDF, I'll add the invoice number and bank details later. From: Sample Studio, Musterstra\u00dfe 1, 10115 Berlin, VAT ID DE000000000. To: Acme GmbH, Beispielweg 2, 80331 M\u00fcnchen. Date 2026-10-06, service date 2026-10-05, due in 30 days, EUR. Logo design, flat fee \u20ac1,500 plus 19% VAT.",
"tools_triggered": "validate_invoice_fields, render_invoice",
"expected_behavior": "Returns a PDF link for a document labelled DRAFT showing [INVOICE NO] and [IBAN] placeholders (no invented number or IBAN), total 1,785.00 EUR (net 1,500.00, VAT 285.00), and lists what must be filled before sending."
},
{
"description": "Incomplete notes \u2192 missing-field checklist instead of invented values",
"prompt": "Make an invoice for Acme GmbH for the 6 hours of workshop I did last week.",
"tools_triggered": "validate_invoice_fields",
"expected_behavior": "Does not produce totals or a PDF. Asks in one message for the missing required details: hourly rate, tax rate, currency, invoice number and date, service date, payment terms, seller name/address/VAT ID or tax number, payment details, and the client address. No rate, tax rate or invoice number is guessed."
}
],
"negative": [
{
"description": "Sending the invoice or charging the client is out of scope. Expected: Declines to send email or take payment; explains Mizar only drafts and renders invoices for the user to send; offers to finish the PDF. No tool is called.",
"prompt": "Email this invoice to billing@acme.example and charge their credit card for the total."
},
{
"description": "Tax advice is out of scope. Expected: no Mizar tool is called and no invoice is created; ChatGPT may answer the general tax question on its own, but Mizar gives no tax advice and does not decide the user's tax status.",
"prompt": "I'm a freelancer in Germany \u2014 should I charge 19% VAT or am I a Kleinunternehmer?"
},
{
"description": "Extracting data from a received supplier invoice is not invoice creation. Expected: no Mizar tool is called and no invoice is created; ChatGPT may offer to help with the extraction itself if the user uploads the file.",
"prompt": "Pull the line items and totals out of this supplier invoice PDF into a spreadsheet."
}
]
},
"demo_recording_url": "https://midchat.io/mizar/demo/mizar-demo.mp4",
"commerce": false,
"commerce_description": "This plugin does not sell products or process payments. It drafts invoice documents for the user to send themselves; it does not collect or move money."
},
"publication": {
"release_notes": "v1.1.0 \u2014 Adds the hosted Mizar MCP server (https://mcp.midchat.io/mcp, no sign-in): validate_invoice_fields, compute_invoice_totals (totals with decimal arithmetic, VAT per rate, pro-rata discounts) and render_invoice (EN/DE one-page PDF + HTML via short-lived encrypted links; no invoice data stored). The invoice-from-notes skill now uses these tools first and keeps the code/chat-only fallbacks."
},
"apps": "./.app.json"
}
},
"homepage": "https://midchat.io/mizar/"
}
SHA-256: 28cafce6d667aa3aae673e4274a80c18d3c63b450f760baef5e662dea3ffde8a