Google Ads MCP: construiește toată structura din agentul tău, dintr-o dată

Serverul MCP al Hermoso creează o campanie Google Ads, un grup de anunțuri, un anunț responsive de căutare sau de display și cuvintele lor cheie într-o singură operațiune atomică, astfel încât un anunț respins înseamnă că nici bugetul nu a fost creat. Performance Max se construiește la fel, cu grupul de active cu tot. Plus cercetare cu Keyword Planner, urmărirea conversiilor, linkuri sitelink, citire și scriere în feedul Merchant Center, raportare GAQL, Google Analytics 4 pentru ce au făcut de fapt clicurile și o confirmare obligatorie pentru orice care pornește cheltuiala.

Există un server MCP pentru Google Ads? Da. Hermoso este un server MCP pentru Google Ads găzduit. Adaugă https://app.hermoso.ai/mcp în Claude, ChatGPT sau Cursor și conectează-ți contul Google Ads o singură dată. Asistentul tău poate apoi să construiască campanii de căutare, de display și Performance Max, să găsească idei de cuvinte cheie, să seteze bugete, licitări și targetare și să ruleze rapoarte. Activarea unei campanii cere întotdeauna confirmarea ta explicită.

Google Ads este o structură în arbore, iar arborii sunt locul unde crearea scriptată a campaniilor de obicei greșește. Creezi un buget, apoi o campanie, apoi un grup de anunțuri, apoi un anunț. Dacă anunțul este respins la al patrulea pas, rămâi cu trei obiecte orfane și cu un buget pe care nu ți l-ai fi dorit. Curățenia manuală este motivul pentru care majoritatea oamenilor renunță la automatizarea Google Ads.

Serverul MCP al Hermoso construiește întregul arbore dintr-o singură operațiune atomică, folosind id-uri temporare de resurse, ca descendenții să poată referi părinți care încă nu există. Fie apar campania, grupul de anunțuri, anunțul și cuvintele cheie, fie nu apare niciunul. Un anunț respins înseamnă că nici bugetul nu a fost creat.

Instalează-l o singură dată: în Claude.ai sau Claude Desktop, lipește https://app.hermoso.ai/mcp la Settings → Connectors și aprobă-l cu contul tău Hermoso. Într-un agent de programare este o singură comandă: /plugin marketplace add hermoso-ai/hermoso apoi /plugin install hermoso@hermoso în Claude Code, codex plugin marketplace add hermoso-ai/hermoso apoi codex plugin add hermoso@hermoso în Codex, sau npx skills add hermoso-ai/hermoso -a cursor în Cursor (numește-ți propriul agent după -a), apoi autentifică-te o dată cu npx -y hermoso auth login. Configurarea completă este pe pagina MCP & CLI.

Uneltele Google Ads

Construire. create_google_ads_campaign, create_google_ads_ad_group, create_google_ads_ad, add_google_ads_keywords, create_google_ads_performance_max_campaign, upload_google_ads_asset, add_google_ads_assets pentru linkuri sitelink, callout-uri și fragmente structurate.

Configurare. set_google_ads_budget, set_google_ads_bidding (șase strategii), set_google_ads_targeting (geografie și limbă), find_google_ads_locations, set_google_ads_networks (rețeaua de parteneri Search și Display pornite sau oprite), create_google_ads_conversion_action și list_google_ads_conversion_actions.

Cercetare. google_ads_keyword_ideas aduce Keyword Planner în conversație: volume reale de căutare lunare, competiție și intervale de licitare pentru prima poziție, pornind de la un set de cuvinte cheie, de la o pagină de destinație sau de la un site întreg.

Citire și modificare. list_google_ads_campaigns, google_ads_report pentru GAQL arbitrar, google_ads_change_history pentru ce s-a schimbat în cont și când, delete_google_ads_object ca să ștergi un obiect și set_google_ads_status, singurul comutator cu confirmare obligatorie care pornește cheltuiala reală.

create_google_ads_campaign acceptă și un mod de test, așa că un agent poate valida un arbore întreg în fața API-ului live fără să creeze nimic. Asta este o alegere bună implicită când propune un plan pe care urmează să-l aprobi.

Ce poate face agentul tău cu Google Ads MCP

Fiecare rând este o unealtă reală de pe server. Întreabă în limbaj obișnuit și agentul alege ce rulează.

SarcinăUnelteCe se întâmplă
Construiește o campanie Search sau Displaycreate_google_ads_campaign, create_google_ads_ad_group, create_google_ads_ad, add_google_ads_keywordsBuget, campanie, grup de anunțuri, anunț responsive și cuvinte cheie într-o singură operațiune atomică, create pe pauză. O rulare de test verifică întregul arbore în fața API-ului live mai întâi.
Construiește Performance Maxcreate_google_ads_performance_max_campaignO campanie pe Search, YouTube, Display, Discover, Gmail și Maps, cu grupul său de active, creată pe pauză. Refuză într-un cont fără acțiune de conversie.
Cercetare de cuvinte cheiegoogle_ads_keyword_ideasKeyword Planner de la Google: volum de căutare lunar, competiție și intervale de licitare pentru prima poziție, din cuvinte cheie de pornire, o pagină de destinație sau un site.
Linkuri sitelink și callout-uriadd_google_ads_assets, upload_google_ads_assetCreează linkuri sitelink, callout-uri și fragmente structurate și le atașează la o campanie sau un grup de anunțuri. Încarcă active de tip imagine, ale tale sau ale Hermoso.
Targetare și rețeleset_google_ads_targeting, find_google_ads_locations, set_google_ads_networksLocații și limbi după nume, iar rețeaua de parteneri Search sau Display pornită sau oprită.
Licitare și bugetset_google_ads_bidding, set_google_ads_budgetȘase strategii de licitare și bugetul zilnic. Mărirea unui buget activ cere confirmare.
Urmărirea conversiilorcreate_google_ads_conversion_action, list_google_ads_conversion_actionsCreează acțiuni de conversie și spune dacă licitarea inteligentă poate funcționa în cont.
Rapoartegoogle_ads_report, list_google_ads_campaignsOrice interogare GAQL: campanii, grupuri de anunțuri, anunțuri, cuvinte cheie, termeni de căutare, date demografice și geografie.
Ce s-a schimbatgoogle_ads_change_historyCine sau ce a schimbat contul și când.
Pornește, pune pe pauză sau eliminăset_google_ads_status, delete_google_ads_objectActivarea pornește cheltuiala reală și refuză să ruleze fără confirmare explicită.
Merchant Centerlist_merchant_accounts, list_merchant_products, list_merchant_issuesCitește feedul pe care o campanie Shopping sau Performance Max de retail îl promovează și de ce un produs este respins.
Conectează GA4link_google_ads_to_analytics, list_analytics_google_ads_links, create_analytics_key_eventLeagă o proprietate GA4 ca evenimentele ei cheie să poată fi importate ca conversii Google Ads.

Exemple de cereri

Lipește oricare dintre acestea în Claude, ChatGPT sau Cursor după ce Hermoso este conectat.

  • „Găsește 30 de cuvinte cheie pentru aplicația noastră de management de proiecte, cu volum de căutare peste 1.000 pe lună în SUA, și grupează-le pe intenție.”
    google_ads_keyword_ideas returnează volumele Keyword Planner, competiția și intervalele de licitare, iar agentul le grupează.
  • „Construiește o campanie Search pe pauză pentru acele cuvinte cheie: $50 pe zi, SUA și Canada, engleză, maximizează conversiile.”
    create_google_ads_campaign construiește bugetul, campania, grupul de anunțuri, anunțul și cuvintele cheie într-o singură operațiune atomică, pe pauză, apoi citește totul înapoi.
  • „Configurează o campanie Performance Max pentru catalogul nostru Shopify folosind feedul Merchant Center.”
    list_merchant_accounts alege magazinul, apoi create_google_ads_performance_max_campaign o construiește pe pauză cu feedul atașat.
  • „Care termeni de căutare au cheltuit bani luna trecută fără să convertească? Adaugă cei mai slabi zece ca negative.”
    google_ads_report scoate raportul de termeni de căutare, apoi add_google_ads_keywords adaugă negativele.
  • „Adaugă patru linkuri sitelink la campania noastră de brand: prețuri, demo, studii de caz și contact.”
    add_google_ads_assets creează linkurile sitelink și le atașează la campanie.
  • „Oprește rețeaua de parteneri Search la fiecare campanie și arată-mi înainte și după.”
    set_google_ads_networks citește mai întâi setarea curentă, apoi o schimbă campanie cu campanie.
  • „Cineva ne-a schimbat licitările vineri. Ce s-a schimbat?”
    google_ads_change_history listează modificările cu ora lor.
  • „Leagă proprietatea noastră GA4 ca înscrierile să conteze ca conversii în Google Ads.”
    link_google_ads_to_analytics le leagă pe cele două, iar create_analytics_key_event marchează evenimentul de înscriere ca eveniment cheie.

Performance Max, construit în același fel

create_google_ads_performance_max_campaign construiește tipul de campanie multicanal al Google (Search, YouTube, Display, Discover, Gmail și Maps dintr-o singură campanie), și o construiește într-o singură operațiune atomică, pentru că Google cere exact asta: bugetul, campania, targetarea pe locație și limbă, grupul de active și fiecare legătură de active merg împreună, astfel încât un activ respins nu lasă în urmă o campanie pe jumătate construită. Este creată pe pauză, iar întregul arbore este citit înapoi de la Google înainte ca agentul tău să-ți spună că există.

Minimele de active ale Google sunt verificate aici înainte ca ceva să fie trimis, așa că o imagine pătrată lipsă este un mesaj clar, nu un refuz opac al API-ului: 3–15 titluri de cel mult 30 de caractere, 1–5 titluri lungi de până la 90, 2–5 descrieri de până la 90, un nume de afacere de până la 25 și cel puțin un logo, o imagine de marketing și o imagine pătrată de marketing. Încarcă imaginile cu upload_google_ads_asset mai întâi și trimite numele resurselor. Un videoclip YouTube este opțional. Google va genera unul din grupul de active dacă îl lași afară.

Performance Max nu are cuvinte cheie și nici licitare manuală: optimizează doar către conversii. Așa că construirea refuză într-un cont fără nicio acțiune de conversie activă, în loc să creeze o campanie care nu poate optimiza, și numește ambele ieșiri: creează una cu create_google_ads_conversion_action, sau rulează o strategie care nu are nevoie de ea. Ghidurile de brand sunt activate implicit pentru campaniile PMax noi de la Google Ads API v21, ceea ce schimbă unde se atașează numele afacerii și logo-ul; Hermoso le leagă la campanie în locul tău.

Performance Max pe feed de produse (retail) funcționează la fel: transmite merchantCenterId și campania promovează catalogul tău Merchant Center, cu feedLabel ca să o restrângi la un singur feed. Este construită și citită înapoi exact ca mai sus. Citirea de verificare arată contul Merchant Center și eticheta de feed pe care Google le-a stocat de fapt, astfel încât poți vedea că este într-adevăr o campanie de retail și nu trebuie să ne crezi pe cuvânt. Promovează întregul feed sub un singur grup rădăcină de produse; partiționarea unui feed pe brand, categorie sau etichetă personalizată nu este construită și este refuzată pe nume, în loc să fie ignorată în tăcere, ca să nu ajungi să crezi că ai restrâns un feed când nu ai făcut-o.

Merchant Center, ca agentul să știe ce vinde

„De ce nu apare acest produs?” este o întrebare la care raportarea Google Ads nu poate răspunde structural, pentru că un produs respins nu are impresii pe care să le raporteze. Răspunsul se află în Merchant Center, iar aceeași conexiune Google ajunge acolo, fără un al doilea login.

Agentul tău poate lista conturile Merchant Center la care contul tău Google conectat are acces cu list_merchant_accounts (o agenție are de obicei mai multe, așa că întreabă care magazin, în loc să ghicească), poate citi produsele dintr-un feed cu list_merchant_products (catalogul real pe care îl servește o campanie Shopping sau Performance Max de retail) și poate citi problemele la nivel de cont pe care Google le ridică împotriva contului cu list_merchant_issues. Asta este suficient ca să scrie copy de anunț despre produse care chiar există, la prețuri care chiar sunt active, și ca să explice o campanie tăcută.

Scrie și el. create_merchant_data_source creează un feed de produse de tip API, upsert_merchant_product pune un produs în el, update_merchant_product modifică câmpurile care se mișcă zilnic (preț și disponibilitate), iar delete_merchant_product și delete_merchant_data_source le elimină după o confirmare. list_merchant_data_sources arată ce feeduri pot primi efectiv o scriere.

Trei lucruri de știut dinainte. Google blochează fiecare apel Merchant API până când proiectul Cloud al Hermoso este înregistrat pe contul tău Merchant Center, așa că register_merchant_developer face legătura o singură dată și spune asta pe nume. Nu este o conexiune defectă, iar reconectarea nu o repară. Scrierile de produse merg doar într-un feed de tip API; un feed de fișier, un autofeed și feedul pe care îl creează interfața Merchant Center apar toate în listă, dar toate refuză scrierile, așa că Hermoso găsește pentru tine un feed care poate primi scriere, creează unul dacă nu există și refuză pe nume dacă există mai multe, în loc să pună produsul tău pe o piață în care campaniile tale poate nu țintesc. Și upsert_merchant_product este o scriere pe rând întreg, în timp ce update_merchant_product este o corecție. Trimite fiecare câmp pe care vrei să-l păstrezi la primul, doar câmpurile pe care le schimbi la al doilea.

Nimic din toate acestea nu înseamnă că trebuie să muți catalogul. Dacă feedul trăiește deja în Shopify sau în platforma ta, păstrează-l acolo și lasă agentul să-l citească; scrierile sunt pentru cazurile în care nimic nu deține feedul încă, sau în care un singur preț sau o singură disponibilitate trebuie corectată acum, nu la următoarea sincronizare.

Google Analytics 4, ca să vezi ce au făcut clicurile

Raportarea Google Ads se oprește la clic. Ce s-a întâmplat după (sesiunea, înscrierea, comanda) trăiește în Google Analytics, iar aceeași autentificare Google ajunge până acolo (este o conexiune separată, pentru că are nevoie de propria permisiune).

Agentul tău poate afla ce proprietate GA4 să citească cu list_analytics_properties. Asta contează, pentru că fiecare apel Analytics cere un id numeric de proprietate, iar ce ai de fapt este ID-ul de măsurare G-XXXXXXXXX din fragmentul tău de urmărire. Apoi analytics_report returnează sesiuni, utilizatori, conversii și venit, defalcate pe canal, sursă/mediu, campanie, pagină de destinație, țară, dispozitiv sau dată, iar analytics_realtime arată cine este pe site chiar acum. Deci „construiește campania” și „spune-mi ce a câștigat” sunt aceeași conversație.

Scrie și el, și aceasta este partea care se întoarce direct în Google Ads: create_analytics_key_event marchează un eveniment pe care GA4 îl colectează deja ca eveniment cheie, adică exact ce importă Google Ads ca conversie, iar o acțiune de conversie este ceea ce face inutilă orice strategie de licitare inteligentă de pe această pagină. create_analytics_custom_dimension înregistrează un parametru de eveniment ca rapoartele să poată fi defalcate după el, iar list_analytics_definitions arată ce măsoară deja proprietatea înainte să adaugi oricare. Două lucruri care rămân adevărate mereu: aceasta este doar GA4, pentru că API-ul nu are deloc o suprafață Universal Analytics, iar o dimensiune personalizată poate fi arhivată, dar niciodată ștearsă, cu 50 de sloturi pe eveniment pe proprietate, deci agentul verifică mai întâi setul existent.

Poarta cheltuielii reale este mai largă decât o singură unealtă

Punerea unei campanii pe pauză nu este singura cale de a evita cheltuiala, iar a trata lucrurile așa este o capcană reală: crearea unui grup de anunțuri, a unui anunț sau a unui cuvânt cheie activ sub un părinte deja activ se difuzează chiar la următoarea licitație. Așa că aceeași confirmare care protejează set_google_ads_status protejează și create_google_ads_ad_group, create_google_ads_ad și add_google_ads_keywords ori de câte ori părintele este live, citit din rândul pe care fiecare dintre acestea îl aduce deja, fără un drum în plus. Cuvintele cheie negative restricționează doar cheltuiala, așa că nu sunt niciodată blocate.

Raportare GAQL, cu o precauție de știut

google_ads_report primește GAQL arbitrar, deci agentul tău poate cere orice felie are nevoie, în loc să fie limitat la o formă fixă de raport. Un lucru de ținut minte dacă scrii interogări de mână sau lași un model să le scrie: GAQL nu este SQL. Nu are subinterogări, iar IN primește o listă literală. Un WHERE id IN (SELECT …) este invalid și va eșua, în loc să returneze în tăcere rânduri greșite. Trimite rezultatul direct într-o foaie de calcul cu create_sheet și append_to_sheet, sau într-un document cu create_doc.

Citește înapoi, apoi raportează

După modificare, arborele este citit înapoi de la Google, iar rezumatul pe care îl primești este construit din citirea de verificare, niciodată din ce s-a cerut. Este o disciplină mică, dar prinde defectul specific în care un agent narează cu încredere o campanie pe care platforma de fapt a forțat-o sau a respins-o.

Ce nu va face fără să întrebe

Un agent cu buget este util doar dacă raza de acțiune este limitată, așa că autoritatea de cheltuială este blocată pe server, nu într-un prompt. Campaniile, seturile de anunțuri și anunțurile Meta sunt create PAUSED, fără nicio suprascriere din partea apelantului. Comutatoarele de stare care pot activa cheltuiala reală (unul pe fiecare platformă de publicitate: set_meta_campaign_status, set_google_ads_status, set_microsoft_ads_status, set_reddit_ads_status, set_linkedin_ads_status, set_pinterest_ads_status, set_x_ads_status și set_openai_ads_status, printre altele) refuză să ruleze fără un indicator explicit de confirmare, iar aceeași poartă acoperă și crearea unui grup de anunțuri, a unui anunț sau a unui cuvânt cheie active Google Ads sub un părinte deja activ, pentru că acestea se difuzează la următoarea licitație. Ștergerile cer și ele confirmare. Pe partea de generare, hermoso_capabilities publică costul exact în credite al fiecărui model înainte ca ceva să ruleze, iar fiecare randare rezervă o estimare și apoi decontează costul real, astfel încât o trimitere eșuată se rambursează în loc să te taxeze în tăcere.

Conectarea contului tău Google Ads

Conectezi Google Ads la Hermoso prin fluxul OAuth al Google din setările Connectors; nicio parolă nu trece prin model. Conexiunile Google Ads sunt partajate la nivel de brand, așa că o echipă întreagă pe un brand lucrează dintr-o singură conexiune, fără ca fiecare persoană să se reautorizeze.

Partea creativă

Gestionarea campaniilor este utilă doar dacă există ce să rulezi. Același server cercetează ce funcționează deja pe piața ta în bibliotecile de anunțuri Meta, Google și LinkedIn, randează creații finalizate, de imagine și video, ancorate în produsul tău real, folosind peste 100 de modele, și încarcă activele, așa că „ce ar trebui să rulăm” și „construiește-l” sunt o singură conversație în loc de două unelte. Vezi prezentarea MCP de marketing, lista completă de unelte sau Meta Ads MCP dacă rulezi și pe Meta.

Întrebări frecvente

Există un server MCP pentru Google Ads?

Da. Serverul MCP al Hermoso construiește și gestionează Google Ads din orice client MCP: create_google_ads_campaign, create_google_ads_ad_group, create_google_ads_ad și add_google_ads_keywords pentru a construi un arbore de căutare sau de display; create_google_ads_performance_max_campaign pentru Performance Max; set_google_ads_budget, set_google_ads_bidding și set_google_ads_targeting pentru configurare; google_ads_keyword_ideas pentru cercetare cu Keyword Planner; list_google_ads_campaigns și google_ads_report pentru rapoarte; citiri Merchant Center pentru feedul de produse din spatele unei campanii Shopping; și set_google_ads_status, cu confirmare obligatorie, pentru activare.

Poate un agent AI să creeze o campanie Google Ads?

Da, și întregul arbore este creat într-o singură operațiune atomică, folosind id-uri temporare de resurse: campanie, grup de anunțuri, anunț responsive de căutare sau de display și cuvinte cheie împreună. Dacă anunțul este respins, nici bugetul nu a fost creat, așa că nu rămâi cu obiecte orfane de curățat. Un mod de test validează arborele în fața API-ului live fără să creeze nimic.

Poate să creeze și o campanie Performance Max?

Da. create_google_ads_performance_max_campaign construiește bugetul, campania, targetarea, grupul de active și fiecare legătură de active într-o singură operațiune atomică, pentru că Google le cere împreună. Campania este creată pe pauză și citită înapoi înainte ca agentul să raporteze despre ea. Minimele de active ale Google sunt impuse înainte ca ceva să fie trimis: 3–15 titluri, 1–5 titluri lungi, 2–5 descrieri, un nume de afacere și cel puțin un logo, o imagine de marketing și o imagine pătrată de marketing. PMax licitează doar pe conversii, așa că refuză să se construiască într-un cont fără nicio acțiune de conversie activă, în loc să creeze o campanie care nu poate optimiza. Performance Max pe feed de produse (retail) funcționează la fel: transmite merchantCenterId și campania promovează catalogul tău Merchant Center, cu feedLabel ca să o restrângi la un singur feed, iar citirea de verificare arată contul Merchant Center și eticheta de feed pe care Google le-a stocat de fapt.

Funcționează cu Google Merchant Center?

Da, citiri și scrieri, prin aceeași conexiune Google. Agentul poate lista conturile Merchant Center la care contul tău are acces, citi produsele dintr-un feed (catalogul pe care îl servește de fapt o campanie Shopping sau Performance Max de retail) și citi problemele la nivel de cont pe care le ridică Google, singurul loc unde afli de ce un produs nu apare, pentru că un produs respins nu are impresii pe care să le arate raportarea Google Ads. Google cere o înregistrare o singură dată a proiectului Cloud al Hermoso pe contul tău Merchant Center înainte ca API-ul să răspundă, iar există o unealtă care o face. Scrie și el: create_merchant_data_source, upsert_merchant_product, update_merchant_product pentru modificările de preț și disponibilitate care se mișcă zilnic, și delete_merchant_product și delete_merchant_data_source, ambele cu confirmare obligatorie. Google acceptă scrieri de produse doar într-un feed de tip API, așa că Hermoso găsește pentru tine un feed care poate primi scriere și refuză pe nume dacă există mai multe.

Poate să facă cercetare de cuvinte cheie?

Da. google_ads_keyword_ideas apelează Keyword Planner de la Google și returnează volume de căutare lunare reale, competiție și intervale de licitare pentru prima poziție, pornind de la cuvinte cheie, de la un URL de pagină de destinație sau de la un site întreg. Agentul le poate trece direct în add_google_ads_keywords sau le poate scrie într-un Google Sheet.

Poate să pornească bugetul meu Google Ads fără să întrebe?

Doar cu o confirmare explicită. set_google_ads_status este comutatorul care armează banii reali, iar pentru că a crea un copil activ sub un părinte deja activ se difuzează la următoarea licitație, aceeași confirmare protejează și create_google_ads_ad_group, create_google_ads_ad și add_google_ads_keywords când părintele este live. Cuvintele cheie negative restricționează doar cheltuiala și nu sunt niciodată blocate.

Poate să ruleze rapoarte?

Da. google_ads_report primește GAQL arbitrar, deci agentul poate cere orice felie are nevoie. Ține minte că GAQL nu este SQL: nu are subinterogări, iar IN primește o listă literală, deci un WHERE id IN (SELECT …) este invalid. Rezultatele pot fi scrise direct într-un Google Sheet sau Doc.

Ce licitare și targetare poate seta?

Șase strategii de licitare, programul campaniei și targetare geografică și pe limbă, cu find_google_ads_locations pentru a găsi locațiile de targetare după nume. Bugetele se setează prin set_google_ads_budget, iar cuvintele cheie suportă negative și CPC pe cuvânt cheie.

Agentul primește parola mea Google?

Nu. Te conectezi la Google Ads prin fluxul OAuth al Google din setările Connectors ale Hermoso, iar Hermoso păstrează tokenul rezultat. Agentul doar apelează uneltele Hermoso. Conexiunile Google Ads sunt partajate la nivel de brand, astfel încât o echipă întreagă lucrează dintr-o singură conexiune.

Poate să facă și creativul anunțului?

Da. Același server cercetează anunțurile concurenței, planifică ideea, randează creații finalizate de imagine și video folosind peste 100 de modele, cu produsul tău real compus în ele, și încarcă active cu upload_google_ads_asset, astfel încât cercetarea, creativul și construirea campaniei se întâmplă într-o singură conversație.

Conectează Google Ads o dată, iar agentul tău poate cerceta piața, scrie anunțul, construi arborele și raporta, cu o poartă fermă înainte ca ceva să cheltuie.

Începe gratuit →   Citește documentația MCP →