Example requests
Sentences to say to Claude, ChatGPT or Gemini, and the Novadesko tools they trigger, with a full JSON-RPC call.
Just talk normally: the AI picks the tools. The calls shown are the typical ones; ellipses stand for IDs found along the way.
Common requests
| You say | Tools called |
|---|---|
| « What is my revenue for September 2026 compared with September 2025? » | get_revenue {"from":"2026-09-01","to":"2026-09-30","compare":"previous_year"} |
| « Which invoices are overdue? » | get_unpaid_invoices |
| « Prepare a quote for Dupont SRL: 3 days of consulting at 650 EUR excl. VAT, VAT 21 %. » | search_parties {"kind":"customer","q":"Dupont"}, prepare_document_create {"type":"estimate","customer_id":…,"lines":[{"name":"Conseil","quantity":3,"unit_price_ht":650,"vat_rate":21}]}, confirm_action |
| « Send an email reminder for invoice 2026-0142. » | search_documents {"type":"invoice","q":"2026-0142"}, prepare_reminder {"document_id":…,"channel":"email"}, confirm_action |
| « Record the 1,210 EUR bank transfer received today on this invoice. » | prepare_payment {"document_id":…,"amount":1210,"payment_type":"banktransfert"}, confirm_action |
| « Add supplier Example SA, VAT BE0123456789. » | prepare_party_create {"kind":"supplier","company":"…","vat_number":"BE0123456789"}, confirm_action |
| « Import this purchase invoice (attached PDF). » | prepare_document_import {"data":{…},"file_name":"facture.pdf","file_base64":"…"}, confirm_action |
| « Where is my Peppol activation at? » | get_peppol_status |
| « How much VAT will I owe this quarter? » | get_business_insights {"topic":"vat"} |
| « Open a support ticket: my WinAuditor sync is failing. » | get_accounting_sync_status, prepare_support_ticket, confirm_action |
A full JSON-RPC call
POST https://mcp.novadesko.com
Authorization: Bearer <access_token>
Content-Type: application/json
{
"jsonrpc": "2.0",
"id": 7,
"method": "tools/call",
"params": {
"name": "get_revenue",
"arguments": { "from": "2026-09-01", "to": "2026-09-30", "compare": "previous_year" }
}
}The result is in result.content[0].text (JSON). A refusal (plan, limit, invalid argument) comes with isError: true and a readable message; an unknown tool returns JSON-RPC error -32602.
What the AI will refuse
- « Send this invoice over Peppol »: no, Peppol sending happens in Novadesko.
- « Show me my other company's invoices »: no, one connection = one company.
- « Read the .env file » or « run this SQL query »: tools that do not exist, refused and logged.