Skip to main content
Glama
fabiancasta

My Awesome MCP Server

by fabiancasta

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ODOO_DBYesThe Odoo database name.
DATA_DIRNoDirectory for storing data, including the audit database. Defaults to a platform-specific location.
ODOO_URLYesThe URL of the Odoo server.
ODOO_API_KEYYesThe Odoo API key for authentication.
ODOO_USERNAMEYesThe Odoo username (email) for the bot.
ALLOWED_MODELSNoComma-separated list of allowed models (e.g., 'res.partner,sale.order'). Default deny: an empty list permits nothing.
AUDIT_HMAC_KEYNoHMAC key for the audit log hash chain. If set, protects against tampering even by someone with database file access.
ODOO_ENVIRONMENTNoThe environment label for the Odoo profile. Defaults to 'production', which is read-only. Set to 'development' or 'staging' to allow writes.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_recordA

Read one or more records by id.

search_recordsC

Search records with an Odoo domain and return the matching rows.

create_recordC

Create a record.

update_recordC

Update one or more existing records.

delete_recordB

Delete one or more records. Irreversible.

execute_methodB

Call a public model method, e.g. sale.order.action_confirm. Restricted by policy.

call_onchangeA

Simulate a form change and return the values Odoo would compute. Saves nothing.

get_model_fieldsB

Field definitions of a model (type, relation, required...).

get_field_namesB

Compact list of a model's field names with type and label.

model_infoC

Model description, Odoo access rights and what this server's policy permits.

list_modelsB

List the models this server allows access to, optionally filtered.

name_searchA

Find records by display name — the quick way to resolve a name to an id.

search_countC

Count records matching a domain.

get_reportB

Render a PDF report (e.g. an invoice) for records. Returns base64.

upload_attachmentC

Attach a file (base64) to a record.

get_attachmentB

Download an attachment as base64.

cache_statsC

Metadata cache statistics.

server_statusB

Server, active Odoo profile and governance status.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 18 tools

Disambiguation4/5

Most tools target clearly distinct actions (CRUD, search, metadata, attachments, reports). The main overlap is get_model_fields vs get_field_names (full field definitions vs compact list), and there are three search variants (search_records, name_search, search_count), though their descriptions do clarify the boundaries.

Naming Consistency4/5

Strong, predictable verb_noun snake_case pattern (get_record, search_records, create_record, update_record, delete_record, execute_method, etc.). Minor deviation: a few noun-only names (model_info, server_status, cache_stats) break the verb-prefix pattern but remain readable and conventional for status/info tools.

Tool Count4/5

18 tools is on the heavier side but each maps to a real capability of an Odoo ORM surface (CRUD, search, metadata introspection, method execution, reports, attachments). Slightly over-scoped rather than bloated, with no obviously redundant tools.

Completeness5/5

Covers the full lifecycle: create/read/update/delete, multiple search modes, model and field introspection, method calling, onchange simulation, PDF reports, and attachment upload/download, plus status and cache tooling. No obvious dead ends for the domain.

Maintenance

ActivityMaintained
ResponsivenessNo issues