Base module to host data collected from Odoo repositories.
It allows you to:
- declare the Odoo versions (last 3 versions by default)
- declare repositories containing modules (Odoo repositories included by default, and OCA ones are synced automatically)
- scan these repositories to collect modules informations per Odoo version
auto_awesome What this module does
AI-generated from the code · Odoo 18.0This module lets you declare Odoo versions and repositories, then automatically scan those repositories to collect information about every module they contain, per Odoo version.
Odoo MCA is a tool for cataloguing Odoo modules found in Git repositories. You declare the Odoo versions you care about (e.g. 17.0, 18.0) and the repositories to inspect, then launch a scan. The scan runs in the background and records, for each module and each Odoo version, details such as its technical name, title, summary, category, authors, maintainers, license, development status, dependencies (including Python packages), lines of code, and whether it is standard, enterprise or community.
Scans can be started from a repository, a repository branch or an Odoo version, with a normal scan or a forced rescan. Scheduled jobs keep data up to date and synchronise OCA repositories automatically. A blacklist setting lets you exclude OCA repositories.
Business rules include: Odoo version names must follow the x.y pattern; a module cannot be recorded twice for the same repository and version; a generic module cannot depend on a project-specific module; dependency levels are computed automatically; and when the 'base' module is first scanned, all modules without dependencies are linked to it.
The module adds menus and screens for repositories, branches, modules, authors, maintainers, licenses, categories, development statuses, Python dependencies, authentication tokens and SSH keys. Settings are available in the general configuration for storage path, default token, main node URL and OCA blacklist.
Depends on
Required by other modules
Menus it adds
Models and fields (21)
- ssh.key · new modelname, private_key
- odoo.author · new modelname
- odoo.branch · new modelname (Version), active, next_id, sequence, previous_id, repository_branch_ids (Repositories)
- odoo.module · new modelname, blacklisted, module_branch_ids (Modules)
- res.company · extends an existing modelconfig_odoo_repository_default_token_id (Default Authentication Token), config_odoo_repository_workaround_fs_errors (Workaround FS errors)
- odoo.license · new modelname
- odoo.maintainer · new modelname, github_url (GitHub URL), module_branch_ids (Maintainers)
- odoo.repository · new modelname, active, org_id (Organization), to_scan, repo_url (Web URL), sequence, specific, token_id (Token), clone_url (Clone URL), repo_type, branch_ids (Branches), clone_name, module_ids (Modules), ssh_key_id (SSH Key), display_name, addons_path_ids (Addons Path), manual_branches (Configure branches manually), scan_weekday_ids (Scanning days)
- odoo.mca.backend · new modelname
- odoo.module.branch · new modelurl (URL), name (Techname), title, org_id (Organization), pr_url (PR URL), removed, sloc_js (JS), summary, version (Last version), sloc_css (CSS), sloc_xml (XML), specific, branch_id (Odoo Version), full_path, module_id (Technical name), author_ids (Authors), license_id (License), addons_path, application, branch_name (Branch Name), category_id (Category), installable, is_standard (Standard?), module_name (Module Technical Name), sloc_python (Python), version_ids (Versions), auto_install (Auto-Install), is_community (Community?), org_sequence (Organization Sequence), is_enterprise (Enterprise?)
- odoo.ref.data.mixin · new model
- odoo.repository.org · new modelname, sequence, github_url (GitHub URL)
- res.config.settings · extends an existing modelconfig_odoo_repository_storage_path (Storage local path), config_odoo_repository_main_node_url (Main Node), config_odoo_repository_oca_blacklist (OCA Repository Blacklist), config_odoo_repository_default_token_id, config_odoo_repository_workaround_fs_errors
- authentication.token · new modelname, token
- odoo.module.category · new modelname
- odoo.module.dev.status · new modelname
- odoo.python.dependency · new modelname
- odoo.repository.branch · new modelname, active, specific, branch_id (Odoo Version), module_ids (Modules), cloned_branch, repository_id (Repository), manual_branches, last_scanned_commit
- odoo.module.branch.version · new modelname, commit, sequence, branch_id, module_id (Module ), module_name (Module Technical Name), manifest_value, branch_sequence (Branch Sequence), module_branch_id (Module), has_migration_script, migration_script_url (Migration Script)
- oca.repository.synchronizer · new model
- odoo.repository.addons_path · new modelis_standard (Standard?), is_community (Community Contribution?), is_enterprise (Enterprise?), relative_path
Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 2 confirmed, 7 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/module-composition-analysis.
terminal Installation and usage
No verified informationInstallation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.