Daktela MCP Server¶
Daktela MCP Server propojuje AI asistenty (Claude Code, Claude Desktop, Cursor a další) s vaším Daktela Contact Centre pomocí Model Context Protocol (MCP). Poskytuje přístup k datům vašeho kontaktního centra, což umožňuje úlohy jako audit kvality emailů, kontrolu obchodního pipeline nebo analýzu hovorů — bez nutnosti psát jakýkoli kód.
Info
Ve výchozím nastavení poskytuje MCP server přístup k datům vaší Daktely pouze pro čtení. Zápisový přístup lze povolit pro vybrané role, ale zapnout ho pro vaši instanci může pouze Daktela support — viz Zápisová oprávnění níže.
Daktela MCP Server lze používat dvěma způsoby:
- Hostovaný (vestavěný) — MCP server běží jako součást vaší Daktela instance. Není potřeba žádná instalace.
- Vlastní hostování — spusťte open-source PHP server sami pro vlastní nasazení nebo cloudové prostředí.
Co je MCP?¶
Model Context Protocol je otevřený standard, který umožňuje AI aplikacím připojit se k externím zdrojům dat a nástrojům. Připojením k Daktela MCP Serveru získá váš AI asistent strukturovaný přístup k vaší Daktela instanci — umožňující analytické a reportovací úlohy bez vlastního kódu.
Zápisová oprávnění¶
Ve výchozím nastavení poskytuje MCP server pouze nástroje pouze pro čtení — nemůže vytvářet ani upravovat žádné záznamy. Operace pouze pro čtení jsou vždy dostupné a zápisový přístup je nijak neovlivňuje.
Info
Zápisový přístup nelze nastavit samoobslužně. Pro jeho povolení je nutné kontaktovat Daktela support a požádat o zapnutí pro vaši instanci.
Až Daktela support zápisový přístup povolí, administrátor zákazníka ještě musí udělit oprávnění MCP Write Access příslušné roli/rolím v Spravovat → Uživatelé → Přístupy — viz Přístupy. Ve výchozím nastavení je vypnuté pro všechny role — dokud není uděleno, je zápisová operace odmítnuta s chybou nedostatečných oprávnění.
Toto platí pro všechny MCP klienty (Claude, Cursor i jakékoli další).
Hostovaný (vestavěný)¶
Hostovaný MCP server je součástí vaší Daktela instance. Není potřeba PHP, Docker ani Composer. Přihlášení funguje výhradně přes OAuth: přihlásíte se přes běžnou přihlašovací obrazovku Daktely a žádný token se negeneruje, nekopíruje ani neukládá do konfiguračních souborů.
Info
Připojit se mohou pouze běžné uživatelské (agentské) účty. Čistě administrátorské účty, uživatelé zákaznického portálu (externí) a API uživatelé jsou při autorizaci odmítnuti.
Připojení AI klienta¶
Váš AI klient musí podporovat vzdálené MCP servery přes HTTP s přihlášením přes OAuth. Claude, Cursor, VS Code a většina současných klientů to umí.
- Ve svém AI klientovi přidejte Daktela MCP server pomocí jeho URL:
https://YOUR_DOMAIN/mcp-server/mcp.YOUR_DOMAINnahraďte hostname vaší Daktely (např.vase-firma.daktela.com). - Klient rozpozná, že je vyžadováno přihlášení, a otevře Daktelu ve vašem prohlížeči.
- Pokud jste v tomto prohlížeči do Daktely už přihlášeni, připojení se dokončí okamžitě. Jinak se přihlaste svými obvyklými údaji — funguje heslo, MFA i SSO — a budete přesměrováni zpět do klienta.
- Váš AI klient je připojen. Žádný access token nikdy neuvidíte ani s ním nepracujete.
Info
Na pozadí se používá standardní autorizační postup OAuth 2.0 + PKCE definovaný specifikací MCP, včetně dynamické registrace klienta. Access token je vázaný na vašeho uživatele Daktely a má krátkou platnost; klient si ho tiše obnovuje pomocí refresh tokenu, takže se nemusíte znovu přihlašovat, dokud platí vaše přihlášení do Daktely.
Tip
Pokud váš MCP klient nepodporuje OAuth připojení ke vzdáleným serverům, použijte vlastní hostování s API access tokenem. Hostovaný server statické tokeny ani přihlášení přes HTTP hlavičku nepřijímá.
Claude Code¶
Přidejte server z terminálu:
nebo ho přidejte do souboru .mcp.json ve svém projektu:
Při prvním použití Claude Code otevře přihlášení do Daktely v prohlížeči. Přihlášení můžete spustit i ručně příkazem /mcp.
Claude Desktop a claude.ai¶
Přejděte do Settings → Connectors → Add custom connector, zadejte název (např. Daktela) a URL serveru a klikněte na Connect. Otevře se Daktela, kde se přihlásíte.
Cursor¶
Otevřete Cursor Settings → MCP → Add new MCP server, nebo přidejte do .cursor/mcp.json:
Cursor u serveru zobrazí stav Needs login; kliknutím na něj se přihlásíte do Daktely.
Ostatní MCP klienti¶
Libovolný klient podporující MCP transport Streamable HTTP s OAuth se může připojit pomocí:
- URL:
https://YOUR_DOMAIN/mcp-server/mcp - Přihlášení: OAuth 2.0 — klient si přihlašovací endpointy zjistí automaticky z metadat serveru.
Vlastní hostování (Pokročilé)¶
Pro vlastní nebo cloudová nasazení můžete MCP server provozovat sami pomocí open-source PHP balíčku.
- GitHub Repository: Daktela/daktela-v6-php-mcp-server
Požadavky¶
- PHP 8.2 nebo vyšší
- Composer (správce PHP balíčků)
- Daktela instance s přístupem k API pro čtení
- API Access Token z vašeho Daktela účtu
Instalace¶
-
Naklonujte repozitář:
-
Nainstalujte závislosti:
Konfigurace¶
Server se konfiguruje pomocí proměnných prostředí. Vytvořte soubor .env na základě poskytnutého příkladu nebo předejte proměnné přímo při spuštění serveru.
| Proměnná | Povinná | Výchozí | Popis |
|---|---|---|---|
DAKTELA_URL |
Ano | — | URL vaší Daktela instance, např. https://vase-instance.daktela.com |
DAKTELA_ACCESS_TOKEN |
Ano | — | API Access Token z vašeho Daktela účtu |
CACHE_ENABLED |
Ne | true |
Povolení cachování referenčních dat (fronty, uživatelé, statusy atd.) |
CACHE_TTL_SECONDS |
Ne | 3600 |
Doba platnosti cache v sekundách |
Tip
API Access Token můžete vygenerovat ve vaší Daktela instanci v sekci Spravovat → Uživatelé → Upravit uživatele → Přístupové tokeny.
Možnosti nasazení¶
Vlastní server podporuje dva transportní režimy: stdio (pro lokální AI desktopové aplikace) a HTTP (pro vzdálená/cloudová nasazení).
Claude Desktop — Docker¶
Toto je doporučený přístup pro vlastní hostování. Sestavte Docker image a nakonfigurujte Claude Desktop pro jeho použití.
-
Sestavte image:
-
Přidejte následující do vašeho
claude_desktop_config.json:
Claude Desktop — Přímé spuštění PHP¶
Pokud preferujete spuštění PHP přímo bez Dockeru:
{
"mcpServers": {
"daktela": {
"command": "php",
"args": ["/cesta/k/daktela-v6-php-mcp-server/bin/server.php"],
"env": {
"DAKTELA_URL": "https://vase-instance.daktela.com",
"DAKTELA_ACCESS_TOKEN": "vas-api-token"
}
}
}
}
Docker — Samostatně¶
Spusťte server jako samostatný Docker kontejner:
docker run -i --rm \
-e DAKTELA_URL=https://vase-instance.daktela.com \
-e DAKTELA_ACCESS_TOKEN=vas-api-token \
daktela-v6-php-mcp-server
HTTP Server (Cloudové nasazení)¶
Pro vzdálená nasazení, jako je Google Cloud Run, server funguje v HTTP režimu, kde klienti předávají přihlašovací údaje přes hlavičky:
docker run --rm -p 8080:8080 \
-e DAKTELA_URL=https://vase-instance.daktela.com \
-e DAKTELA_ACCESS_TOKEN=vas-api-token \
daktela-v6-php-mcp-server php bin/http-server.php
Příklad nasazení na Google Cloud Run:
gcloud run deploy daktela-v6-php-mcp-server \
--source . \
--dockerfile Dockerfile.prod \
--region europe-west1 \
--allow-unauthenticated \
--memory 1Gi
Warning
Při nasazení do cloudu s --allow-unauthenticated zajistěte implementaci odpovídajících přístupových kontrol pro ochranu vašich dat v Daktele.
Dostupné nástroje¶
MCP server poskytuje 81 nástrojů organizovaných do následujících kategorií: 43 pouze pro čtení a 38 zápisových. Zápisové nástroje (označené chipem Write) fungují pouze po povolení Zápisových oprávnění — musí být zapnuté jak globální nastavení, tak oprávnění dané role. Všechny nástroje pro výpisy podporují stránkování, řazení a kontextové filtrování.
Info
Neexistují žádné nástroje pro mazání — MCP server nemůže záznamy odstraňovat, ani při povolených zápisových oprávněních.
Tickety¶
| Nástroj | Přístup | Popis |
|---|---|---|
count_tickets |
Read | Počet ticketů odpovídajících filtru |
get_ticket |
Read | Získat konkrétní ticket podle ID |
get_ticket_detail |
Read | Získat detailní informace o ticketu |
list_account_tickets |
Read | Seznam ticketů pro konkrétní účet |
list_ticket_categories |
Read | Seznam dostupných kategorií ticketů |
list_tickets |
Read | Seznam ticketů s filtrováním a stránkováním |
create_ticket |
Write | Vytvořit nový ticket |
update_ticket |
Write | Upravit existující ticket |
create_ticket_category |
Write | Vytvořit novou kategorii ticketů |
update_ticket_category |
Write | Upravit existující kategorii ticketů |
Aktivity¶
| Nástroj | Přístup | Popis |
|---|---|---|
count_activities |
Read | Počet aktivit odpovídajících filtru |
get_activity |
Read | Získat konkrétní aktivitu podle ID |
list_activities |
Read | Seznam aktivit s filtrováním a stránkováním |
create_activity |
Write | Vytvořit novou aktivitu |
update_activity |
Write | Upravit existující aktivitu |
Hovory¶
| Nástroj | Přístup | Popis |
|---|---|---|
count_calls |
Read | Počet hovorů odpovídajících filtru |
get_call |
Read | Získat konkrétní hovor podle ID |
get_call_transcript |
Read | Získat přepis konkrétního hovoru |
list_call_transcripts |
Read | Seznam dostupných přepisů hovorů |
list_calls |
Read | Seznam hovorů s filtrováním a stránkováním |
create_call |
Write | Vytvořit nový záznam hovoru |
update_call |
Write | Upravit existující záznam hovoru |
Emaily¶
| Nástroj | Přístup | Popis |
|---|---|---|
count_emails |
Read | Počet emailů odpovídajících filtru |
get_email |
Read | Získat konkrétní email podle ID |
list_emails |
Read | Seznam emailů s filtrováním a stránkováním |
create_email |
Write | Vytvořit nový email |
update_email |
Write | Upravit existující email |
Zprávy¶
Zahrnuje webchat, SMS, Facebook Messenger, Instagram, WhatsApp a Viber.
| Nástroj | Přístup | Popis |
|---|---|---|
count_chats |
Read | Počet chatových zpráv odpovídajících filtru |
get_chat |
Read | Získat konkrétní chatovou zprávu podle ID |
list_chats |
Read | Seznam chatových zpráv s filtrováním a stránkováním |
create_message |
Write | Vytvořit novou chatovou/zasílanou zprávu |
update_message |
Write | Upravit existující chatovou/zasílanou zprávu |
Kontakty a CRM¶
| Nástroj | Přístup | Popis |
|---|---|---|
count_accounts |
Read | Počet účtů odpovídajících filtru |
count_contacts |
Read | Počet kontaktů odpovídajících filtru |
count_crm_records |
Read | Počet CRM záznamů odpovídajících filtru |
get_account |
Read | Získat konkrétní účet podle ID |
get_contact |
Read | Získat konkrétní kontakt podle ID |
get_crm_record |
Read | Získat konkrétní CRM záznam podle ID |
list_accounts |
Read | Seznam účtů s filtrováním a stránkováním |
list_contacts |
Read | Seznam kontaktů s filtrováním a stránkováním |
list_crm_records |
Read | Seznam CRM záznamů s filtrováním a stránkováním |
create_account |
Write | Vytvořit nový účet |
update_account |
Write | Upravit existující účet |
create_contact |
Write | Vytvořit nový kontakt |
update_contact |
Write | Upravit existující kontakt |
create_crm_record |
Write | Vytvořit nový CRM záznam |
update_crm_record |
Write | Upravit existující CRM záznam |
Kampaně¶
| Nástroj | Přístup | Popis |
|---|---|---|
count_campaign_records |
Read | Počet záznamů kampaní odpovídajících filtru |
get_campaign_record |
Read | Získat konkrétní záznam kampaně podle ID |
list_campaign_records |
Read | Seznam záznamů kampaní s filtrováním a stránkováním |
list_campaign_types |
Read | Seznam dostupných typů kampaní |
create_campaign_record |
Write | Vytvořit nový záznam kampaně |
update_campaign_record |
Write | Upravit existující záznam kampaně |
create_campaign_type |
Write | Vytvořit nový typ kampaně |
update_campaign_type |
Write | Upravit existující typ kampaně |
Referenční data¶
| Nástroj | Přístup | Popis |
|---|---|---|
list_groups |
Read | Seznam skupin agentů |
list_pauses |
Read | Seznam dostupných typů pauz |
list_queues |
Read | Seznam front |
list_statuses |
Read | Seznam statusů ticketů/aktivit |
list_templates |
Read | Seznam šablon zpráv |
list_users |
Read | Seznam uživatelů |
create_group |
Write | Vytvořit novou skupinu agentů |
update_group |
Write | Upravit existující skupinu agentů |
create_pause |
Write | Vytvořit nový typ pauzy |
update_pause |
Write | Upravit existující typ pauzy |
create_queue |
Write | Vytvořit novou frontu |
update_queue |
Write | Upravit existující frontu |
create_status |
Write | Vytvořit nový status ticketu/aktivity |
update_status |
Write | Upravit existující status ticketu/aktivity |
create_template |
Write | Vytvořit novou šablonu zprávy |
update_template |
Write | Upravit existující šablonu zprávy |
create_user |
Write | Vytvořit nového uživatele |
update_user |
Write | Upravit existujícího uživatele |
Realtime¶
| Nástroj | Přístup | Popis |
|---|---|---|
list_realtime_sessions |
Read | Seznam aktuálních realtime relací agentů |
Znalostní báze¶
| Nástroj | Přístup | Popis |
|---|---|---|
list_article_folders |
Read | Seznam složek znalostní báze |
list_articles |
Read | Seznam článků znalostní báze |
get_article |
Read | Získat konkrétní článek znalostní báze |
create_article |
Write | Vytvořit nový článek znalostní báze |
update_article |
Write | Upravit existující článek znalostní báze |
create_article_folder |
Write | Vytvořit novou složku znalostní báze |
update_article_folder |
Write | Upravit existující složku znalostní báze |
Vestavěné prompty¶
Server obsahuje čtyři předpřipravené šablony promptů pro běžné analytické úlohy. Tyto prompty jsou dostupné přímo ve vašem AI klientovi po připojení MCP serveru.
| Prompt | Popis |
|---|---|
email_quality_audit |
Audit emailů na negativní sentiment, neprofesionální tón a ztracené obchody |
sales_pipeline_review |
Kontrola zdraví obchodů a identifikace ohrožených příležitostí |
call_quality_review |
Analýza hovorů na eskalace, mezery ve znalostech a problémy s kvalitou |
daily_call_analysis |
Denní analýza hovorů na riziko odchodu zákazníků a opakující se problémy |
Příklady použití¶
Jakmile je MCP server připojen k vašemu AI klientovi, můžete klást otázky jako:
- "Ukaž mi všechny otevřené tickety za posledních 7 dní a shrň časté problémy."
- "Proveď audit posledních 50 emailů na negativní sentiment a neprofesionální tón."
- "Vypiš všechny zmeškané hovory z dnešního dne a identifikuj vzorce."
- "Zkontroluj obchodní pipeline a označ obchody, která stojí déle než 2 týdny."
- "Analyzuj přepisy hovorů z tohoto týdne a zvýrazni eskalace."
AI asistent použije příslušné MCP nástroje k získání dat z vaší Daktela instance a poskytne strukturovanou analýzu.
Doporučené postupy¶
- Hostovaný server: AI asistent pracuje s vašimi vlastními oprávněními v Daktele — vidí přesně to, co vy, nic víc. Není třeba chránit žádný token; přístup odeberete odhlášením z Daktely nebo odpojením serveru ve svém klientovi.
- Bezpečnost tokenu při vlastním hostování: nikdy nesdílejte svůj API Access Token veřejně. Ukládejte přihlašovací údaje do proměnných prostředí nebo služby pro správu tajemství a místo admin tokenu vytvořte vyhrazeného API uživatele s minimálními oprávněními pouze pro čtení.
- Cachování: ponechte cachování zapnuté (výchozí nastavení), sníží počet API volání pro referenční data jako fronty, uživatelé a statusy.
- Cloudová nasazení: při veřejném vystavení HTTP endpointu vlastního serveru vždy zapněte autentizaci.
Podpora¶
Pokud narazíte na chyby nebo máte požadavky na nové funkce, prosím použijte sekci Issues na GitHub repository.