Skip to main content
Glama

Odoo Documentation MCP Server (odoo-doc-mcp)

Model Context Protocol Odoo Multi-Version Python Version License Transport

The ultimate Model Context Protocol (MCP) server for All Odoo Versions (v15.0 to v19.0+). Connect your AI assistants (Cursor IDE, Claude Desktop, ChatGPT Web, Custom Web AI Chatbots, Windsurf) directly to live, official Odoo user and developer documentation in clean, LLM-optimized Markdown format.


๐Ÿ“Œ Table of Contents


Related MCP server: devdocs-mcp

โœจ Features & Highlights

  • ๐Ÿ”„ Universal Multi-Version Support (v15.0 - v19.0+): Seamlessly fetch documentation for any Odoo release version (15.0, 16.0, 17.0, 18.0, 19.0, or master).

  • ๐ŸŒ Web AI Chatbot Ready (ngrok & Cloudflare Tunnels): Includes step-by-step guides to expose local SSE endpoints to online cloud AI tools (ChatGPT Web, Custom AI Chatbots) over HTTPS.

  • ๐Ÿš€ Deep All-in-One Search (search_and_fetch_docs): Automatically searches the index AND fetches the FULL Markdown text of all matching articles in parallel.

  • ๐Ÿ“š Recursive Master Section Exporter (get_doc_section): Discovers all subpages in a documentation section (e.g. CRM, Accounting, Inventory, ORM, Views) and downloads them in parallel, merging everything into one master document.

  • ๐Ÿ“– 100% Official Live Odoo Docs: Dynamically fetches live content directly from https://www.odoo.com/documentation/. Zero stale static files.

  • ๐Ÿ”“ Full CORS Enabled: Built-in CORSMiddleware (Access-Control-Allow-Origin: *) for browser-based AI clients.

  • โšก Local Disk Caching & SQLite FTS5: Superfast full-text search with disk-cached Markdown responses.


๐ŸŒ Connecting Web AI Chatbots via Public Tunnel (ngrok / Cloudflare / localtunnel)

Web-based AI Chatbots (such as ChatGPT Web, Custom Web AI Agents, Cloud LLMs) run on external servers and cannot access http://localhost:8008/sse directly.

To connect an online AI Chatbot to your local MCP server, expose your server port using a secure HTTPS tunnel tool:

Method 1: Using ngrok (Recommended)

  1. Install ngrok (if not installed):

    curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc | sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null
    echo "deb https://ngrok-agent.s3.amazonaws.com buster main" | sudo tee /etc/apt/sources.list.d/ngrok.list
    sudo apt update && sudo apt install ngrok
  2. Start the Odoo MCP Server locally:

    python -m odoo_doc_mcp.server --transport sse --port 8008 --host 0.0.0.0
  3. Expose port 8008 with ngrok:

    ngrok http 8008
  4. Copy your Public HTTPS SSE URL: ngrok will generate a public URL like https://a1b2c3d4.ngrok-free.app. Your Public SSE URL to give to your AI Chatbot is:

    https://a1b2c3d4.ngrok-free.app/sse

Method 2: Using Cloudflare Tunnel (cloudflared - 100% Free)

  1. Install cloudflared:

    sudo wget -q https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
    sudo dpkg -i cloudflared-linux-amd64.deb
  2. Launch Cloudflare Tunnel:

    cloudflared tunnel --url http://localhost:8008
  3. Copy your TryCloudflare HTTPS SSE URL: Cloudflare will output a URL like https://your-tunnel-name.trycloudflare.com. Your Public SSE URL is:

    https://your-tunnel-name.trycloudflare.com/sse

Method 3: Using localtunnel (Node.js / npm)

npx localtunnel --port 8008

Your Public SSE URL will be: https://your-custom-subdomain.loca.lt/sse


๐Ÿ’ฌ Ready-to-Use Prompt Examples Library

Copy and paste these example prompts into your AI assistant:

๐Ÿ‘ค Non-Technical Business User Prompts

  • ๐Ÿ’ฌ "How do I track lost sales opportunities in Odoo CRM, and how can I generate a report to analyze why we lost them?"

  • ๐Ÿ’ฌ "What is the step-by-step process for recording vendor bills and matching them with bank payments in Odoo Accounting?"

  • ๐Ÿ’ฌ "How do I transfer stock between two different internal warehouses in Odoo Inventory?"

๐Ÿ‘” Odoo Functional Consultant Prompts

  • ๐Ÿ’ฌ "Using the Odoo Doc server for Odoo 19.0, explain how Chart of Accounts, Journals, and Tax Grids interact during invoice validation."

  • ๐Ÿ’ฌ "Explain the difference between Automated and Manual Inventory Valuation in Odoo 18.0 with real-world accounting entries."

๐Ÿ’ป Odoo Backend Developer Prompts

  • ๐Ÿ’ฌ "Fetch the Odoo ORM documentation (developer/reference/backend/orm.html) for Odoo 19.0 and give me examples of @api.depends, @api.constrains, and @api.onchange."

  • ๐Ÿ’ฌ "Search Odoo docs for model inheritance (_inherit vs _inherits) and explain how parent field delegation works."

๐ŸŽจ Odoo Frontend & View Developer Prompts

  • ๐Ÿ’ฌ "Using Odoo Doc MCP, search for XML View Syntax (developer/reference/user_interface/view_records.html) and explain list view <list> attributes and form view tab structures (<notebook>)."

  • ๐Ÿ’ฌ "How do I create a custom OWL component in Odoo 18.0 JavaScript framework?"

๐Ÿ”„ Odoo Version Migration Prompts

  • ๐Ÿ’ฌ "Search Odoo 19.0 docs for view changes and list view <list> tag deprecations compared to older tree view tags."


๐ŸŽฏ SEO Keywords & Supported Topics

๐Ÿ’ผ Odoo Functional Modules (v15.0 - v19.0)

  • Odoo Accounting & Invoicing: Chart of Accounts, Journals, Customer Invoices, Vendor Bills, Payment Gateways, Tax Returns, Bank Reconciliation, Year-End Closing, Financial Reports.

  • Odoo CRM & Sales: Lead Management, Opportunities Pipeline, Lead Mining, Predictive Lead Scoring, Quotations, Sales Teams.

  • Odoo Inventory & MRP: Warehouse Management, Stock Transfers, Product Tracking (Lots & Serials), Inventory Valuation, Reordering Rules, Manufacturing Orders (BOM).

  • Odoo POS, eCommerce, HR, Project, & Purchasing.

๐Ÿ’ป Odoo Technical & Developer Documentation

  • Odoo Server Framework 101: Module Structure, Manifest Files (__manifest__.py).

  • Odoo ORM Reference: Models (models.Model), Fields (Char, Many2one, One2many, Many2many), Compute Methods, SQL Constraints.

  • Odoo UI Views Syntax: List Views (<list>), Form Views (<form>, <sheet>, <group>), Search Views (<search>, <filter>), Kanban Views, Pivot Views.

  • Domains & Security: Domain criteria expressions ([('state', '=', 'posted')]), Record Rules (ir.rule), Access Rights (ir.model.access.csv).

  • JavaScript & OWL Framework: OWL Components, Web Client, JS Views, Widgets, Controllers.


๐Ÿ› ๏ธ Installation & Setup Guide

1. Prerequisites

  • Python 3.10+ (Python 3.12 recommended)

  • pip and virtualenv

2. Set Up Virtual Environment

cd odoo-doc-mcp

# Create virtual environment if not created
python3 -m venv .venv

# Activate virtual environment
source .venv/bin/activate

# Install dependencies
pip install -e .

๐Ÿš€ Running the MCP Server

Local HTTP / SSE Server Mode

source .venv/bin/activate
python -m odoo_doc_mcp.server --transport sse --port 8008 --host 0.0.0.0

STDIO Transport Mode (Desktop AI Apps)

source .venv/bin/activate
python -m odoo_doc_mcp.server --transport stdio

๐Ÿค– AI Client Configuration (Cursor, Claude, ChatGPT)

1. Cursor IDE (.cursor/mcp.json)

{
  "mcpServers": {
    "odoo-doc": {
      "url": "http://localhost:8008/sse"
    }
  }
}

2. Online AI Chatbot / Cloud Agent (via ngrok)

{
  "mcpServers": {
    "odoo-doc": {
      "url": "https://a1b2c3d4.ngrok-free.app/sse"
    }
  }
}

3. Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "odoo-doc": {
      "command": "/path/to/odoo-doc-mcp/.venv/bin/python",
      "args": [
        "-m",
        "odoo_doc_mcp.server",
        "--transport",
        "stdio"
      ]
    }
  }
}

๐Ÿ› ๏ธ MCP Tools Reference

Tool Name

Parameters

Description

search_and_fetch_docs

query, version='18.0', max_results=3

Deep All-in-One Search: Searches index AND auto-fetches full Markdown text for all matches in parallel.

get_doc_section

path, version='18.0', recursive=True, max_pages=25

Recursive Master Exporter: Downloads an entire section and all child subpages in parallel into one document.

get_complete_docs

topic, version='18.0', max_pages=30

Export complete documentation for an entire module domain (CRM, Accounting, Sales, Inventory, ORM).

get_learning_module

topic, version='18.0'

Generates a structured learning module with official unedited documentation text.

get_doc_page

path, version='18.0'

Fetch and convert a single Odoo documentation page into clean Markdown.

search_odoo_docs

query, version='18.0', category, max_results=3

Search documentation topics by keyword with full content auto-fetching.

list_doc_topics

version='18.0', category

Browse available Odoo documentation topics and category hierarchy.

refresh_index

version='18.0'

Re-fetch the live Table of Contents HTML and update the SQLite search index.


๐Ÿงช Running Automated Tests

source .venv/bin/activate
pytest tests/

๐Ÿ—๏ธ Project Architecture

odoo-doc-mcp/
โ”œโ”€โ”€ odoo_doc_mcp/
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ”œโ”€โ”€ server.py        # FastMCP & Universal Starlette HTTP/SSE Controller
โ”‚   โ”œโ”€โ”€ fetcher.py       # Async HTTP fetcher, parallel section crawler & caching
โ”‚   โ”œโ”€โ”€ parser.py        # HTML to Markdown converter & TOC link extractor
โ”‚   โ”œโ”€โ”€ indexer.py       # SQLite FTS5 full-text search index manager
โ”‚   โ””โ”€โ”€ seed_data.py     # Fallback offline navigation TOC seed
โ”œโ”€โ”€ tests/
โ”‚   โ””โ”€โ”€ test_server.py   # Pytest test suite
โ”œโ”€โ”€ pyproject.toml       # Project metadata & dependencies
โ”œโ”€โ”€ README.md            # Master documentation & SEO guide
โ””โ”€โ”€ .gitignore          # Repository ignore rules

๐Ÿท๏ธ Tags & Keywords

#odoo #mcp #model-context-protocol #odoo15 #odoo16 #odoo17 #odoo18 #odoo19 #odoo-documentation #cursor-ide #claude-desktop #chatgpt-mcp #ngrok #cloudflare-tunnel #python #ai-agent #pair-programming #odoo-developer #odoo-accounting #odoo-crm

F
license - not found
-
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

View all related MCP servers

Related MCP Connectors

  • MCP server for AgentDocs (agentdocs.eu): read, search, write, comment on & share Markdown docs.

  • Augments MCP Server - A comprehensive framework documentation provider for Claude Code

  • MCP server for accessing curated awesome list documentation

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/odoo-fun/odoo-doc-mcp'

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