Skip to main content
Glama
pks0204

Odoo Developer Assistant MCP

by pks0204

verify_odoo_live_metadata

Verify whether Odoo models, fields, and external XML IDs exist in a live database via read-only XML-RPC, so you can confirm metadata before relying on it.

Instructions

Connect to a running Odoo instance via read-only XML-RPC to dynamically verify whether models, model fields, and external XML IDs exist in the active database.

Args: url: URL of the Odoo instance (e.g. 'http://localhost:8069' or 'https://myodoo.example.com'). db: Name of the Odoo database. username: User login name / email. password: User password or API key. models_to_check: Optional list of model names to verify (e.g. ['sale.order', 'res.partner']). fields_to_check: Optional mapping of model names to lists of field names to verify (e.g. {'sale.order': ['partner_id', 'custom_ref']}). xml_ids_to_check: Optional list of external XML IDs to verify (e.g. ['base.group_user', 'sale.action_orders']). timeout: Network timeout in seconds (default: 10).

Input Schema

NameRequiredDescriptionDefault
dbYes
urlYes
timeoutNo
passwordYes
usernameYes
fields_to_checkNo
models_to_checkNo
xml_ids_to_checkNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description does useful work by declaring the transport is read-only XML-RPC, that credentials are required, and that the timeout defaults to 10 seconds. It does not say what happens when a model/field is missing (error vs. reported as absent), nor what the response looks like, which matters for a verification call whose whole value is its verdict.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The opening sentence front-loads the core action and the Args block is scannable with no filler. Slightly verbose in the example-heavy parameter lines, but every example disambiguates a format the schema leaves opaque.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description must characterize the return value and it does not—an agent cannot tell whether it receives booleans per item, a list of missing IDs, or raises on failure. Inputs are fully covered; the result contract is the remaining gap for an 8-parameter verification tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the Args block carries the full load and does it well: each of the 8 parameters gets meaning, format, and concrete examples (URL shapes, model names, the fields mapping structure, XML ID samples, timeout default). An agent could construct a correct call from this alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: connect to a live Odoo instance over read-only XML-RPC and verify models, fields, and external XML IDs. That is clearly distinct from the static-analysis siblings, though it never names them explicitly to reinforce the split.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'running Odoo instance' and 'dynamically verify' imply this is for live-environment checks rather than static file inspection, but there is no explicit when-to-use guidance, no exclusions, and no reference to the sibling tools that analyze code statically.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.