
Odoo Pulse
io.github.minhhq-a1Published by GitHub account minhhq-a1v1.9.1Updated Oct 24, 2026
An AI business analyst for Odoo ERP (18+) — one-call reports with verdicts, over MCP
Overview
An Odoo ERP analytics server that answers management questions with one-call reports, highlights, and a verdict.
- What you can do
- Odoo Pulse connects an assistant to an Odoo 18+ instance over the standard XML-RPC external API and returns structured analyst reports rather than raw records. Its tools cover a morning business pulse, CRM pipeline review, sales period comparison, receivables aging, inventory shortages and dead stock, absences, procurement, manufacturing health, project profitability and budgets, and team workload. It also offers roughly 60 model-aware query tools across CRM, Sales, Inventory, Accounting, HR, Project, Manufacturing, and PoS, opt-in via ODOO_TOOL_GROUPS. Money reports accept a company filter and flag mixed-currency totals.
- When to use it
- Use it when an assistant should answer management questions about an Odoo ERP deployment — sales, pipeline, receivables, inventory, procurement, production, or project delivery — without manually querying models. It suits Odoo 18+ on Odoo Online, Odoo.sh, or on-premise, and a Docker playground is available for trying it without an Odoo account.
- Requirements
- Runs locally via uvx from the PyPI package odoo-pulse (stdio transport, desktop only). Requires ODOO_URL, ODOO_DB, ODOO_USERNAME, and ODOO_API_KEY, plus network access to the Odoo instance. The API key is generated in Odoo under Settings, Users, Account Security. ODOO_READ_ONLY defaults to true.
Installation
In SourceWeft
- Open Odoo Pulse in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
odoo-pulse
An AI business analyst for your Odoo ERP. Ask one question, get one answer — numbers, highlights, risks, and a verdict (on-track / at-risk / off-track) — over the Model Context Protocol. CRUD bridges to Odoo already exist; this is the analytics layer that sits on top.
[business_pulse — a one-call company briefing]
The analyst tools
Each tool answers a whole management question in a single call, returning a structured report with a verdict — not a raw dump you have to interpret.
Every money-reporting tool takes an optional
company= filter and flags
mixed-currency totals instead of silently summing them; verdict cut-offs
(stalled %, overdue %, growth %) are parameters, so you can calibrate them
to your business.
Timezone semantics
All report tools take timezone_offset (default 7). Odoo stores datetime
fields in UTC; the tools shift them by timezone_offset hours before
bucketing by calendar day, and day windows in domains are expressed as UTC
datetime boundaries. Date-only fields (e.g. project.milestone.deadline,
invoice_date_due, project.task.date_deadline) are compared as-is.
Version-dependent fields
find_partner searches mobile only on instances that still have it (removed in Odoo 19), and list_timesheets reports an actionable error when hr_timesheet is not installed.
Under the hood it's the standard Odoo XML-RPC external API — nothing to install
inside Odoo, works on Odoo Online, Odoo.sh, and on-premise. Requires
Odoo 18+: the generic tools (search_read, read_records, …) still run on
older versions, but the report tools are not guaranteed there.
Try the playground
No Odoo account? Boot a demo Odoo pre-seeded with a story to tell (a stalled deal, a 90-day-overdue invoice, a stock shortage, someone off today):
First boot pulls ~4 GB of images (Odoo + Postgres) and seeds the demo data —
allow 5-10 minutes depending on your connection. Then point Claude at it and
ask it to run business_pulse. Full walkthrough:
docs/guides/playground.md.
Install & connect
Add it to Claude Code (no install step — uvx fetches it):
Generate the API key in Odoo under Settings → Users → (your user) → Account Security → New API Key. Config for Claude Desktop and Cursor, plus pip and Docker alternatives: docs/guides/install.md. If a key may have been exposed, see If an API key may have been exposed.
Or one-click:
[Install in Cursor] [Install in VS Code]
Read-only by default, safe writes when you want them
The server is read-only out of the box (ODOO_READ_ONLY=true). Writes require
four independent controls to line up: ODOO_READ_ONLY=false,
ODOO_WRITABLE_MODELS (a comma-separated model allow-list),
ODOO_ALLOW_DELETE=true additionally for deletes, and a per-call confirm=true
— every write tool returns a dry-run preview without it. System models are never
writable. Details: docs/reference/tools.md#write-operations.
More tools
Beyond the analyst reports, there are ~60 model-aware query tools spanning CRM,
Sales, Inventory, Accounting, HR, Project, Manufacturing, PoS, and Enterprise
apps — opt in via ODOO_TOOL_GROUPS. Full catalogue and configuration:
docs/reference/tools.md.
Testing
The suite mocks the XML-RPC layer, so no real Odoo or network is needed:
For a live check against a real Odoo (read-only), see docs/reference/tools.md#live-smoke-test-against-a-real-odoo.
License
Source: README.md at commit 219360f
Tools
0Version history
1- v1.9.1LatestSep 16, 2026
Score
50% 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 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts