Token导航 LogoToken导航TokenDH.com
Odoo Model MCP logo
开发工具stdio官方级别未说明来源级核验

Odoo Model MCP

MCP Server

一个无需数据库连接即可暴露Odoo模型注册表(字段、继承、方法)的MCP服务器,适用于Odoo项目开发中的模型查询和分析。

工具数

8

提示词数

0

GitHub Stars

0

资源数

0
开发工具PythonClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

bemade

提供方

bemade

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install odoo-model-mcp

详细介绍

odoo模型mcp

公开Odoo模型注册表(字段、继承、方法)的MCP服务器 而不需要数据库连接。

将其指向任何Odoo项目目录,即可获得有关以下内容的即时、结构化的答案 模型、字段、方法重写链和继承图——由 奥多自己的 MetaModel 注册表已加载到内存中。

状态: 前阿尔法(0.1.0a1)。与奥多合作16-19。

运作原理

  1. MCP服务器 (此包)通过stdio接收工具调用。
  2. 它自动检测Odoo项目结构(Odoo-bin、插件路径、venv)。
  3. A. 持久工作者子流程 是在项目自己的Python中生成的

venv,加载完整的模型注册表一次(约4秒)。

  1. 后续查询通过Unix域套接字提供 1-15毫秒.
  2. 工人在10分钟不活动后自动关闭。

每个项目都有自己的独立工作进程,因此您可以使用多个 Odoo版本同时发布,没有冲突。

安装

# With uv (recommended)
uv tool install odoo-model-mcp

# With pip
pip install odoo-model-mcp

使用Claude代码

添加到您的 ~/.claude.json (全球)或项目 .claude/settings.local.json:

{
  "mcpServers": {
    "odoo-model-registry": {
      "type": "stdio",
      "command": "odoo-model-mcp",
      "args": []
    }
  }
}

如果安装了 uv 不在PATH上:

{
  "mcpServers": {
    "odoo-model-registry": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "--project", "/path/to/odoo-model-mcp", "odoo-model-mcp"]
    }
  }
}

工具

所有工具都接受 project_path 指向Odoo项目的根源。 从项目中自动检测插件路径和Odoo源位置 结构(或可以用覆盖 addons_paths).可以排除模块 按名称与 exclude_modules (当模块具有不可解析的Python时很有用 依赖关系)。

detect_project_info

在不加载注册表的情况下检测Odoo项目的结构。退货 odoo_path, addons_paths, python_bin,以及 odoo_version.

search_models

按名称或描述子字符串搜索模型。

search_models(project_path="/path/to/project", query="sale.order")

model_info

模型的完整元数据:所有字段(包括类型、计算方法、相关 字段、模块重写)、继承链、扩展模块(来自MRO)、, 以及装饰方法。

model_info(project_path="/path/to/project", model_name="sale.order")

field_info

单个字段的详细信息:类型、计算方法、依赖项、存储、索引、, 相关、组以及哪些模块定义或覆盖了它。

field_info(project_path="/path/to/project", model_name="sale.order", field_name="amount_total")

method_overrides

覆盖MRO中方法的链,包括源文件位置(文件 路径和行号)。

method_overrides(project_path="/path/to/project", model_name="sale.order", method_name="_compute_amounts")

model_graph

围绕模型的继承图:哪些模块扩展了它(相同 _name), 混种父母(不同 _name),代表团家长(_inherits),和孩子 继承自它的模型。

model_graph(project_path="/path/to/project", model_name="sale.order")

list_models

注册表中每个模型的轻量级列表(名称、描述、, 模块、字段计数、抽象/瞬态标志)。需要目录时使用 但不是按字段细节。

list_models(project_path="/path/to/project")

dump_registry

将整个注册表以JSONL格式批量导出到磁盘上的文件中。一个电话 取代了每款车型数千次往返;用于下游 管道(索引器、嵌入器、静态分析)。写入两条记录 类型:

  • {"type": "model", "data": {...model_info...}} --每个型号一个
  • {"type": "method_overrides", "model": "...", "method": "...", "overrides": [...]}

每个装饰方法一个,MRO链中的每个覆盖都有文件/行

dump_registry(project_path="/path/to/project", output_path="/tmp/registry.jsonl")

项目自动检测

服务器自动检测项目结构:

  • 臭气源:查找 odoo-binodoo/ Python包
  • 插件路径:解析 odoo.conf / .odoorc,或扫描目录

包含模块(带有 __manifest__.py)

  • Python venv:检查 .venv/, venv/, env/
  • Odoo版本:阅读自 .env (ODOO_VERSION=)或 odoo/release.py

建筑

Claude Code
    |
    | stdio (MCP protocol)
    v
odoo-model-mcp server (lightweight Python process)
    |
    | Unix domain socket (JSON lines)
    v
Worker process (project's own venv)
    - Loads Odoo registry via MetaModel._build_model()
    - Resolves full inheritance (MRO, __bases__, _build_model_attributes)
    - Serves queries from in-memory registry

发展

git clone https://github.com/bemade/odoo-model-mcp.git
cd odoo-model-mcp
uv sync
uv run pytest

许可证

仅限LGPL-3.0

目录标签

目录标签

开发工具PythonClaudeOdoo开发本地部署模型分析元数据查询

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP