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

Servidores relacionados

NotebookLM Web Importer

Importa páginas web y videos de YouTube a NotebookLM con un clic. Utilizado por más de 200,000 usuarios.

Instalar extensión de Chrome