MCP-Odoo
Model Context Protocol server for Odoo integration, allowing AI agents to access and manipulate Odoo data through a standardized interface.
Overview
MCP-Odoo provides a bridge between Odoo ERP systems and AI agents using the Model Context Protocol (MCP). This enables AI systems to:
- Access partner information
- View and analyze accounting data including invoices and payments
- Perform reconciliation of financial records
- Query vendor bills and customer invoices
Features
- 🔌 Easy integration with Odoo instances
- 🤖 Standard MCP interface for AI agent compatibility
- 📊 Rich accounting data access
- 🔒 Secure authentication with Odoo
Installation
# Clone the repository
git clone https://github.com/yourtechtribe/model-context-protocol-mcp-odoo.git
cd model-context-protocol-mcp-odoo
# Install dependencies
pip install -r requirements.txt
Configuration
Create a .env file in the project root with the following variables:
ODOO_URL=https://your-odoo-instance.com
ODOO_DB=your_database
ODOO_USERNAME=your_username
ODOO_PASSWORD=your_password
HOST=0.0.0.0
PORT=8080
Usage
Start the MCP server:
# Using the SSE transport (default)
python -m mcp_odoo_public
# Using stdio for local agent integration
python -m mcp_odoo_public --transport stdio
Documentation
Comprehensive documentation is available in the docs/ directory:
- Documentation Home - Start here for an overview of all documentation
- Implementation Guide - Detailed architecture and implementation details
- Accounting Functionality - In-depth guide to accounting features
- Troubleshooting - Solutions for common issues
- Usage Examples - Practical examples to get started
Development
Project Structure
mcp_odoo_public/: Main packageodoo/: Odoo client and related modulesresources/: MCP resources definitions (tools and schemas)server.py: MCP server implementationconfig.py: Configuration managementmcp_instance.py: FastMCP instance definition
Adding New Resources
Resources define the capabilities exposed to AI agents through MCP. To add a new resource:
- Create a new file in the
resources/directory - Define your resource using the
@mcp.tool()decorator - Import your resource in
resources/__init__.py
For detailed instructions, see the Implementation Guide.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Author
Albert Gil López
- Email: albert.gil@yourtechtribe.com
- LinkedIn: https://www.linkedin.com/in/albertgilopez/
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Metadata
Release files for iflow-mcp_yourtechtribe-mcp-odoo 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iflow_mcp_yourtechtribe_mcp_odoo-0.1.0.tar.gz | 47.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iflow_mcp_yourtechtribe_mcp_odoo-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 69.6 kB
Release files / iflow_mcp_yourtechtribe_mcp_odoo-0.1.0.tar.gz
| Download URL | iflow_mcp_yourtechtribe_mcp_odoo-0.1.0.tar.gz |
|---|---|
| Size | 47.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
86186b60905d5afcdb319ec713fbd4374907cf0d899fcad62ef6cf0928b5f805
|
|
BLAKE2b-256 checksum How to use checksums |
106f3d6b191328ada4eb2f2541ab827bc242fd433521a18b92702b045aafd9d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / iflow_mcp_yourtechtribe_mcp_odoo-0.1.0-py3-none-any.whl
| Download URL | iflow_mcp_yourtechtribe_mcp_odoo-0.1.0-py3-none-any.whl |
|---|---|
| Size | 21.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
89855cba6c5ad7f1886b0fb9140d9254263da9665c958ccc14a94822ff1db69c
|
|
BLAKE2b-256 checksum How to use checksums |
c6f1366b31f135d76a0a0a750a94abd4f643bf5275878cb559e565e2d8c8e0e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|