Aller au contenu
04

Suivi MCP

Suivez quels outils les clients IA appellent sur votre serveur MCP, à quelle fréquence, quels clients (Claude, Cursor, Windsurf) génèrent le plus d'utilisation, et les taux d'erreur.

Suivi automatique de tous les outils
import { BetterMeter } from "@bettermeter/node";
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";

const bm = new BetterMeter({
  siteId: "my-mcp-server",
  apiKey: "bm_...",
});

const server = new McpServer({
  name: "my-server",
  version: "1.0.0",
});

// Wraps server.tool() — auto-tracks every invocation
bm.wrapMcpServer(server);

// Tools registered after wrapping are automatically tracked
server.tool("search_docs", { query: z.string() }, async (args) => {
  // ... your tool logic (unchanged)
});
Suivi manuel
bm.trackTool({
  tool: "search_docs",
  client: "claude-code",
  protocolVersion: "2024-11-05",
  durationMs: 250,
  success: true,
  inputTokens: 150,
  outputTokens: 800,
});

Ce qui est suivi

Noms des outils, noms des clients, durée, succès/échec et compteurs de tokens optionnels. Les paramètres d'entrée et le contenu de sortie des outils ne sont jamais envoyés.

08

Référence des outils MCP

BetterMeter fonctionne comme un serveur MCP pour les assistants IA. Chaque commande CLI a un outil MCP correspondant avec le préfixe bettermeter_.

.mcp.json
{
  "mcpServers": {
    "bettermeter": {
      "command": "npx",
      "args": ["bettermeter"]
    }
  }
}

Les outils MCP qui modifient des données exigent une phrase de confirmation exacte (CONFIRM <action> <target>) pour l'action et la cible spécifiques avant de créer, mettre à jour, supprimer, scanner ou lancer des requêtes payantes.

Tous les outils d'analytique acceptent site_id (string) et range (today|7d|30d|90d|12m) — sauf bettermeter_all_sites, qui porte sur tout le compte : il ne déclare aucun site_id, et son range accepte aussi une fenêtre personnalisée YYYY-MM-DD..YYYY-MM-DD. limit (number, 1-100, facultatif) n'est déclaré que par les outils de liste qui renvoient des lignes classées ; les outils de synthèse, de tendance et de détail ne l'acceptent pas. L'outil MCP bettermeter_export supporte les formats json et md (la commande CLI export supporte aussi csv). Exemples d'utilisation pour les assistants IA :

« Qui est là et que font ces personnes en ce moment ? »bettermeter_live_visitors with activity=true
« Affiche le trafic en direct sur l'écran mural »bettermeter_live_display
« Comment va mon trafic ? »bettermeter_stats
« Montre la répartition des référencements IA »bettermeter_ai_traffic
« Quelles commandes CLI sont les plus utilisées ? »bettermeter_cli_commands
« Quels clients IA appellent mon serveur MCP ? »bettermeter_mcp_clients
« Les principales routes API cette semaine »bettermeter_api_endpoints with range=7d
« Quelle page a perdu le plus de trafic le mois dernier ? »bettermeter_pulse_ask
« Quelle est la santé de mon produit ? »bettermeter_pulse_health
« Y a-t-il des anomalies à connaître ? »bettermeter_pulse_insights
« Donne-moi un point hebdomadaire »bettermeter_pulse_briefing with period=weekly
« Actualise les dépenses Meta de ce site »bettermeter_ad_spend_sync with CONFIRM sync ad spend <site_id>
« Récupère mes conversions HubSpot maintenant »bettermeter_crm_sync with CONFIRM sync crm <connection_id>

Liste complète des outils

Les outils de trafic humain excluent par défaut le trafic automatisé connu et détecté avec une forte confiance. Définissez include_bots=true pour obtenir explicitement les totaux non filtrés.

Les outils qui acceptent limit sont bettermeter_pages, bettermeter_sources, bettermeter_bots, bettermeter_countries, bettermeter_browsers, bettermeter_visitors, bettermeter_sessions, bettermeter_events, bettermeter_campaigns, bettermeter_conversions, bettermeter_keywords, bettermeter_campaign_visitors, bettermeter_export, bettermeter_cli_commands, bettermeter_mcp_tools, bettermeter_mcp_clients et bettermeter_api_endpoints. Si vous l'omettez, le point de terminaison renvoie sa propre page par défaut, qui varie selon le jeu de données ; ne l'envoyez que pour demander un nombre de lignes précis. Sur bettermeter_sources (avec filter) et bettermeter_bots (avec category), la limite est appliquée avant le filtre : un résultat filtré peut donc contenir moins de lignes que la limite.

Temps réel

bettermeter_live_visitorsbettermeter_live_display

Portefeuille de sites

bettermeter_all_sites

Analytique web

bettermeter_statsbettermeter_pagesbettermeter_sourcesbettermeter_ai_trafficbettermeter_botsbettermeter_timeseriesbettermeter_countriesbettermeter_devicesbettermeter_browsersbettermeter_visitorsbettermeter_sessionsbettermeter_find_visitorbettermeter_visitorbettermeter_update_visitorbettermeter_visitor_propertiesbettermeter_tag_visitorbettermeter_eventsbettermeter_event_detailbettermeter_campaignsbettermeter_campaign_detailbettermeter_campaign_visitorsbettermeter_keywordsbettermeter_marketingbettermeter_landing_page_screenshotbettermeter_channelsbettermeter_export

Analytique CLI

bettermeter_cli_overviewbettermeter_cli_commandsbettermeter_cli_timeseries

Analytique MCP

bettermeter_mcp_overviewbettermeter_mcp_toolsbettermeter_mcp_clientsbettermeter_mcp_timeseries

Analytique API

bettermeter_api_overviewbettermeter_api_endpointsbettermeter_api_timeseries

Médias payants

bettermeter_ad_connectionsbettermeter_ad_spendbettermeter_ad_spend_syncbettermeter_ad_creative

CRM et conversions

bettermeter_conversionsbettermeter_crm_connectionsbettermeter_crm_sync

Envoi des alertes Slack

bettermeter_slack_webhooksbettermeter_slack_connectbettermeter_slack_testbettermeter_slack_updatebettermeter_slack_remove

Builder

bettermeter_dashboardsbettermeter_create_dashboardbettermeter_update_dashboardbettermeter_delete_dashboardbettermeter_reportsbettermeter_create_reportbettermeter_report_previewbettermeter_update_reportbettermeter_delete_report

Objectifs de conversion et évolution

bettermeter_goalsbettermeter_goal_detailbettermeter_create_goalbettermeter_update_goalbettermeter_delete_goalbettermeter_suggest_goals

Gestion des sites

bettermeter_sites_listbettermeter_sites_addbettermeter_sites_removebettermeter_sites_infobettermeter_sites_updatebettermeter_install

Gestion de l'équipe

bettermeter_members_listbettermeter_members_addbettermeter_members_removebettermeter_members_update_rolebettermeter_cancel_invitation

Classements de recherche et visibilité IA

bettermeter_brand_reportbettermeter_brand_configbettermeter_brand_comparebettermeter_brand_alertsbettermeter_ai_mentionsbettermeter_ai_mention_historybettermeter_backlinks

Facturation

bettermeter_billing

Pulse AI

bettermeter_pulse_askbettermeter_pulse_threadsbettermeter_pulse_threadbettermeter_pulse_thread_deletebettermeter_pulse_insightsbettermeter_pulse_healthbettermeter_pulse_briefingbettermeter_pulse_forecastbettermeter_pulse_comparebettermeter_pulse_alerts_listbettermeter_pulse_alerts_createbettermeter_pulse_alerts_deletebettermeter_pulse_notifications

Les dépenses Meta sont commercialement sensibles et nécessitent un accès ÉDITEUR ou ADMIN dans les outils directs comme dans Pulse; le catalogue Pulse des LECTEURS omet uniquement l’outil de dépenses. bettermeter_ad_spend_sync appelle Meta et met à jour les dépenses stockées; il exige donc aussi la phrase exacte CONFIRM sync ad spend <site_id>.