Skip to main content

godoo-mcp-server

Stateless MCP server for Odoo — raw primitives + skill resources.

Installation

pip install godoo-mcp-server

Or with Docker:

docker run -e ODOO_URL=https://your.odoo.instance \
           -e ODOO_DATABASE=mydb \
           -e ODOO_USERNAME=admin \
           -e ODOO_PASSWORD=secret \
           -p 8000:8000 \
           ghcr.io/godoo-dev/godoo-mcp-server:latest

Configuration

The server resolves Odoo credentials from request headers or environment variables. Headers take precedence over environment variables.

Credential Header Environment Variable
Odoo URL X-Odoo-Url ODOO_URL
Database X-Odoo-Database ODOO_DATABASE
Username X-Odoo-Username ODOO_USERNAME
Password X-Odoo-Password ODOO_PASSWORD

If neither headers nor environment variables are set, the server returns a credential error.

Server bind address: Defaults to 0.0.0.0:8000. Override with HOST and PORT environment variables.

Note: If you override PORT, you must also update the Docker HEALTHCHECK to match the new port.

Security: Header Trust Model

godoo-mcp-server authenticates Odoo users via X-Odoo-Username and X-Odoo-Password request headers (or ODOO_USERNAME / ODOO_PASSWORD environment variables). This means any caller who can reach the server can impersonate any Odoo user by setting these headers.

This is intentional for self-hosted / trusted-network deployments. In production, you MUST deploy a header-stripping reverse proxy in front of the server that enforces identity. godoo-proxy is the SaaS-safe gateway for this role — it implements OAuth 2.1 / SSO and injects verified per-user credentials before forwarding to godoo-mcp-server.

If you expose godoo-mcp-server directly on a public network without a trusted proxy, any network peer gains full Odoo impersonation capability.

Running E2E tests locally

Prerequisites:

  • Docker (for the Odoo testcontainer)
  • claude CLI on PATH (Claude Code)
  • Claude auth (API key or active OAuth session)
  • Python 3.14 + uv

Command:

uv run pytest -m e2e -s -v

Cost warning: Each run makes a real, billable Claude API call. Keep the suite small and only run when needed.

The test skips automatically when Docker or the claude CLI is absent — this is a clean skip, not an error.

The default uv run pytest excludes e2e tests automatically via the not e2e addopts filter.

Metadata

Release files for godoo-mcp-server 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for godoo-mcp-server 0.1.0
File Size Uploaded Provenance Actions
godoo_mcp_server-0.1.0.tar.gz 18.0 kB Without provenance Details for godoo_mcp_server-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for godoo-mcp-server 0.1.0
File Interpreter ABI Platform Actions
godoo_mcp_server-0.1.0-py3-none-any.whl Python 3 none any Details for godoo_mcp_server-0.1.0-py3-none-any.whl

Total release size: 45.2 kB

Release files / godoo_mcp_server-0.1.0.tar.gz

Download URL godoo_mcp_server-0.1.0.tar.gz
Size 18.0 kB
Tags Source
SHA-256 checksum
How to use checksums
8f8f301badafb6d4f31ea39b561183c9f464ce945293897d9f0ca5df62fda66b
BLAKE2b-256 checksum
How to use checksums
457b866c8c27d2d488c26cbe4d04286660fb1a835a90ff5dba3d271d6d28d7a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / godoo_mcp_server-0.1.0-py3-none-any.whl

Download URL godoo_mcp_server-0.1.0-py3-none-any.whl
Size 27.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
226f8f3ce9a95c6f4c73d90c80b02e288b550f77ecd06d94ab805c7de25af3fc
BLAKE2b-256 checksum
How to use checksums
60f406084cc8e3ad3c08f75b175f41da43edec433ece2678be5b63927ea32e5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for godoo-mcp-server 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page