Fooodo / Documentație

Server MCP Insights

Conectați ChatGPT, Claude, Copilot sau Gemini la tenant-ul dvs. Fooodo Insights prin serverul remote Model Context Protocol.

Auto-translated · pending native review. The English version is canonical.

Fooodo Insights include un server remote Model Context Protocol per-tenant. Acesta expune analizele operaționale ale organizației dvs. și un set restrâns de acțiuni de scriere delimitate oricărui client AI care comunică prin MCP — fără chei API, integrări personalizate sau copiere-lipire.

Cine îl poate utiliza? Orice client Fooodo Insights cu acces admin, analyst sau viewer la un tenant care are activat indicatorul de funcționalitate mcp_enabled. Indicatorul este dezactivat implicit pentru fiecare organizație; contactați support@fooodo.com pentru a solicita activarea și a primi URL-ul MCP al tenant-ului dvs.

Două servere MCP, o singură familie de produse. Această pagină acoperă serverul MCP Insights, care expune analize operaționale per-tenant prin OAuth 2.1. Un server MCP separat pentru manualul de marketing rulează la /api/mcp pe fooodo.com și este public — agenții îl utilizează pentru a afla ce este Fooodo și pentru a trimite solicitări de lead-uri. Cele două suprafețe sunt deliberat separate: conținut de manual față de date ale clienților.

De ce MCP

MCP este standardul deschis pe care clienții AI îl utilizează pentru a comunica cu date și instrumente la distanță — echivalentul OAuth + REST pentru agenți. Un singur server MCP poate fi adăugat o singură dată și reutilizat de ChatGPT, Claude, Copilot, Gemini, Cursor, Windsurf, Zed și lista în creștere de clienți conformi.

Pentru clienții Fooodo Insights, aceasta înseamnă:

  • Fără dependență de furnizor. Analistul dvs. poate pune aceeași întrebare din ChatGPT astăzi și din Gemini mâine fără a reconfigura nimic.
  • Acțiuni delimitate și auditate. Instrumentele de scriere (de ex. declanșare import de date, confirmare alertă) necesită scopul insights:write și rolul admin sau analyst. Fiecare scriere este înregistrată în jurnalul de audit cu source: "mcp".
  • Izolarea tenant-ului. Instrumentele sunt limitate la organizația utilizatorului la nivelul bazei de date; accesul cross-tenant este imposibil.

Conectați-vă din clientul AI

Serverul MCP Insights utilizează OAuth 2.1 cu Dynamic Client Registration, astfel încât fiecare client de mai jos folosește același flux cu un singur clic: lipiți URL-ul tenant-ului dvs., faceți clic pe Connect, autentificați-vă cu contul Fooodo Insights, aprobați scopurile — gata.

Fragmentele de mai jos utilizează <INSIGHTS_MCP_URL> ca substituent. Înlocuiți-l cu URL-ul pe care suportul Fooodo vi-l trimite după activarea MCP pentru tenant-ul dvs.

ChatGPT (Plus / Pro / Enterprise)

  1. Deschideți Settings → Connectors → Add custom connector (Developer Mode trebuie să fie activat).
  2. Server URL: <INSIGHTS_MCP_URL>.
  3. Aprobați pagina de consimțământ când vi se solicită.

Claude.ai (Pro și versiuni superioare)

  1. Deschideți Settings → Connectors → Add custom connector.
  2. Name: Fooodo Insights. Server URL: <INSIGHTS_MCP_URL>.
  3. Aprobați pagina de consimțământ.

GitHub Copilot (VS Code 1.101+, JetBrains, Visual Studio)

Adăugați în fișierul .vscode/mcp.json al spațiului de lucru:

{
  "servers": {
    "fooodo-insights": {
      "type": "http",
      "url": "<INSIGHTS_MCP_URL>"
    }
  }
}

Dacă utilizați Copilot Business/Enterprise, administratorul dvs. trebuie să activeze mai întâi politica MCP servers in Copilot.

Gemini CLI

Adăugați în configurația Gemini CLI:

{
  "mcpServers": {
    "fooodo-insights": {
      "url": "<INSIGHTS_MCP_URL>",
      "oauth": true
    }
  }
}

Gemini Enterprise

În consola Google Cloud, înregistrați serverul ca sursă de date MCP personalizată:

CâmpValoare
Server URL<INSIGHTS_MCP_URL>
AuthenticationOAuth 2.0 (Dynamic Client Registration)
Required scopesinsights:read, insights:write

Ce poate face agentul

Serverul expune instrumente în trei niveluri. Clienții ar trebui să aleagă nivelul cel mai de jos care răspunde la întrebare — este mai ieftin, mai rapid și determinist.

Nivelul 1 — Instrumente de date (rapide, deterministe, doar citire)

InstrumentReturnează
get_period_summaryMetrici agregate pentru un interval de date — vânzări, COGS, EBIT, marjă brută, campanii de top
get_weekly_sales_dataVânzări săptămână cu săptămână cu campanii active și date de costuri
get_channel_statsMetrici de performanță per canal de marketing — campanii și canale de achiziție, nu împărțirea dine-in/livrare (pentru aceasta, utilizați get_channel_breakdown)
get_daily_performanceVânzări zi cu zi pe canal și restaurant
get_product_performanceClasamentul produselor/elementelor de meniu după vânzări și cantitate, cu defalcare pe categorii
get_cfo_pnl_dataDefalcare P&L — venituri, COGS, forță de muncă, OpEx, EBIT — pentru vizualizarea tabloului de bord CFO
get_restaurant_performanceDefalcare vânzări per restaurant / per locație pentru un interval de date, cu ponderea fiecărei locații din totalul lanțului
get_channel_breakdownÎmpărțirea canalelor de vânzări (dine-in / livrare / Wolt / Bolt / takeaway) cu valoare în € și pondere % — contrapartea din partea vânzărilor; canalele de marketing se află în get_channel_stats
get_check_metricsBon mediu (€, fără TVA), preparate per bon și număr de bonuri pentru un interval de date — cu împărțiri per tip de comandă și per restaurant
get_table_timesTimp mediu de închidere a mesei (minute) și număr de comenzi — un indicator al vitezei de servire — cu împărțiri opționale pe tip de comandă și restaurant
get_waiter_timesTimpii medii de închidere a mesei per chelner pentru un singur restaurant (necesită restaurant_id)
get_guest_feedbackSatisfacția oaspeților — scoruri NPS din sondaje (mâncare / serviciu / restaurant) plus cele mai recente evaluări Google per restaurant
get_cash_positionSoldul de numerar curent, rata săptămânală de consum, autonomia financiară și soldurile per entitate
get_goals_vs_actualsȚinte KPI (bon mediu, preparate per bon) și buget zilnic de vânzări față de realizat, cu gradul de atingere a numărului de comenzi
get_monthly_sales_planPlan lunar de vânzări prospectiv — buget de venituri și număr de comenzi per canal și restaurant, inclusiv lunile viitoare
get_marketing_spendCheltuieli lunare de marketing (din P&L) și calendarul campaniilor pentru intervalul respectiv
list_restaurantsDirector de restaurante (id, cod, nume, oraș) — rezolvă un nume sau cod la restaurant_id pe care celelalte instrumente de date îl folosesc ca filtru
get_menu_salesDefalcare vânzări de preparate an față de an per restaurant sau oraș (doar prânz sau general), cu un filtru opțional de canal

Nivelul 2 — Agenți specializați (analiză LLM pe un singur domeniu)

InstrumentReturnează
consult_financial_analystAnaliză „de ce" exclusiv financiară, fundamentată pe datele perioadei
consult_marketing_strategistAnaliză de cauzalitate-creștere și atribuire a campaniilor exclusiv de marketing
consult_market_researchContext de piață — sezonalitate, sărbători, tendințe de comportament al consumatorilor

Răspunsurile specialiștilor sunt calculate, nu improvizate: aritmetica în mai mulți pași este efectuată de un calculator determinist pe server, nu de calcul mental LLM, și fiecare cifră poartă o etichetă de încredere și o citare a sursei. Pentru întrebările privind impactul asupra profitului, preluați mai întâi baza de referință P&L cu get_cfo_pnl_data și transmiteți cifrele relevante (EBIT de referință, costuri) în consult_financial_analyst — instrumentele proprii ale specialistului acoperă doar datele de vânzări.

Nivelul 3 — Orchestrator (sinteză cross-domeniu)

InstrumentReturnează
ask_orchestratorDirecționează o întrebare cross-domeniu către toți agenții specializați și sintetizează un singur răspuns

Căutare și preluare (ChatGPT Deep Research, clienți generici)

InstrumentReturnează
searchListă de insights și istoricul acțiunilor agentului care corespund unei interogări — {id, title, url, snippet}
fetchConținutul complet al unui document după id din search{id, title, text, url, metadata}

Instrumente de scriere (necesită insights:write + rolul admin/analyst)

InstrumentAcțiune
trigger_data_importDeclanșează imediat o preluare de fișier programată configurată (asincron — returnează un job_id)
acknowledge_alertMarchează o alertă ca fiind confirmată
resolve_alertRezolvă o alertă
generate_reportGenerează un raport de afaceri — rezumat executiv, performanța campaniei, analiza canalelor — pentru un interval de date; asincron (returnează un job_id), opțional trimis prin e-mail
regenerate_insightsRulează din nou generatorul de insights pentru organizație (asincron)
get_job_statusVerifică starea unui job asincron

Prompturi

weekly_business_review, margin_diagnosis — prompturi de tip slash-command pentru ChatGPT Apps și alți clienți care acceptă prompturi.

Securitate și limite

  • OAuth 2.1 + PKCE, clienți publici, token-uri de reîmprospătare rotative. Token-urile de acces sunt JWT-uri HS256 valabile o oră. Token-urile de reîmprospătare sunt valabile 60 de zile, stocate ca hash-uri SHA-256, cu utilizare unică la rotație.
  • Activare per organizație prin indicatorul de funcționalitate mcp_enabled — dezactivat implicit pentru fiecare organizație. Activarea se face printr-un tichet de suport, nu printr-o opțiune self-service, astfel încât clienții pot etapiza implementarea.
  • Limite de rată per nivel per utilizator. Instrumente de date: 60/min; instrumente specializate și orchestrator: 10 la 5 min; instrumente de scriere: 5 la 5 min.
  • Revocare. Utilizatorii pot revoca orice client în orice moment din setările contului (/account/connected-apps pe partea Insights). Administratorii pot revoca la nivel de organizație.
  • Jurnal de audit. Fiecare apel al unui instrument de scriere este înregistrat în jurnalul de audit cu source: "mcp", inclusiv numele clientului, utilizatorul și payload-ul de intrare.
  • Izolarea tenant-ului la nivelul bazei de date. Fiecare interogare este limitată la organizația utilizatorului înainte de a părăsi aplicația; serverul nu poate returna date cross-tenant.

Pentru dezvoltatorii de agenți

  • URL de descoperire: <INSIGHTS_MCP_URL>/.well-known/oauth-authorization-server (și cu sufixul /mcp, conform RFC 8414 §3.1).
  • Metadate pentru resurse protejate: <INSIGHTS_MCP_URL>/.well-known/oauth-protected-resource/mcp (conform RFC 9728).
  • Dynamic Client Registration: POST <INSIGHTS_MCP_URL>/register — înregistrare deschisă, dar fiecare autorizare necesită în continuare consimțământ interactiv.
  • Scopuri: insights:read (implicit) și insights:write (pentru instrumente de scriere).
  • Transport: HTTP streamabil, versiunea protocolului MCP 2025-06-18.

Standarde respectate: MCP 2025-06-18, RFC 6749 (OAuth 2.0), RFC 7636 (PKCE), RFC 7591 (Dynamic Client Registration), RFC 8414 (Authorization Server Metadata), RFC 9728 (Protected Resource Metadata).

Pe această pagină