server-tools is a free, open source erp & operations project written in Python and released under AGPL-3.0. It has 930 GitHub stars, 1,697 forks and 286 open issues, and was last pushed 3 days ago. On this registry it ranks #15 of 25 tracked projects in ERP & Operations, with 5 head-to-head comparisons available.

What is server-tools?

server-tools is a collection of Odoo addons maintained by the Odoo Community Association (OCA) that gives administrators and technical staff finer control over an Odoo server, and it is written for people who run, host, or extend Odoo rather than for end users of the ERP itself.

What it is

server-tools is an OCA repository of installable Odoo modules, written in Python and licensed under AGPL-3.0. Each capability lives in its own addon directory with its own version string, such as auditlog at 18.0.2.0.9 or base_exception at 18.0.1.2.0, and the repository targets the Odoo 18.0 branch. The modules sit on top of the Odoo framework and extend base behaviour: models, views, scheduled actions, attachments, and the database layer. The README lists the addons in a generated table of name, version, maintainers, and summary, and the project is tagged erp, hacktoberfest, odoo, and python.

The concrete problem it solves is that stock Odoo does not ship many of the operational and technical controls that a production instance needs. There is no built-in audit trail across models, no module for scheduled database backups, no queue for file-processing, no mechanism to stop two scheduled actions from running at once, and no fuzzy search on relation fields. Administrators normally close those gaps by writing and maintaining one-off custom modules per deployment. server-tools replaces that per-instance custom development with maintained, versioned addons that are released against a known Odoo branch and covered by shared CI.

Key capabilities

  • auditlog records changes made to records, providing an audit trail across models rather than a single hand-built log.
  • auto_backup backs up the database, and database_autovacuum_tuning adds scheduled checks for autovacuum behaviour.
  • attachment_queue adds a queue concept for processing files, with attachment_synchronize for synchronisation and attachment_delete_restrict to restrict deletion of attachments.
  • autovacuum_message_attachment automatically deletes old mail messages and attachments, while attachment_unindex_content disables indexing of attachment content.
  • base_exception provides an abstract model for customizable exceptions that can be applied to different models, such as sale order or invoice.
  • base_search_fuzzy adds fuzzy search using the PostgreSQL trigram extension, and base_name_search_improved makes typing in relation fields friendlier.
  • bus_alt_connection is needed when PgBouncer is used as a connection pooler, and base_cron_exclusion lets an administrator select scheduled actions that must not run simultaneously.

Who uses it and how

  • Odoo administrators running an Odoo 18.0 instance who need server-side controls that core does not provide, installed module by module from the addon directories.
  • Teams with compliance or traceability requirements, who enable auditlog to record record-level changes.
  • Deployments running PostgreSQL behind PgBouncer, which depend on bus_alt_connection for the connection pooling case, and instances that enable the trigram extension for base_search_fuzzy.
  • Operations staff responsible for data retention and recovery, using auto_backup for scheduled database backups and autovacuum_message_attachment to prune old mail messages and attachments.
  • Contributors and integrators: the repository carries the hacktoberfest topic, runs pre-commit and build workflows on the 18.0 branch, reports coverage through codecov, and hosts translations on the OCA translation platform.

Getting started

The addons are installed onto an Odoo 18.0 server from the repository, and a prebuilt instance can be tried through Runboat at runboat.odoo-community.org/builds?repo=OCA/server-tools&target_branch=18.0.

How it compares

No paid or proprietary products are named in the facts, and no comparable tool is named either, so server-tools stands alone in this registry. Its positioning comes from its licence and its community ownership: it is AGPL-3.0 code maintained by the Odoo Community Association, with the project page hosted at odoo-community.org/psc-teams/tools-30.

When to use it — and when not to

A self-hoster takes on the operation of the Odoo server, the PostgreSQL database, and the scheduled actions that modules such as auto_backup and database_autovacuum_tuning depend on; the facts describe no hosted service, no pip package, and no Docker image, only the Runboat try-me build. Anyone who wants a managed, plug-and-play product, or who runs an ERP other than Odoo, should look elsewhere. The honest caution is maintenance volume and sparse top-level documentation: the repository carries 286 open issues, and the README is a generated addon table, so the meaningful guidance for any single module lives inside that addon's own directory.

project readme (upstream, from github) — read inline

Runboat Pre-commit Status Build Status codecov Translation Status

server-tools

server-tools

Available addons

addon version maintainers summary
attachment_delete_restrict 18.0.1.0.0 yostashiro Kev-Roche Restrict Deletion of Attachments
attachment_queue 18.0.1.0.1 florian-dacosta sebastienbeau Base module adding the concept of queue for processing files
attachment_synchronize 18.0.1.0.0 florian-dacosta sebastienbeau GSLabIt bealdav Attachment Synchronize
attachment_unindex_content 18.0.1.0.0 moylop260 ebirbe luisg123v Disable indexing of attachments
auditlog 18.0.2.0.9 Audit Log
auto_backup 18.0.1.0.1 Backups database
autovacuum_message_attachment 18.0.1.0.1 florian-dacosta Automatically delete old mail messages and attachments
base_conditional_image 18.0.1.0.0 This module extends the functionality to support conditional images
base_cron_exclusion 18.0.1.0.1 LoisRForgeFlow ChrisOForgeFlow Allow you to select scheduled actions that should not run simultaneously.
base_exception 18.0.1.2.0 hparfr sebastienbeau This module provide an abstract model to manage customizable exceptions to be applied on different models (sale order, invoice, ...)
base_fontawesome 18.0.2.0.0 Up to date Fontawesome resources.
base_fontawesome_web_editor 18.0.1.0.0 Integration between base_fontawesome and web_editor for FontAwesome >= 6.7.2 support.
base_force_record_noupdate 18.0.1.0.0 Manually force noupdate=True on models
base_m2m_custom_field 18.0.1.0.0 Customizations of Many2many
base_model_restrict_update 18.0.1.0.0 yostashiro aungkokolin1997 Update Restrict Model
base_multi_image 18.0.1.0.0 Allow multiple images for database objects
base_name_search_improved 18.0.1.1.1 Friendlier search when typing in relation fields
base_partition 18.0.1.0.1 Base module that provide the partition method on all models
base_remote 18.0.1.0.0 Remote Base
base_search_fuzzy 18.0.2.0.0 Fuzzy search with the PostgreSQL trigram extension
base_sequence_option 18.0.1.0.1 kittiu Alternative sequence options for specific models
base_sparse_field_list_support 18.0.1.0.0 add list support to convert_to_cache()
base_technical_user 18.0.1.0.1 Add a technical user parameter on the company
base_temporary_action 18.0.1.0.0 This addon allows to create temporary actions
base_time_parameter 18.0.1.0.0 appstogrow nimarosa Time dependent parameters Adds the feature to define parameters with time based versions.
base_time_window 18.0.1.1.1 Base model to handle time windows
base_view_inheritance_extension 18.0.1.0.2 Adds more operators for view inheritance
bus_alt_connection 18.0.1.0.0 Needed when using PgBouncer as a connection pooler
database_autovacuum_tuning 18.0.1.0.1 Scheduled checks for Odoo autovacuum thresholds and scale factors
database_cleanup 18.0.1.0.2 Database cleanup
database_size 18.0.1.0.2 Database Size
dbfilter_from_header 18.0.1.0.0 Filter databases with HTTP headers
excel_import_export 18.0.1.0.0 kittiu Base module for developing Excel import/export/report
fetchmail_attach_from_folder 18.0.2.0.0 NL66278 Attach mails in an IMAP folder to existing objects
fetchmail_notify_error_to_sender 18.0.1.0.0 If fetching mails gives error, send an email to sender
field_vector 18.0.1.0.0 lmignon New specialized field to store vector data
html_text 18.0.1.0.0 Generate excerpts from any HTML field
[iap_alterna

readme truncated — read the full docs on github

Frequently asked questions

Is server-tools free to use?

server-tools is open source under the AGPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does server-tools do?

Tools for Odoo Administrators to improve some technical features on Odoo.

What is server-tools written in?

server-tools is primarily written in Python. Its source is publicly available at https://github.com/OCA/server-tools, and it has 930 GitHub stars.