There are 3 options:
Option 1 - Disable via module:disable
This command will list and disable all the MSI modules.
php bin/magento module:status | grep Magento_Inventory | grep -v List | grep -v None | grep -v -e '^$' | xargs php bin/magento module:disable php bin/magento s:upgrade php bin/magento s:s:deploy -f php bin/magento c:flush php bin/magento i:reindex
Option 2 - Remove from the core
You can remove all Magento MSI modules adding these lines in the composer.json:
"replace": { "magento/module-inventory": "*", "magento/module-inventory-admin-ui": "*", "magento/module-inventory-advanced-checkout": "*", "magento/module-inventory-api": "*", "magento/module-inventory-bundle-product": "*", "magento/module-inventory-bundle-product-admin-ui": "*", "magento/module-inventory-cache": "*", "magento/module-inventory-catalog": "*", "magento/module-inventory-catalog-admin-ui": "*", "magento/module-inventory-catalog-api": "*", "magento/module-inventory-catalog-search": "*", "magento/module-inventory-configurable-product": "*", "magento/module-inventory-configurable-product-admin-ui": "*", "magento/module-inventory-configurable-product-indexer": "*", "magento/module-inventory-configuration": "*", "magento/module-inventory-configuration-api": "*", "magento/module-inventory-distance-based-source-selection": "*", "magento/module-inventory-distance-based-source-selection-admin-ui": "*", "magento/module-inventory-distance-based-source-selection-api": "*", "magento/module-inventory-export-stock": "*", "magento/module-inventory-export-stock-api": "*", "magento/module-inventory-elasticsearch": "*", "magento/module-inventory-graph-ql": "*", "magento/module-inventory-grouped-product": "*", "magento/module-inventory-grouped-product-admin-ui": "*", "magento/module-inventory-grouped-product-indexer": "*", "magento/module-inventory-import-export": "*", "magento/module-inventory-indexer": "*", "magento/module-inventory-low-quantity-notification": "*", "magento/module-inventory-low-quantity-notification-admin-ui": "*", "magento/module-inventory-low-quantity-notification-api": "*", "magento/module-inventory-multi-dimensional-indexer-api": "*", "magento/module-inventory-product-alert": "*", "magento/module-inventory-requisition-list": "*", "magento/module-inventory-reservations": "*", "magento/module-inventory-reservations-api": "*", "magento/module-inventory-reservation-cli": "*", "magento/module-inventory-sales": "*", "magento/module-inventory-sales-admin-ui": "*", "magento/module-inventory-sales-api": "*", "magento/module-inventory-sales-frontend-ui": "*", "magento/module-inventory-setup-fixture-generator": "*", "magento/module-inventory-shipping": "*", "magento/module-inventory-shipping-admin-ui": "*", "magento/module-inventory-source-deduction-api": "*", "magento/module-inventory-source-selection": "*", "magento/module-inventory-source-selection-api": "*" }
Option 3 - Remove from the core using Yireo module
You can add this module which does the same.
composer require yireo/magento2-replace-inventory:2.3.*