Pohoda MCP

MCP server for Pohoda accounting software (Czech) - read and create invoices, orders, inventory, contacts via mServer XML API.

Pohoda MCP Server

MCP server pro účetní software Pohoda od Stormware. Komunikuje s Pohodou přes mServer XML API.

Propojte svého AI asistenta přímo s účetnictvím. Ptejte se na faktury, procházejte adresář, kontrolujte zásoby, vytvářejte nové doklady nebo si nechte vytisknout fakturu do PDF. Stačí napsat, co potřebujete, a MCP server se postará o komunikaci s Pohodou.

Požadavky

  • PHP 8.1+
  • ext-curl, ext-dom, ext-simplexml
  • Pohoda s aktivním mServerem

Nastavení mServeru v Pohodě

Před použitím MCP serveru je potřeba v Pohodě zapnout a nakonfigurovat mServer.

1. Otevření správy mServeru

V programu Pohoda otevřete agendu Účetní jednotky, v menu zvolteDatabáze > POHODA mServer.

Otevření správy mServeru

2. Správa konfigurací

Otevře se dialogové okno se seznamem konfigurací mServeru. Pro každou konfiguraci je uveden název, port, stav spuštění, host a PID.

Správa mServeru

3. Vytvoření nové instance

Klikněte na Nový a na záložce Základní nastavte:

  • Název mServeru
  • Účetní jednotku, se kterou bude mServer komunikovat
  • Port pro komunikaci (výchozí 444)

Nastavení instance

Na záložce HTTPS lze zapnout zabezpečenou komunikaci:

Nastavení HTTPS

Na záložce Monitoring lze zapnout logování komunikace:

Nastavení monitoringu

4. Spuštění

Vyberte konfiguraci a klikněte na Spustit (nebo dvakrát klikněte na záznam). mServer začne naslouchat na nastaveném portu.

Podrobnosti viz dokumentace Stormware.

Instalace MCP serveru

git clone https://github.com/dg/pohoda-mcp.git cd pohoda-mcp composer install

Konfigurace

Server se konfiguruje přes proměnné prostředí:

ProměnnáPopisVýchozí
POHODA_URLURL mServeruhttp://localhost:444
POHODA_ICOICO účetní jednotky
POHODA_USERNAMEUživatelské jméno pro mServer
POHODA_PASSWORDHeslo

Použití v agentech (např. Claude Code)

Přidejte do .mcp.json nebo do project settings:

{ "mcpServers": { "pohoda": { "command": "php", "args": ["/cesta/k/pohoda-mcp/server.php"], "env": { "POHODA_URL": "http://localhost:444", "POHODA_ICO": "12345678", "POHODA_USERNAME": "Admin", "POHODA_PASSWORD": "" } } } }

Dostupné nástroje

pohoda_status

Ověří, jestli mServer běží a odpovídá.

pohoda_list

Hlavní nástroj pro čtení dat. Vrací záznamy z libovolné agendy s možností filtrování.

Podporované agendy:

AgendaPopisAgendaPopis
invoicefaktury*prijemkapříjemky
orderobjednávkyvydejkavýdejky
addressbookadresářprodejkaprodejky
stockzásobyprevodkapřevodky
voucherpokladní dokladyvyrobavýroba
bankbankaaccountancyúčetní deník
contractzakázkystoresklady
intDocinterní dokladybankAccountbankovní účty
offernabídkycashRegisterpokladny
enquirypoptávkynumericalSeriesčíselné řady
centrestřediska
activityčinnosti

* Agenda invoice vyžaduje parametr invoiceType: issuedInvoice nebo receivedInvoice.

Filtry pro doklady:

ParametrPopis
idID záznamu
dateFrom / dateTillrozsah dat (YYYY-MM-DD)
companynázev firmy
icoIČO firmy
numberčíslo dokladu
lastChangeszáznamy změněné od data (YYYY-MM-DDThh:mm:ss)

Filtry pro zásoby (navíc k výše uvedeným):

ParametrPopis
codekód zásoby
namenázev zásoby
EANčárový kód
storagecesta ve členění skladu (např. "ZBOZI/Elektro")

pohoda_create_invoice

Vytvoření vydané nebo přijaté faktury. Podporuje:

  • adresu partnera přímo nebo vazbu na adresář (partnerId)
  • variabilní symbol, datum splatnosti, datum zdanitelného plnění
  • předkontaci, způsob platby, bankovní účet
  • středisko, činnost, zakázku
  • cizí měnu s kurzem
  • položky s vazbou na skladovou kartu (stockCode)

pohoda_create_address

Vytvoření záznamu v adresáři (firma/kontakt).

pohoda_create_stock

Vytvoření skladové karty. Kromě základních údajů (kód, název, cena) podporuje:

  • EAN, PLU pro pokladny
  • příznaky pro prodej a e-shop
  • popis, doplněk názvu, krátký název
  • minimální a maximální zásobu, hmotnost
  • dodavatele, záruku

pohoda_create_order

Vytvoření přijaté nebo vydané objednávky s položkami.

pohoda_print

Tisk nebo export do PDF libovolného záznamu. Umí:

  • tisk na tiskárnu (výchozí nebo konkrétní)
  • export do PDF souboru na serveru (pdfPath je povinný)
  • vrácení PDF jako Base64 přímo v odpovědi
  • odeslání PDF emailem (s předmětem a textem)

Agenda se zadává česky: vydane_faktury, prijate_faktury, zasoby, adresar,pokladna, banka, interni_doklady, zakazky, vydejky, prijemky, prodejky,vydane_objednavky, prijate_objednavky, vydane_nabidky, prijate_nabidky atd.

ID tiskové sestavy (reportId) najdete ve vlastnostech sestavy v programu Pohoda.

pohoda_raw_xml

Odeslání libovolného XML. Pokrývá případy, na které ostatní nástroje nestačí. XML se vloží přímo do <dat:dataPackItem> obálky, musí tedy obsahovat vlastní namespace deklarace.

Struktura projektu

server.php              vstupní bod MCP serveru (stdio transport)
src/
	McpTools.php          tenký MCP adaptér (#[McpTool] atributy)
	PohodaClient.php      HTTP klient a doménové metody pro mServer API
	XmlBuilder.php        stavba XML požadavků přes XMLWriter
	Response.php          parsovaná odpověď z mServeru
	ResponseItem.php      jeden záznam z odpovědi

Licence

MIT

Máy chủ liên quan

NotebookLM Web Importer

Nhập trang web và video YouTube vào NotebookLM chỉ với một cú nhấp. Được tin dùng bởi hơn 200.000 người dùng.

Cài đặt tiện ích Chrome