Skip to main content
Glama

get_branch_settings

Read-onlyIdempotent

Reads a project branch’s settings—commit behavior, build modules/tests, Odoo version and revision, OS, and custom domains—to verify configuration before builds or changes.

Instructions

Read the settings of a branch of a project: what a new commit does, which modules and tests a new build runs, its Odoo version and revision, its operating system and its custom domains.

Returns: the branch with its stage, and its settings; the new build options apply to a development branch only. Touches: reads only Bounds: three requests to Odoo.sh.

Input Schema

NameRequiredDescriptionDefault
branchYes
projectYes

Output Schema

NameRequiredDescriptionDefault
branchYes
settingsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.8.0

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable operational context beyond annotations: a concrete rate bound ('three requests to Odoo.sh'), a return summary, and a development-branch caveat, though 'Touches: reads only' is redundant with readOnlyHint.

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 description is front-loaded with purpose and uses labeled sections ('Returns:', 'Touches:', 'Bounds:') that make it easy to scan. It is mostly efficient, though 'Touches: reads only' duplicates the readOnlyHint annotation and could be omitted without losing information.

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?

An output schema exists, so the description needn't explain return values, but it does so anyway while omitting parameter identifier guidance despite 0% schema coverage. The rate limit and branch-type caveat are useful additions, but the lack of project/branch format guidance leaves a meaningful gap for invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must carry the burden for the two required parameters. It only mentions 'project' and 'branch' in prose without clarifying identifier formats, whether names or IDs are expected, or any constraints—leaving the parameter meaning essentially as bare property names.

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?

The description states a specific verb and resource: 'Read the settings of a branch of a project,' and enumerates the settings (commit behavior, build modules/tests, Odoo version, OS, domains). This is clear enough to distinguish branch-level settings from project-level settings, but it does not explicitly name or contrast with sibling tools such as get_project_settings or list_branches.

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

Usage Guidelines2/5

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

The description offers a scope caveat ('the new build options apply to a development branch only') but no explicit guidance on when to choose this tool versus alternatives like get_project_settings or list_branches. An agent must infer usage from the tool name and purpose alone.

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