Aidoo AI

MCP tool reference

The thirteen tools Aidoo exposes to your assistant: what each one does, the permission it requires, and whether it is granted by default.

5 دقيقة قراءةتم التحديث في 7 أغسطس 2026

لم تُترجم هذه الصفحة إلى لغتك بعد، لذا تُعرض بـالإنجليزية.

Aidoo exposes your Odoo as tools. The assistant picks one, Aidoo checks it is allowed to use it, then runs the call against your database.

This page is the full inventory. Each tool links to the page that covers it in depth.

The full matrix

الأداةالإذنافتراضي
aidoo_queryqueryنعم
aidoo_readreadنعم
aidoo_schemaschemaنعم
aidoo_reportreportنعم
aidoo_printprintنعم
aidoo_createcreateلا
aidoo_writewriteلا
aidoo_deletedeleteلا
aidoo_executeexecuteلا
aidoo_workflowexecuteلا
aidoo_workflow_runworkflowلا
aidoo_feedbackfeedbackلا
aidoo_attachattachلا

A freshly created API key receives the five read permissions. Everything else must be enabled explicitly under API keys.

Read tools

They cannot change anything: the tool → Odoo method binding is locked server-side, and aidoo_query can only ever call search_read and search_count.

aidoo_queryالإذن query · مفعّل افتراضيًا

Searches and reads records. The most used tool, the one behind "which quotations…", "how many customers…", "the list of invoices…".

Parameters: model, domain (the Odoo filter), fields, limit (80 by default), offset, order. It returns the records, but also total_count and has_more, so the assistant knows it is only seeing one page.

aidoo_readالإذن read · مفعّل افتراضيًا

Reads records whose identifiers are already known. More direct than aidoo_query when the assistant has just found an id.

aidoo_schemaالإذن schema · مفعّل افتراضيًا

Discovers the shape of your database: the list of models, or the fields of one model with their types and relations. No business data is read.

It is also the tool that returns hints: your business instructions attached to a model.

aidoo_reportالإذن report · مفعّل افتراضيًا

Aggregates without pulling data. Groups by one or more fields and computes a measure: revenue by month, outstanding by salesperson, quantities by category.

Always prefer it to aidoo_query for totals: Odoo does the maths, and only the results travel.

aidoo_printالإذن print · مفعّل افتراضيًا

Generates a PDF through Odoo's QWeb report engine and returns a download link. Invoice, quotation, delivery note, manufacturing order.

It counts as read-only: it produces a document, it changes no record.

Write tools

None is granted by default. What bounds them is your key's permissions, not an extra confirmation step, see Writing to Odoo.

aidoo_createالإذن create · يجب تفعيله يدويًا

Creates one or several records. In batch mode, records go out in a single Odoo call, which preserves consistency.

aidoo_writeالإذن write · يجب تفعيله يدويًا

Updates existing records. In batch mode, each group of identifiers gets its own values, and the result details the success or failure of each group.

aidoo_deleteالإذن delete · يجب تفعيله يدويًا

Deletes permanently: Odoo's unlink. Irreversible, with no recycle bin.

Grant this one with your eyes open

delete is the only permission that destroys information beyond recovery. In most deployments it stays off: archiving a record through aidoo_write answers the same need and can be undone.

aidoo_workflowالإذن execute · يجب تفعيله يدويًا

Triggers an Odoo business action, the buttons on your screens: confirm a quotation, validate an invoice, receive a transfer. Only methods prefixed action_ or button_ are allowed.

aidoo_executeالإذن execute · يجب تفعيله يدويًا

Calls an arbitrary Odoo method, for the cases the other tools do not cover. Methods that would duplicate a dedicated tool are blocked (create, write, unlink, read, search_read…), so that one permission cannot be used to bypass another.

It is the most powerful tool, and therefore the one to grant most sparingly.

Specialised tools

Three tools, one shared word

Three tools carry "workflow" in their name and do entirely different things. This is the most common confusion in the whole catalogue.

ToolWhat it runsPermission
aidoo_workflowAn Odoo button: confirm a quotation, post an invoice. Nothing to do with Aidoo workflowsexecute
aidoo_workflow_listNothing. It lists your saved Aidoo workflowsworkflow
aidoo_workflow_runAn Aidoo workflow: the sequence of steps you savedworkflow

The dividing line: aidoo_workflow acts inside Odoo, the other two act on what you saved in Aidoo.

aidoo_workflow_run

Runs an Aidoo workflow: a sequence of steps saved once, replayed with a sentence, with variables.

A saved workflow can perform operations the individual tools would refuse: you validated it when you created it.

The assistant calls aidoo_workflow_list at the start of a conversation to see what exists, then aidoo_workflow_run to execute the matching one.

aidoo_feedbackالإذن feedback · يجب تفعيله يدويًا

Updates a model's hint when you correct the assistant. This is Aidoo's learning mechanism, see Hints and learning.

Requires the feedback permission and the canUpdateHints flag on your member profile.

aidoo_attachالإذن attach · يجب تفعيله يدويًا

Sends a file into Odoo without routing it through the AI: the assistant gives you a single-use upload link, you drop the file, Odoo receives it. Also handles vendor bill digitization.

Choosing which permissions to grant

A progression that works

Start read-only for a week. Add create when a concrete need appears. Only open execute for an identified use case, and keep delete closed.

Use casePermissions
Consultation, reporting, analysisThe five read permissions, by default
Assisted data entry (contacts, notes, activities)+ create, write
End-to-end processing (confirm, validate)+ execute
Data cleanup, bulk corrections+ delete, temporarily

Each permission is set per key and per environment: you can allow writes on your test database and refuse them in production.

What the assistant knows before it tries

On startup, aidoo_context returns the list of genuinely available tools. The assistant therefore knows in advance what it cannot do, and says so instead of attempting the operation and failing.

If an action is refused when you expected it to work, check in this order: the key's permission, then the Odoo account's rights, then the blocked models under Security & permissions.