idoklad-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IDOKLAD_CLIENT_ID | Yes | From iDoklad → Settings → API | |
| IDOKLAD_READ_ONLY | No | Set to false to enable tools that create or change data | true |
| IDOKLAD_DOWNLOAD_DIR | No | Folder where downloaded PDFs are saved | ~/Downloads |
| IDOKLAD_CLIENT_SECRET | Yes | From iDoklad → Settings → API | |
| IDOKLAD_APPLICATION_ID | Yes | The Client Id of your ClientCredentials app on developer.idoklad.cz |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
Tools for the iDoklad invoicing service (Czech/Slovak). IDs are numeric iDoklad IDs, not document numbers. Dates are YYYY-MM-DD. Find customers with list_contacts and use their IDs. For questions about revenue, costs, debts or VAT, use get_business_stats and get_top_partners. For anything without a dedicated tool, use search_api_docs and then idoklad_api_request. The server runs in read-only mode: tools that create or change data are disabled (set IDOKLAD_READ_ONLY=false to enable them).
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_issued_invoicesA | List issued invoice (vydaná faktura) documents, newest first. Filter by payment status, overdue, customer, issue date range or document number. Returns a compact summary per document; use get_issued_invoice for full detail. |
| get_issued_invoiceA | Get full detail of one issued invoice (vydaná faktura) by ID, including items, partner and prices. |
| list_proforma_invoicesA | List proforma invoice (zálohová faktura) documents, newest first. Filter by payment status, overdue, customer, issue date range or document number. Returns a compact summary per document; use get_proforma_invoice for full detail. |
| get_proforma_invoiceA | Get full detail of one proforma invoice (zálohová faktura) by ID, including items, partner and prices. |
| list_credit_notesA | List credit note (opravný daňový doklad / dobropis) documents, newest first. Filter by payment status, overdue, customer, issue date range or document number. Returns a compact summary per document; use get_credit_note for full detail. |
| get_credit_noteA | Get full detail of one credit note (opravný daňový doklad / dobropis) by ID, including items, partner and prices. |
| list_received_invoicesA | List received invoice (přijatá faktura) documents, newest first. Filter by payment status, overdue, supplier, issue date range or document number. Returns a compact summary per document; use get_received_invoice for full detail. |
| get_received_invoiceA | Get full detail of one received invoice (přijatá faktura) by ID, including items, partner and prices. |
| get_document_pdfA | Download the PDF of an invoice, proforma, credit note or received invoice and save it to a local folder. Returns the file path. |
| list_contactsA | Search contacts (kontakty: customers and suppliers) by company name, IČO, DIČ or email. Without filters, lists all contacts. |
| get_contactA | Get full detail of one contact by ID: address, IČO, DIČ, bank account, default due days. |
| list_price_list_itemsA | Search the price list (ceník) by item name or code. Use the prices when creating invoices. |
| get_business_statsA | Business overview calculated by iDoklad. All amounts are in the company's home currency (usually CZK). Reports:
|
| get_top_partnersA | Biggest customers by total invoiced, or biggest debtors by unpaid amount (who owes you the most). Amounts in home currency. |
| get_contact_statsB | How a customer pays: number of invoices, total invoiced, how many are paid, unpaid and were paid after the due date. |
| get_codebookA | Get an iDoklad codebook (číselník) or company setting list: currencies, countries, VAT rates (current only), VAT codes, payment options, your bank accounts, numeric sequences, constant symbols or tags. Use it to translate IDs in documents. |
| search_api_docsA | Search the iDoklad API v3 reference for endpoints not covered by other tools (bank statements, cash vouchers, recurring invoices, sales orders, stock, webhooks…). Returns method, path, parameters (* = required). Then call idoklad_api_request. |
| idoklad_api_requestA | Call any iDoklad API v3 endpoint directly (find it with search_api_docs first). Path is relative, e.g. 'BankStatements'. List endpoints accept filter, sort, page and pagesize query parameters; filter syntax: (Field |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 18 tools
Each document type has a clear list/get pair (received invoices, issued invoices, proforma, credit notes) and the contacts/price list/codebook tools target distinct resources. The only mild overlap is among the analytics trio (get_business_stats, get_top_partners, get_contact_stats), but their descriptions carve out separate report scopes, and search_api_docs vs idoklad_api_request are explicitly sequenced as a discovery/call pair.
The dominant pattern is consistent verb_noun snake_case (list_*, get_*), applied across most of the surface. Minor deviations are get_document_pdf (noun object rather than a resource) and idoklad_api_request (namespaced noun), but both remain readable and predictable.
18 tools is slightly above the ideal band but justified: four document families each need a list and get, plus contacts, price list, PDF export, stats, codebook, and a generic API escape hatch. No tool appears redundant, though the four parallel list/get pairs make the surface feel heavier than strictly necessary.
The read-only domain (invoices, contacts, price list, statistics, codebooks, PDF export) is well covered, and the search_api_docs + idoklad_api_request pair provides an escape hatch for bank statements, cash vouchers, stock and other endpoints. Minor gaps: no get_price_list_item detail tool, and no issued/received document creation or update (consistent with the stated read-only design).