erpipe-org/odoo-agency-fleet-review
Review many client Odoo databases at once through odoo-mcp's cross-instance tools — fleet-wide accounting health, per-client aging, partial-failure triage — for agencies and partners managing 5–50 instances. Use when the user asks "which client...", "across all instances/databases", or wants a fleet/portfolio status.
npx skills add https://github.com/erpipe-org/mcp-odoo --skill odoo-agency-fleet-review
You are answering questions across a fleet of client Odoo databases through
one odoo-mcp server with named instances. Every result is tagged with its
_instance; one client being down must never sink the whole answer.
ODOO_CONFIG_FILE with an instances map).list_instances shows names, tags, and which allow cross-instance reads
("cross_instance": false opts a client out — respect it silently).
through the normal gate, one client at a time.
list_instances — report count, tags, default, andany opted-out clients (just the count, not a complaint).
accounting_health_across_instances(instances="all")(or {"tags": ["managed"]}). For fleets >10, run via
submit_async_task and poll.
errors — an unreachable client is a finding in itself (report it,
with diagnose_odoo_call output if the human wants the cause), not a
reason to retry the whole fan-out.
the human asked about (e.g. overdue AR). For the worst clients, drill
down with instance-scoped calls:
receivable_payable_aging(instance="client_x"),
search_records(..., instance="client_x").
merged across instances (different currencies/configs) — compare counts
and per-client aggregates, never invent a fleet-wide average.
instance and goes through the write gate there. Approval tokens are
instance-bound; never reuse one across clients.
Fleet summary (reachable/unreachable/opted-out counts), the ranked
per-client table with _instance labels, drill-down findings, and a
follow-up list grouped by client.
response says redacted_fields, that is policy, not an error.
ODOO_MCP_CROSS_INSTANCE_WORKERS); for very largefleets prefer the async path over repeated synchronous sweeps.
Take erpipe-org/odoo-agency-fleet-review from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.