Fleets
Multi-site analytics as tools: GA4, Search Console, Cloudflare edge, PageSpeed, insights.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
fleets-mcpclaude mcp add fleets -e 'FLEETS_TOKEN=<your fleets_token>' -- npx -y fleets-mcp@0.2.2
{
"mcpServers": {
"fleets": {
"command": "npx",
"args": [
"-y",
"fleets-mcp@0.2.2"
],
"env": {
"FLEETS_TOKEN": "<your fleets_token>"
}
}
}
}
Variables d'environnement
FLEETS_TOKENsecret Fleets personal access token (fl_...). Optional if you have already run `fleets login`; otherwise mint one at https://fleets.run/app/account?tab=cli.
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
fleets
Terminal CLI for Fleets. Per-site commands mirror the app UI tabs at https://fleets.run/app/<slug>/<tab>.
Install
npm install -g fleets
Authenticate
fleets login
Picks between two methods:
- browser (default) — device flow: CLI prints a URL + 8-character code, auto-opens your browser, you click authorize, CLI finishes automatically.
- paste a token — mint one in app → account → cli, paste it in.
Skip the prompt with a flag:
fleets login --browser # force device flow
fleets login --paste # force token paste
fleets login --token fl_xxxxxxxxxxxxxxxx # paste in one shot (CI)
export FLEETS_TOKEN=fl_xxxxxxxxxxxxxxxx # skip login entirely
Slug-first dispatch
The most intuitive way to run commands is to put the site slug first, like you're "inside" that site:
fleets fightbets # GA4 summary (defaults to stats)
fleets fightbets sources # top traffic sources
fleets fightbets funnel session_start view # conversion funnel
fleets fightbets seo --range 30d # GSC summary, last 30 days
fleets fightbets open settings # print app URL
The legacy form fleets <command> <slug> (e.g. fleets sources fightbets) still works.
Commands
Setup
| Command | Description |
|---|---|
fleets login | Browser device-flow auth (no paste) |
fleets add <domain> [--detect] | Create a site; --detect auto-links GA4 + GSC |
fleets connect <slug> | Auto-detect GA4 + GSC via service account |
fleets connect <slug> --property <id> | Set GA4 property explicitly |
fleets connect <slug> --gsc <site-url> | Set GSC site explicitly |
Analytics (per-site)
All accept --range (default 7d) and --json. Commands with top-N tables also accept --limit.
| Command | Tab | Data source |
|---|---|---|
fleets list | — | All your sites with sparkline + Δ7d |
fleets <slug> / fleets stats <slug> | day | GA4 summary |
fleets <slug> sources | sources | GA4 traffic sources |
fleets <slug> campaigns | campaigns | GA4 UTM campaigns |
fleets <slug> referrals | referrals | GA4 referrals |
fleets <slug> landers | landers | GA4 landing pages |
fleets <slug> events | events | GA4 events |
fleets <slug> users | users | GA4 country + device breakdown |
fleets <slug> funnel <step1> <step2>… | funnel | GA4 funnel |
fleets <slug> seo | seo | Google Search Console |
fleets <slug> edge | edge | Cloudflare Analytics |
fleets <slug> speed | speed | PageSpeed Insights |
Utility
| Command | Description |
|---|---|
fleets <slug> export | Daily GA4 CSV/JSON export |
fleets <slug> query "<text>" | Natural-language analytics query |
fleets <slug> open [tab] | Print the app URL for a site |
MCP server
The same package ships an MCP server, fleets-mcp,
so agents (Claude Code, Claude Desktop, Cursor, …) can pull your live Fleets
analytics as tools. It reuses the CLI's auth — run fleets login once (or set
FLEETS_TOKEN) and the MCP server picks up the same token from ~/.fleets/config.json.
Add it to a client
Claude Code:
claude mcp add fleets -- fleets-mcp
Claude Desktop / Cursor (claude_desktop_config.json or .cursor/mcp.json):
{
"mcpServers": {
"fleets": {
"command": "fleets-mcp"
}
}
}
No global install? Use npx with the fleets-mcp launcher package:
{
"mcpServers": {
"fleets": {
"command": "npx",
"args": ["-y", "fleets-mcp"]
}
}
}
If you authenticate via env instead of fleets login, add
"env": { "FLEETS_TOKEN": "fl_xxx" } to the server entry.
Tools
All read-only except log_change (writes a change-log entry). Every analytics
tool takes a slug (from list_sites) and an optional range (7d, 30d, 24h).
| Tool | What it returns |
|---|---|
list_sites | All sites + connected sources (GA4 / Cloudflare / GSC) — start here |
stats | GA4 summary: sessions, users, pageviews, events, engagement, bounce |
sources · campaigns · referrals · landers · events | GA4 breakdowns (accept limit) |
users · devices · demographics | GA4 audience breakdowns |
funnel | GA4 conversion funnel across steps (2+) |
seo | Google Search Console summary |
edge | Cloudflare edge analytics (bots, humans, cache) |
speed | PageSpeed Insights + Core Web Vitals |
insights | AI-ready signals worth investigating (optionally per site) |
ask | Natural-language question answered server-side with citations |
log_change · recall | Write / read the per-site change log |
Environment variables
| Variable | Description |
|---|---|
FLEETS_TOKEN | Personal access token. Skip fleets login entirely — useful for CI. Overrides ~/.fleets/config.json. |
Range format
All --range flags accept:
7d— last 7 days30d— last 30 days90d— last 90 days24h— last 24 hours (rounds to 1 day)
Requirements
- Node.js >= 22 (LTS)
- Works on macOS, Linux, Windows
Questions fréquentes
Qu'est-ce que Fleets ?
Multi-site analytics as tools: GA4, Search Console, Cloudflare edge, PageSpeed, insights.
Comment installer Fleets ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add fleets -e 'FLEETS_TOKEN=<your fleets_token>' -- npx -y fleets-mcp@0.2.2. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour Fleets ?
Oui. Il attend FLEETS_TOKEN, à renseigner dans sa configuration.
Fleets est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient Fleets ?
Il est publié par runFleets. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.