Inventory Analysis

Provides inventory analysis, forecasting, and reporting by connecting to Odoo ERP for stock, demand, ABC/XYZ, turnover, and aging insights.
  • python

0

GitHub Stars

python

Language

4 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "accountsalmar-odoo-inventory-mcp": {
      "command": "python",
      "args": [
        "-m",
        "src.server"
      ],
      "env": {
        "ODOO_DB": "live",
        "ODOO_URL": "https://your-odoo-domain",
        "ODOO_API_KEY": "YOUR_API_KEY",
        "ODOO_USERNAME": "your@example.com"
      }
    }
  }
}

You will run the Inventory Analysis MCP Server to connect to your Odoo ERP and obtain comprehensive inventory analysis, forecasting, and reporting. This MCP server centralizes stock insights, demand forecasting, ABC/XYZ classifications, and turnover and aging analyses, enabling proactive stock management and smarter purchasing decisions.

How to use

You interact with the Inventory Analysis MCP Server through an MCP client that supports standard MCP interactions. You can request current stock levels, reorder alerts, and stock summaries, then run demand forecasts, ABC/XYZ analyses, and turnover or aging reports. Use natural language prompts to ask for specific insights, such as showing fast-moving items, forecasting demand for a product, or identifying aging stock across your warehouses.

How to install

Prerequisites: Ensure you have Python 3.10 or higher and access to an Odoo instance (v14+). You may also use a local MCP runner like uvx if you prefer a local orchestration tool.

Step 1. Prepare the server files

  • Clone or download the Inventory Analysis MCP Server package to your development machine.
Step 2. Install dependencies
- Open a terminal or command prompt and navigate to the project directory, then install the package in editable mode:

cd inventory_mcp_server pip install -e .

- Alternatively, install dependencies from a requirements file if provided:

pip install -r requirements.txt


Step 3. Configure Odoo connection
- Copy the environment example and customize credentials:
```cp .env.example .env```
- Edit the .env file to set up your Odoo connection details (URL, database, user, and API key).

Step 4. Run the MCP server using the provided runtimes
- You can start the MCP server using Python directly:

{ "type": "stdio", "name": "inventory_analysis", "command": "python", "args": ["-m", "src.server"], "cwd": "C:/YourPath/inventory_mcp_server", "env": { "ODOO_URL": "https://your-odoo-domain", "ODOO_DB": "live", "ODOO_USERNAME": "your@example.com", "ODOO_API_KEY": "YOUR_API_KEY" } }


- Or run with uv to manage the process:

{ "type": "stdio", "name": "inventory_analysis", "command": "uv", "args": [ "run", "--directory", "C:/YourPath/inventory_mcp_server", "python", "-m", "src.server" ], "env": { "ODOO_URL": "https://your-odoo-domain", "ODOO_DB": "live", "ODOO_USERNAME": "your@example.com", "ODOO_API_KEY": "YOUR_API_KEY" } }

## Additional configuration and usage notes

Environment variables shown in the examples include:
- ODOO\_URL: The URL of your Odoo instance
- ODOO\_DB: The Odoo database name
- ODOO\_USERNAME: The username or email for authentication
- ODOO\_API\_KEY: The API key for authentication (required)

If you use a GUI-based MCP client or an integration platform, ensure the client can pass environment variables to the running process and that the working directory matches where the server module resides.

## Notes and troubleshooting

- Ensure your Odoo instance is accessible from the machine running the MCP server and that the API key is valid.

- If the server fails to start, check that the Python environment has the required dependencies and that the working directory path is correct.

## Available tools

### get\_stock\_levels

Retrieve current stock levels with status classification such as out of stock, critical, low, normal, and overstock.

### get\_reorder\_alerts

Get products that require replenishment based on stock levels and defined reorder rules.

### get\_stock\_summary

Provide stock summary statistics and overview.

### forecast\_demand

Generate demand forecasts using multiple forecasting methods.

### get\_forecast\_summary

Return summary statistics for forecast results.

### analyze\_abc\_xyz

Perform ABC/XYZ classification on inventory items.

### get\_abc\_xyz\_summary

Provide a summary of ABC/XYZ classifications.

### analyze\_turnover

Analyze inventory turnover including turnover ratio and classification.

### analyze\_aging

Analyze inventory aging across defined age buckets and assess obsolescence risk.

### get\_turnover\_summary

Return turnover analysis summary.

### get\_aging\_summary

Return aging analysis summary.

### get\_slow\_moving\_items

Identify slow-moving or dead stock items.

### get\_high\_risk\_aging\_items

Identify items with high obsolescence risk.
Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational