CtrlK
BlogDocsLog inGet started
Tessl Logo

odoo-rpc-api

Expert on Odoo's external JSON-RPC and XML-RPC APIs. Covers authentication, model calls, record CRUD, and real-world integration examples in Python, JavaScript, and curl.

56

Quality

63%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills/skills/odoo-rpc-api/SKILL.md

The canonical home for this skill is odoo-rpc-api in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

57%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The skill provides solid, executable Python XML-RPC examples and a useful curl JSON-RPC example, making it a decent starting point for Odoo API integration. However, it falls short of its stated scope (missing JavaScript examples, no update/delete CRUD operations), includes unnecessary meta-sections (When to Use, How It Works), and lacks error handling/validation examples that are critical for production API integrations.

Suggestions

Remove the 'When to Use This Skill' and 'How It Works' sections—they consume tokens without adding actionable value for Claude.

Add update (write) and delete (unlink) examples to fulfill the CRUD promise, and include at least one JavaScript example since the description claims JS coverage.

Add an error handling example showing how to catch authentication failures, connection errors, and invalid responses with concrete code rather than just mentioning retry logic in best practices.

Include a validation step after create/write operations (e.g., read-back verification) to improve workflow clarity for data-modifying operations.

DimensionReasoningScore

Conciseness

The 'When to Use This Skill' and 'How It Works' sections add little value—Claude doesn't need to be told when to use a skill or how activation works. The 'Overview' paragraph also explains what RPC is unnecessarily. The code examples themselves are efficient, but the surrounding prose could be significantly trimmed.

3 / 5

Actionability

Provides executable, copy-paste ready code for authentication, search_read, create, and curl JSON-RPC calls. Minor gaps: no update/delete examples despite the description promising full CRUD, no JavaScript example despite claiming coverage, and the curl example lacks authentication context (session cookie or API key header). Still mostly concrete and actionable.

4 / 5

Workflow Clarity

The Python XML-RPC example has a clear two-step sequence (authenticate then call models), but there are no validation checkpoints or error handling examples. For an API integration skill involving credential handling and network calls, the absence of error checking, response validation, or retry logic in the examples (despite mentioning retry in best practices) leaves workflow gaps.

3 / 5

Progressive Disclosure

The content is reasonably structured with clear sections (Overview, Examples, Best Practices, Limitations), but everything is inlined in a single file with no references to supporting documents. The skill promises Python, JavaScript, and curl coverage but only delivers Python and curl inline, suggesting content that could benefit from separate reference files for each language or for advanced topics like error handling patterns.

3 / 5

Total

13

/

20

Passed

Description

70%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is specific and distinctive, clearly identifying the Odoo external API domain with concrete capabilities and language coverage. Its main weakness is the absence of an explicit 'Use when...' clause, which would help Claude know exactly when to select this skill. Trigger term coverage is good but could include a few more natural user phrases.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user asks about connecting to Odoo, calling Odoo APIs, or integrating external systems with Odoo via RPC.'

Include additional natural trigger terms such as 'Odoo API', 'external integration', 'xmlrpc/2/object', 'connect to Odoo', or 'Odoo web service' to improve keyword coverage.

DimensionReasoningScore

Specificity

Lists several specific actions: authentication, model calls, record CRUD, and integration examples across multiple languages. Minor gaps—doesn't mention specific operations like search_read, workflow triggers, or report generation.

4 / 5

Completeness

The 'what' is clearly stated (covers authentication, model calls, CRUD, integration examples), but there is no explicit 'when' clause. The description lacks a 'Use when...' trigger phrase, which caps this dimension at 3 per the rubric guidelines.

3 / 5

Trigger Term Quality

Includes strong natural keywords like 'JSON-RPC', 'XML-RPC', 'Odoo', 'CRUD', 'Python', 'JavaScript', 'curl', and 'authentication'. Missing some natural user phrases like 'Odoo API', 'external API', 'ORM', 'xmlrpc/2/object', or 'connect to Odoo'.

4 / 5

Distinctiveness Conflict Risk

Highly distinctive—targets a very specific niche (Odoo's external RPC APIs) with clear domain-specific terms like 'JSON-RPC', 'XML-RPC', and 'Odoo'. Minimal risk of conflicting with other skills.

5 / 5

Total

16

/

20

Passed

Validation

90%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-Skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.