Moje CMS získalo MCP server
Predstavte si, že článok na webstránku či blog píšete rovno v chate s AI a odtiaľ ho aj uložíte do svojho CMS. Do môjho Administratívneho Centra AC2 som pridal MCP server, ktorý umožňuje agentovi pracovať s obsahom webu aj s obrázkami.
Od Visual Editora k rozhovoru s AI
Moje CMS sa volá AC2, čo je skratka pre Administratívne Centrum vo verzii 2. Je postavené na mojom PHP frameworku Beteha, ktorý používam aj v ďalších projektoch. Doteraz som obsah upravoval cez Visual Editor: po prihlásení sa rozhranie zobrazí priamo na stránke a umožní mi editovať obsah v šablóne webu.
Pri práci s AI však vzniká zbytočný medzikrok. V chate pripravím text, potom ho kopírujem do administrácie, nastavím názov, anotáciu, adresu a pridám obrázky. Chcel som, aby agent vedel tieto kroky vykonať priamo na základe môjho zadania.
Ako som navrhol MCP rozhranie
Základom AC2 je uzol. Môže mať rodiča, takže uzly vytvárajú hierarchiu sekcií a článkov. MCP rozhranie preto vychádza z tejto existujúcej štruktúry: agent si najskôr vie vypísať uzly, prezrieť strom a načítať konkrétny článok podľa jeho stabilného interného ID.
Oddelil som údaje spoločné pre uzol od jazykových variantov. Na jednej strane je rodič, šablóna, aktivácia, viditeľnosť a obdobie publikovania. Na druhej strane sú titulky, anotácia, obsah, SEO údaje a URL pre konkrétny jazyk. Jazykový variant môže obsahovať aj extra polia šablóny, napríklad náhľadový a titulný obrázok alebo tagy.
Aktuálne rozhranie ponúka 15 nástrojov. Okrem čítania umožňuje vytvárať, upravovať a presúvať uzly a spravovať súbory v adresári upload/. Agent tak môže pripraviť celý článok vrátane obrázkov, nie iba samotný text.
Jednotlivé operácie majú jasné hranice. Vymazanie uzla nie je rekurzívne a funguje iba pri uzle bez potomkov. Nahratie nového súboru odmieta kolíziu s existujúcim súborom aj nebezpečné prípony. Na nahradenie obsahu súboru je určený samostatný nástroj.
Testovanie na mojom blogu
Po pripojení servera do ChatGPT som si najskôr nechal vypísať dostupné nástroje. Potom som sa opýtal, ktorý článok je na blogu posledný. Agent načítal zoznam uzlov a detail najnovšieho článku The Mom Test vrátane jeho názvu, obsahu a verejnej URL. Tým som si overil čítanie reálnych dát z blogu.
Ďalším krokom je tento článok. Zadal som sekciu Programovanie, približný názov, predstavu o anotácii a požiadavku na obrázok. Ako vzor som použil existujúci článok o Bantione, z ktorého agent načítal polia pre obrázky a ich používané rozmery: 250 × 250 pixelov pre náhľad a 740 × 280 pixelov pre titulný banner.
Takéto zadanie už preveruje celý praktický postup: nájsť správnu sekciu a šablónu, pripraviť obsah, vytvoriť uzol, nahrať obrázky a priradiť ich k jazykovému variantu. Výsledok si môžem skontrolovať na webe a podľa potreby ďalej upraviť cez chat alebo Visual Editor.
MCP v produkcii
Rozhranie je pripojené k môjmu produkčnému blogu. AI tak cez nástroje pracuje so skutočnými údajmi CMS. Tento článok je zároveň praktickou ukážkou toho, ako môže vyzerať publikovanie obsahu priamo z rozhovoru.
Visual Editor má naďalej svoje miesto, najmä keď chcem vidieť obsah priamo v rozložení stránky. MCP k nemu pridáva ďalší spôsob práce: môžem opísať, čo chcem vytvoriť alebo zmeniť, a agent vykoná potrebné operácie v CMS.
Pre mňa je najzaujímavejšie, že rovnaký princíp môžem využiť aj na ďalších webstránkach postavených na AC2. CMS dostalo rozhranie, cez ktoré môže spolupracovať s AI agentmi, a bežné zadanie v chate sa tak môže premeniť na konkrétny obsah na webe.