Skip to main content
Glama
Alberto-Cabale

odoo-mcp-bridge

Odoo ↔ Claude MCP Bridge — deployment guide

This small project connects your Odoo instance (via-italia.odoo.com) to Claude, so I can read/write directly in Odoo (inventory, invoices, customers, follow-ups) without you having to click through the interface.

It runs continuously on a cloud host (Render, free to start). Claude connects to it via proper authentication (OAuth): the first time, a login page asks for your secret token; afterwards Claude stays connected automatically, and the secret never appears in a URL.

No Git command line needed: everything happens in the browser.


Step 0 — what you need before starting

  • The Odoo API key generated in via-italia.odoo.com (My Preferences → Account Security → New API Key). Keep it handy; you'll paste it in Step 3.

  • A secret token to protect access. Generate one now (only share it with Render, nowhere else):

    • On Mac: open Terminal and type openssl rand -hex 24, copy the result.

    • Otherwise: any password generator producing ~40 random characters works.

Related MCP server: odoo-mcp-server

Step 1 — put these files on GitHub (without Git)

  1. Go to github.com and create a free account if you don't have one.

  2. Click New repository. Name: odoo-mcp-bridge (or whatever you want). Leave it Public (required for Render deployment without linking an account). Don't check anything else. Create repository.

  3. On the new empty repository page, click uploading an existing file.

  4. Drag and drop the 6 files from this folder (Dockerfile, proxy.py, oauth_provider.py, requirements.txt, start.sh, README.md) into the drop zone.

  5. Commit changes.

Note the repository URL, like https://github.com/VOTRE-COMPTE/odoo-mcp-bridge.

Step 2 — create the service on Render

  1. Go to render.com and create a free account.

  2. New +Web Service.

  3. Choose Public Git Repository and paste the GitHub repository URL from Step 1. Connect.

  4. Service name: via-italia-odoo-mcp (or something else).

  5. Render detects the Dockerfile automatically — leave the Docker mode.

  6. Instance type: Free to start (enough for testing).

Step 3 — environment variables

Still on this creation page, expand AdvancedAdd Environment Variable, and add:

Key

Value

BRIDGE_SECRET

the token generated in Step 0

ODOO_URL

https://via-italia.odoo.com

ODOO_API_KEY

the Odoo API key generated in Step 0

ODOO_YOLO

read to start (read-only, no risk)

(ODOO_DB is not needed; Odoo detects it automatically.)

Click Create Web Service. The first deployment takes 2-3 minutes — you'll see the build logs scroll by.

Step 4 — verify it's running

Once the deployment is marked "Live", your service has an address like https://via-italia-odoo-mcp.onrender.com.

First test https://via-italia-odoo-mcp.onrender.com/healthz in a browser: you should see ok.

Your connector address (the one to give to Claude) is simply:

https://via-italia-odoo-mcp.onrender.com/mcp

No token in that URL — it can be shared safely; the protection happens in the next step.

Step 5 — connect Claude

In Claude: Customize → Connectors → "+" → Add custom connector, paste the URL from Step 4, Add, then click Connect.

A login page opens and asks for your BRIDGE_SECRET (the token generated in Step 0) — enter it and validate. Claude then stays connected; you won't have to do it again unless you redeploy the service (which clears the in-memory session).

Then come back to the conversation with Claude and ask it to verify the connection (for example: "list my latest Odoo quotes").

Step 6 — switch to read/write

Once reading works and you're comfortable, go back to Render → your service → Environment, change ODOO_YOLO from read to true, and redeploy (Render does it automatically after a variable change). Claude will then also be able to create invoices, update inventory, etc. — only enable this when you're ready for it to actually write to Odoo.

Known limitations

  • Render's Free plan puts the service to sleep after 15 minutes without traffic: the first request after a pause takes 30-60 seconds while it wakes up. For smoother daily use, a paid plan (~$7/month) removes this sleep.

  • Sessions (issued OAuth tokens) are kept in memory by the service, not on disk: a redeploy or restart clears them, and you'll need to do "Connect" again on the Claude side (just retype the BRIDGE_SECRET, nothing more).

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with Odoo ERP systems through 17+ business tools covering sales, purchasing, inventory, and accounting operations. Supports both Claude Desktop integration and web deployment with dual transport modes.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to interact with Odoo ERP to perform sales tasks such as searching clients and products, and creating and confirming quotations via the MCP protocol.
    2
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Connects Claude Desktop to Odoo ERP via JSON-2 API for searching invoices, creating sales orders, checking customer balances, and managing webhooks.

View all related MCP servers

Related MCP Connectors

  • Odoo ERP for AI agents: hosted OAuth endpoint, gated writes, one endpoint for every instance.

  • Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.

  • Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Alberto-Cabale/odoo-mcp-bridge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server