Aeotool

io.aeotoolPublished by aeotool.ioOfficial publisherv1.0.0Updated Oct 25, 2026

Pilot AEO/GEO from Claude: bulk audits, server-side fixes via WordPress plugin, AI citations.

Overview

AI-generated overview

Aeotool lets an assistant run AEO/GEO audits of websites, apply fixes to connected WordPress sites, track AI citations, and read or adjust Google Ads accounts.

What you can do
List connected WordPress sites and launch single or batch AEO/GEO audits, then poll status and read full reports, scores and improvement checklists; compare the last two audits for proof of progress and track AI citation history and scheduled citation scans. Generate AEO artifacts such as JSON-LD, robots, llms, meta and FAQ, and apply level-1 improvements to a connected site so the plugin injects them. Read Google Ads accounts, performance, search terms, change history, quality score breakdown, landing pages, geo and device performance, audiences, criteria, keywords and ads, plus a full account audit. Make guarded Google Ads writes: bid modifiers, locations, criterion removal, audience lists
When to use it
Use it when you audit or improve a site's visibility in AI answers and search, when you manage several client sites and want bulk audits and before/after proof, or when you want an assistant to diagnose and carefully adjust Google Ads campaigns.
Requirements
Remote streamable HTTP endpoint at aeotool.io; no package install. The manifest declares no authentication, environment variables or headers, though the tools refer to a connected account, a WordPress plugin (Everlange Connect) and Google Ads OAuth connections. Audits and scheduled scans consume GTO credits; ads budget caps reference an optional ADS_MAX_DAILY_BUDGET_EUR setting.
Before you install
Audits cost 50 GTO each (50 per site in batch), scheduled citation scans cost 25 GTO per run, debited on completion. Many Google Ads tools write to live accounts (bid modifiers, locations, criteria, audiences, negative and positive keywords, keyword and ad pauses, campaign status, daily budgets); they require confirm:true and write_enabled, and some changes restart learning or cannot be undone by reversal. Applying improvements modifies connected WordPress sites.

Installation

In SourceWeft

  1. Open Aeotool in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.aeotool%2Fmcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "aeotool": {
      "type": "http",
      "url": "https://aeotool.io/api/mcp"
    }
  }
}

Tools

36

aeo_list_sites

Lister les sites connectés

Liste les sites WordPress connectés au compte (plugin Everlange Connect) : domaine, statut, modules actifs, version du bundle.

Takes no parameters.

aeo_audit

Auditer une URL (AEO/GEO)

Lance un audit AEO/GEO d’une URL (asynchrone, ~2 min) et renvoie immédiatement l’audit_id. Suivre avec aeo_audit_status jusqu’à completed, puis aeo_report / aeo_improvements. Coûte 50 GTO, débités à la complétion. NE PAS relancer le même audit pendant qu’un run est en cours.

Parametersurlrequired

aeo_audit_status

Statut d’un audit

Statut d’un audit lancé par aeo_audit : pending/processing → completed (avec le score) ou failed. Gratuit : poll toutes les 20-30 s.

Parametersaudit_idrequired

aeo_batch_audit

Auditer plusieurs sites

Lance l’audit de plusieurs sites en une commande (le « killer agence »), en asynchrone : renvoie immédiatement un audit_id par URL. Suivre chaque id avec aeo_audit_status. Coûte 50 GTO par site, débités à la complétion.

Parametersurlsrequired

aeo_report

Détail d’un audit

Renvoie le détail complet d’un audit existant (par audit_id) : score global, scores par catégorie et tous les critères (score + recommandation). Gratuit.

Parametersaudit_idrequired

aeo_improvements

Checklist d’améliorations

La CHECKLIST d’améliorations d’un audit : groupées par niveau (1=auto-applicable plugin, 2=générable, 3=rebuild/lead), triées par gain projeté. Fournit les ids à passer à aeo_apply. Passer audit_id OU domain (= dernier audit terminé du domaine). Gratuit.

Parametersdomainaudit_id

aeo_generate

Générer un artefact AEO

Génère (sans appliquer) un artefact AEO, déterministe et gratuit. Types : jsonld, robots, llms, meta, faq (params faqs[]), ai-txt, humans-txt, security-txt, sitemap. jsonld/robots/llms/meta/faq sont applicables (cf. aeo_apply) ; ai-txt/humans-txt/security-txt/sitemap sont à publier par l’agence.

Parametersurlrequiredfaqsteamtechtyperequiredpathstitlepolicycontactlanguagedisclosuredescription+1 more

aeo_apply

Appliquer les correctifs

APPLIQUE la sélection d’améliorations niveau 1 (jsonld/robots/llms/meta) sur un site connecté : génère + archive les correctifs et bump le bundle → le plugin les injecte au prochain sync. Optionnel : faqs[] (ajoute un FAQPage au JSON-LD), title/description (meta). Le site doit être connecté (aeo_list_sites).

Parametersfaqstitledomainrequireddescriptionimprovement_idsrequired

aeo_citations

Historique de citations IA

Historique de citation d’un domaine dans les moteurs IA : taux de citation par date, détail par moteur, part de voix. Renvoie `series[].basis` = "measured" ou "derived" (dénominateur reconstitué sur les scans anciens, le taux est alors un plancher : voir `caveat`). `share_of_voice` vaut null si aucun concurrent n’est suivi : la part de voix n’est pas mesurable, ce n’est pas 0. Nécessite un Monitoring IA sur ce domaine. Gratuit.

Parametersdomainrequired

aeo_proof

Preuve avant/après d’un domaine

La PREUVE : compare les 2 derniers audits complétés d’un domaine : delta de score, critères améliorés, critères régressés. L’argument client en un appel. Gratuit.

Parametersdomainrequired

aeo_monitor

Monitoring citations programmé

Programme un scan de citations récurrent côté serveur (10 moteurs IA, part de voix vs watchlist, alertes email). action=create {domain, brand_name?, frequency: daily|weekly|biweekly} · list · delete {schedule_id}. Chaque scan programmé coûte 25 GTO à l’exécution.

Parametersactionrequireddomainfrequencybrand_nameschedule_id

ads_list_accounts

Comptes Google Ads connectés

Liste les comptes Google Ads connectés au compte aeotool (OAuth) : customer_id, nom, statut, is_manager (MCC, non requêtable directement, ses comptes clients apparaissent aussi dans la liste), write_enabled (pilotage en écriture, activable par compte dans le Cockpit Google Ads).

Takes no parameters.

ads_performance

Performance des campagnes Ads

Performance des campagnes Google Ads sur N jours (défaut 30) : impressions, clics, coût, conversions, CTR, CPC moyen, budget/jour : triées par coût. Gratuit.

Parametersdayscustomer_id

ads_search_terms

Termes de recherche Ads

Termes de recherche réels ayant déclenché les annonces (N jours, triés par coût) avec le flag wasted=true (coût sans conversion) : candidats directs pour ads_add_negative_keywords. Gratuit.

Parametersdayslimitcustomer_id

ads_change_history

Historique des modifications Ads

Qui a change quoi et quand sur le compte (30 jours max, retention Google). Signale les changements de budget ou d'encheres qui ont pu RELANCER la phase d'apprentissage : les metriques anterieures ne sont alors plus comparables. Gratuit, lecture seule.

Parametersdayslimitcustomer_id

ads_quality_breakdown

Quality Score decompose

Decompose le Quality Score de chaque mot-cle en ses trois composantes Google (pertinence de l'annonce, experience sur la page de destination, CTR attendu) et designe la cause DOMINANTE. Un QS bas se corrige par la composante fautive, jamais par l'enchere. Gratuit, lecture seule.

Parametersdayslimitcustomer_id

ads_landing_pages

Performance par page de destination

Performance de chaque page de destination (cout, clics, conversions, taux de conversion) et liste des pages qui ont recu au moins 10 clics payants SANS une seule conversion. Ces URLs sont directement auditables avec aeo_audit : le diagnostic de citabilite et celui de conversion se recoupent. Gratuit, lecture seule.

Parametersdayslimitcustomer_id

ads_geo_performance

Performance par zone geographique

Performance par zone REELLE de l'internaute (ville / region), libelles resolus, avec les zones qui depensent sans convertir. Determinant pour une activite a zone de chalandise. Gratuit, lecture seule.

Parametersdayslimitcustomer_id

ads_asset_performance

Performance des accroches RSA

Note Google de chaque titre et description d'annonce responsive (LOW / GOOD / BEST / en cours d'evaluation). Remplacer les LOW par des variantes des BEST est l'optimisation creative la moins risquee : elle ne touche ni enchere ni budget, donc ne relance pas l'apprentissage. Gratuit, lecture seule.

Parametersdayslimitcustomer_id

ads_campaign_criteria

Criteres de ciblage (zones, appareils, horaires)

Zones, appareils et plages horaires cibles par les campagnes, avec leur ajustement d'enchere actuel et leur criterion_id. Lecture prealable indispensable a ads_set_bid_modifier et ads_remove_criterion. Gratuit.

Parameterscampaign_idcustomer_id

ads_audiences

Listes d audience du compte

Listes de remarketing disponibles et leur taille, avec celles qui atteignent le seuil de diffusion sur le reseau de recherche (~1 000 utilisateurs). Gratuit.

Parameterscustomer_id

ads_device_performance

Performance par appareil

Cout, conversions et cout par conversion par appareil (mobile, ordinateur, tablette). Prealable a tout ajustement d'enchere par appareil. Gratuit.

Parametersdayscustomer_id

ads_set_bid_modifier

Ajuster une enchere (zone / appareil / horaire)

ECRITURE GARDEE. Ajuste l'enchere d'un critere existant : 1.0 = aucun ajustement, 1.2 = +20 %, 0.8 = -20 %, 0 = exclusion. Reversible en repassant a 1. Dry-run valide par Google d'abord ; confirm:true pour appliquer. Avertit si une campagne est en phase d'apprentissage (l'action relance le compteur).

Parametersconfirmcampaign_idcustomer_idbid_modifiercriterion_id

ads_add_location

Ajouter ou exclure une zone

ECRITURE GARDEE. Ajoute une zone au ciblage d'une campagne, ou l'exclut avec negative:true. L'identifiant s'obtient avec ads_geo_target_search. Dry-run valide par Google d'abord ; confirm:true pour appliquer.

Parametersconfirmnegativecampaign_idcustomer_idgeo_target_resource_name

ads_remove_criterion

Retirer un critere de ciblage

ECRITURE GARDEE. Retire un critere de ciblage d'une campagne (zone, audience, ajustement). Un retrait se repare en RECREANT le critere, pas en annulant. Dry-run valide par Google d'abord ; confirm:true pour appliquer.

Parametersconfirmcampaign_idcustomer_idcriterion_id

ads_attach_audience

Rattacher une audience a une campagne

ECRITURE GARDEE. Rattache une liste de remarketing a une campagne. Mode observation par defaut : la diffusion NE CHANGE PAS, l'audience est seulement mesuree. Le mode targeting restreint la diffusion aux seuls membres de la liste et peut effondrer le volume : il doit etre demande explicitement. Dry-run valide par Google d'abord ; confirm:true pour appliquer.

Parametersmodeconfirmcampaign_idcustomer_iduser_list_resource_name

ads_keywords

Mots-clés Ads (avec ids)

Mots-clés actifs avec leurs métriques (N jours) et les ids nécessaires aux actions (ad_group_id + criterion_id pour ads_pause_keyword). Gratuit.

Parametersdayslimitcustomer_id

ads_audit

Audit Google Ads (19 critères)

Audit complet du compte Google Ads : score /100, grade, € gaspillés/mois, manque à gagner, quick wins par catégorie (tracking, gaspillage, enchères, structure, RSA…). Lecture seule, gratuit.

Parameterscustomer_id

ads_add_negative_keywords

Ajouter des mots-clés négatifs

ÉCRITURE GARDÉE : ajoute des mots-clés négatifs (1-50) à une campagne. Sans confirm:true : dry-run validé par Google (rien n’est appliqué). Nécessite le pilotage activé pour ce compte (ads_list_accounts → write_enabled). Chaque application est journalisée.

Parametersconfirmkeywordsrequiredmatch_typecampaign_idrequiredcustomer_id

ads_pause_keyword

Mettre un mot-clé en pause

ÉCRITURE GARDÉE : met un mot-clé en pause (réversible dans Google Ads). ids via ads_keywords. Sans confirm:true : dry-run validé par Google. Pilotage requis (write_enabled) ; journalisé.

Parametersconfirmad_group_idrequiredcustomer_idcriterion_idrequired

ads_update_budget

Modifier le budget quotidien d’une campagne

ÉCRITURE GARDÉE : modifie le budget quotidien d’une campagne. Caps : ±20 % max par appel, plafond absolu (env ADS_MAX_DAILY_BUDGET_EUR, défaut 200 €/j), budgets partagés refusés. Sans confirm:true : dry-run validé par Google. Pilotage requis ; journalisé.

Parametersconfirmcampaign_idrequiredcustomer_idnew_daily_budget_eurrequired

ads_campaign_status

Pause / réactivation de campagne

ÉCRITURE GARDÉE : met une campagne en pause ou la réactive (réversible). Sans confirm:true : dry-run validé par Google. Pilotage requis (write_enabled) ; journalisé.

Parametersstatusrequiredconfirmcampaign_idrequiredcustomer_id

ads_list_ads

Annonces du compte

Annonces (RSA…) avec métriques N jours et ids (ad_group_id + ad_id) nécessaires à ads_ad_status. Gratuit.

Parametersdayslimitcustomer_id

ads_ad_status

Pause / réactivation d’annonce

ÉCRITURE GARDÉE : met une annonce individuelle en pause ou la réactive (réversible). ids via ads_list_ads. Dry-run Google puis confirm:true. Pilotage requis (write_enabled) ; journalisé.

Parametersad_idrequiredstatusrequiredconfirmad_group_idrequiredcustomer_id

ads_add_keywords

Ajouter des mots-clés

ÉCRITURE GARDÉE : ajoute des mots-clés POSITIFS (1-20) à un groupe d’annonces. ad_group_id via ads_keywords. Dry-run Google puis confirm:true. Pilotage requis (write_enabled) ; journalisé.

Parametersconfirmkeywordsrequiredmatch_typead_group_idrequiredcustomer_id

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.