pohoda_list_prodejky
Export sales documents from POHODA accounting software by specifying document ID, date range, or recent changes for integration with MCP-compatible clients.
Instructions
Export sales documents (prodejky) from POHODA
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Document ID | |
| dateFrom | No | Date from (DD.MM.YYYY or YYYY-MM-DD) | |
| dateTill | No | Date to | |
| lastChanges | No | Only changed after this date |
Implementation Reference
- src/tools/warehouse.ts:47-71 (handler)The buildWarehouseListTool function serves as a factory handler that defines the logic for listing warehouse documents, including 'pohoda_list_prodejky'. It constructs an XML request, sends it to the Pohoda client, parses the response, and returns the result.
function buildWarehouseListTool( server: McpServer, client: PohodaClient, toolName: string, description: string, listTag: string, requestTag: string, ) { server.tool(toolName, description, listFilterFields, async (params) => { try { const xml = buildExportRequest( { ico: client.ico }, listTag, NS.lst, requestTag, (req) => applyFilter(req, params), ); const resp = parseResponse(await client.sendXml(xml)); const data = extractListData(resp); return jsonResult(description, data, data.length); } catch (e) { return err((e as Error).message); } }); } - src/tools/warehouse.ts:139-140 (registration)The 'pohoda_list_prodejky' tool is registered in the registerWarehouseTools function using the buildWarehouseListTool factory.
buildWarehouseListTool(server, client, "pohoda_list_prodejky", "Export sales documents (prodejky) from POHODA", "lst:listProdejkaRequest", "lst:requestProdejka"); buildWarehouseCreateTool(server, client, "pohoda_create_prodejka", "Create a sales document (prodejka) in POHODA", NS.pro, "pro", "prodejka", "prodejkaHeader", "prodejkaDetail", "prodejkaItem"); - src/tools/warehouse.ts:28-33 (schema)The input validation schema (listFilterFields) for 'pohoda_list_prodejky' and other warehouse list tools.
const listFilterFields = { id: z.number().optional().describe("Document ID"), dateFrom: z.string().optional().describe("Date from (DD.MM.YYYY or YYYY-MM-DD)"), dateTill: z.string().optional().describe("Date to"), lastChanges: z.string().optional().describe("Only changed after this date"), };