Pod

Yes, this is on purpose. Pod is built for agents, so the default page is plain HTML.
Human? View the normal website.
Agent? You probably prefer /mcp/mcp-odoo/issues.md or /mcp/mcp-odoo/issues.json, or Pod over MCP.

Reported issues for mcp-odoo

Pod holds 20 of 27 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to mcp-odoo.

Most discussed

Glama listing is missing Dockerfile

Your MCP server is currently listed on the Glama MCP directory, but it is not available for others to use because it does not have a Dockerfile.

It takes only a few minutes to fix this:

  1. Go to your server's listing: tuanle96/mcp-odoo
  2. Click "Claim" to verify ownership.
  3. Once claimed, navigate to the admin Dockerfile page

Read the thread · 2025-04-22 · closed · external user · 4 comments

Glama listing is missing Dockerfile

Your MCP server is currently listed on the Glama MCP directory, but it is not available for others to use because it does not have a Dockerfile.

It takes only a few minutes to fix this:

  1. Go to your server's listing: tuanle96/mcp-odoo
  2. Click "Claim" to verify ownership.
  3. Once claimed, navigate to the admin Dockerfile page

Read the thread · 2025-04-22 · closed · external user · 4 comments

halt on “Making request to 127.0.0.1:8069/xmlrpc/2/common”

odoo16+mcp_odoo mcp_odoo console: Image

odoo16 server console:

Image

The last print is “Making request to 127.0.0.1:8069/xmlrpc/2/common”

Read the thread · 2025-04-16 · closed · external user · 6 comments

halt on “Making request to 127.0.0.1:8069/xmlrpc/2/common”

odoo16+mcp_odoo mcp_odoo console: Image

odoo16 server console:

Image

The last print is “Making request to 127.0.0.1:8069/xmlrpc/2/common”

Read the thread · 2025-04-16 · closed · external user · 6 comments

Issue with installation - created Documentation: Comprehensive Guide for Integrating Odoo MCP Server with Claude Desktop on macOS

Hello,

I recently integrated the Odoo MCP server with Claude Desktop on macOS and encountered several challenges that weren't covered in the existing documentation. After resolving these issues, I've created a comprehensive guide that might help other users and could be valuable to include in the official documentation.

Issues Encountered Python Path Resolution: When using pyenv or Homebrew on macOS, Claude Desktop couldn't locate the Python interpreter using just python or python3 in the conf

Read the thread · 2025-03-28 · closed · external user · 3 comments

Tools missing in Claude Desktop

I've just tried in Claude Desktop using the docker image and only three tools are available: Image

Using docker image built from latest on develop.

Here is my configuration for claude desktop:

{
  "mcpServers": {
    "odoo": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--network",
        "odoo-network",
        "-e",
        

[Read the thread](https://github.com/erpipe-org/mcp-odoo/issues/7) · 2025-03-27 · closed · external user · 8 comments

### Tools missing in Claude Desktop

I've just tried in Claude Desktop using the docker image and only three tools are available:
<img width="497" alt="Image" src="https://github.com/user-attachments/assets/98edce2e-b49d-489a-b46c-3b74f2b0a530" />

Using docker image built from latest on develop.

Here is my configuration for claude desktop:

{ "mcpServers": { "odoo": { "command": "docker", "args": [ "run", "-i", "--rm", "--network", "odoo-network", "-e",

Read the thread · 2025-03-27 · closed · external user · 8 comments

Any ideas on mind?

I just woke up today thinking in building a MCP server for ODOO.

Same idea?

Read the thread · 2025-03-18 · closed · outside contributor · 18 comments

Most recent

[bug] search_records: invalid non-empty domain input becomes an unfiltered search

Environment

Command or MCP client configuration

The compatibility run used a local policy-limited relay around the published stdio server. The relay forwarded search_records calls unchan

Read the thread · 2026-08-13 · closed · external user · 0 comments

[bug] search_records: invalid non-empty domain input becomes an unfiltered search

Environment

Command or MCP client configuration

The compatibility run used a local policy-limited relay around the published stdio server. The relay forwarded search_records calls unchan

Read the thread · 2026-08-13 · closed · external user · 0 comments

Write-approval durability across multiple worker processes (gate 2: process-local store)

Summary

execute_approved_write is gated by two independent checks. PR #48 fixes the first (stateless hash — integral floats hashing differently). This issue is about the second, distinct root cause of intermittent approval failures: the stateful session check relies on process-local memory and breaks under multi-worker deployments.

This is a proposal for discussion, not a PR — the fix is larger and the trade-offs are worth agreeing on before implementing.

Problem

`ser

Read the thread · 2026-07-09 · open · outside contributor · 1 comment

Write-approval durability across multiple worker processes (gate 2: process-local store)

Summary

execute_approved_write is gated by two independent checks. PR #48 fixes the first (stateless hash — integral floats hashing differently). This issue is about the second, distinct root cause of intermittent approval failures: the stateful session check relies on process-local memory and breaks under multi-worker deployments.

This is a proposal for discussion, not a PR — the fix is larger and the trade-offs are worth agreeing on before implementing.

Problem

`ser

Read the thread · 2026-07-09 · open · outside contributor · 1 comment

[feat] Support local-file attachment uploads via _from_path

Problem

Uploading a large binary attachment to an Odoo record (e.g. a resume/CV, an invoice PDF, a product image — anywhere from a few hundred KB up) is not practical through the current write tools.

validate_write / execute_approved_write require the binary content to be passed inline as base64 in the values dict of the tool call. For an MCP client whose model has to actually construct that tool call (an LLM agent), this means the full base64 string has to pass through the agent's ow

Read the thread · 2026-07-06 · closed · outside contributor · 0 comments

[feat] Support local-file attachment uploads via _from_path

Problem

Uploading a large binary attachment to an Odoo record (e.g. a resume/CV, an invoice PDF, a product image — anywhere from a few hundred KB up) is not practical through the current write tools.

validate_write / execute_approved_write require the binary content to be passed inline as base64 in the values dict of the tool call. For an MCP client whose model has to actually construct that tool call (an LLM agent), this means the full base64 string has to pass through the agent's ow

Read the thread · 2026-07-06 · closed · outside contributor · 0 comments

Feature: Provide suggestions when lookup_model_history cannot find a model

Problem

While contributing to Issue #33, I explored the implementation of lookup_model_history and tested its current behavior.

The lookup currently supports exact matching and partial substring matching, but small typos or abbreviated inputs return no helpful suggestions.

Examples:

Input Current Result
account.invoice exact
account.invoicee none
account inv none
payment.methd none

In these cases, the intended model is us

Read the thread · 2026-07-03 · closed · outside contributor · 0 comments

Feature: Provide suggestions when lookup_model_history cannot find a model

Problem

While contributing to Issue #33, I explored the implementation of lookup_model_history and tested its current behavior.

The lookup currently supports exact matching and partial substring matching, but small typos or abbreviated inputs return no helpful suggestions.

Examples:

Input Current Result
account.invoice exact
account.invoicee none
account inv none
payment.methd none

In these cases, the intended model is us

Read the thread · 2026-07-03 · closed · outside contributor · 0 comments

aggregate_records calls deprecated read_group on Odoo 19.1 SaaS (should use formatted_read_group)

Summary

On Odoo 19.1 SaaS Enterprise (saas~19.1+e), every call to aggregate_records fails because the connector invokes <model>.read_group, but in Odoo 19+ the public read_group method has been removed from the model API in favor of formatted_read_group.

The README explicitly states:

aggregate_records pushes groupby/sum/count/avg into Postgres via formatted_read_group (Odoo 19+) or read_group (16-18).

So the intent was to dispatch to formatted_read_group on Odoo 19+

Read the thread · 2026-05-21 · closed · external user · 2 comments

Compatibility with Odoo 19 / JSON-2 API

Hi,

Thanks for your work on this project — it’s been very useful.

I’m currently using the MCP Odoo server module with a custom bridge. Since Odoo 19 has officially deprecated XML-RPC/JSON-RPC in favor of the new JSON-2 API (with full removal planned in Odoo 20), I’d like to ask:

Do you plan to update this module to support JSON-2 instead of XML-RPC?

If yes, do you already have a roadmap or timeline in mind?

If not, would you accept a PR that refactors the codebase to use JSON-2 (with kwargs

Read the thread · 2025-09-12 · closed · external user · 2 comments

Compatibility with Odoo 19 / JSON-2 API

Hi,

Thanks for your work on this project — it’s been very useful.

I’m currently using the MCP Odoo server module with a custom bridge. Since Odoo 19 has officially deprecated XML-RPC/JSON-RPC in favor of the new JSON-2 API (with full removal planned in Odoo 20), I’d like to ask:

Do you plan to update this module to support JSON-2 instead of XML-RPC?

If yes, do you already have a roadmap or timeline in mind?

If not, would you accept a PR that refactors the codebase to use JSON-2 (with kwargs

Read the thread · 2025-09-12 · closed · external user · 2 comments

Python 3.12 Compatibility Issue - SyntaxError with async keyword

Description

When running odoo-mcp with Python 3.12, the server fails to start due to a SyntaxError related to the async keyword. This appears to be a compatibility issue between Python 3.12 and the way asyncio is being used in the dependency chain.

Environment

Read the thread · 2025-04-11 · closed · external user · 1 comment

The remaining reports are on the project's issue tracker.