docs: update README to v0.3.0 — add eLearning module

This commit is contained in:
2026-05-28 14:49:07 -05:00
parent cda9b388cf
commit 3dbc4882a3
+25 -3
View File
@@ -2,7 +2,7 @@
MPM Odoo ERP plugin for Claude Cowork — connects to mpmedia.odoo.com via XML-RPC with proxy-aware transport.
**Version:** 0.2.0
**Version:** 0.3.0
**Author:** Message Point Media
**Repo:** https://git.mpm.to/mpm/odoo-mpm-plugin
**CoWork Project:** CW-003 — Odoo V19 MCP Bridge
@@ -11,7 +11,7 @@ MPM Odoo ERP plugin for Claude Cowork — connects to mpmedia.odoo.com via XML-R
## Overview
This plugin bridges Claude Cowork to MPM's Odoo ERP instance at mpmedia.odoo.com. It runs a local MCP server (`odoo-mpm`) via `uv` that exposes read/write access across 12 modules: Products, Knowledge (with Templates), Contacts, Sales, CRM, Projects, Helpdesk, Purchase, Inventory, Employees, and Utilities.
This plugin bridges Claude Cowork to MPM's Odoo ERP instance at mpmedia.odoo.com. It runs a local MCP server (`odoo-mpm`) via `uv` that exposes read/write access across 12 modules: Products, Knowledge (with Templates), Contacts, Sales, CRM, Projects, Helpdesk, Purchase, Inventory, Employees, eLearning, and Utilities.
Credentials are personal — each user authenticates with their own Odoo API key, stored securely in the OS keystore (macOS Keychain / Windows Credential Manager / Linux Secret Service). Keys are never written to disk.
@@ -21,7 +21,7 @@ Credentials are personal — each user authenticates with their own Odoo API key
| Skill | What It Does |
|---|---|
| `odoo` | Full read/write access to MPM's Odoo instance. Triggers on: "in Odoo", "our products", "the knowledge base", "find a contact", "sales order", "opportunity", "project tasks", "helpdesk ticket", "purchase order", "stock", "inventory", "employee", "what stage is", "create a task", "update the ticket", "set icon", "article icon", "emoji icon", "cancel quotation", "cancel quote", "archive", "mark lost", "bulk update", "how many records", "count of", "stage id for", "resolve stage", "search with filters", "filter by", "lost reasons" |
| `odoo` | Full read/write access to MPM's Odoo instance. Triggers on: "in Odoo", "our products", "the knowledge base", "find a contact", "sales order", "opportunity", "project tasks", "helpdesk ticket", "purchase order", "stock", "inventory", "employee", "what stage is", "create a task", "update the ticket", "cancel quotation", "cancel quote", "archive", "mark lost", "bulk update", "how many records", "count of", "stage id for", "resolve stage", "search with filters", "filter by", "lost reasons", "course", "training", "elearning", "lesson", "slide", "quiz", "enroll", "enrollment", "publish course", "create course", "add lesson" |
---
@@ -41,11 +41,33 @@ Credentials are personal — each user authenticates with their own Odoo API key
| **Purchase** | `search_purchase_orders`, `get_purchase_order` |
| **Inventory** | `search_inventory`, `get_stock_moves`, `list_internal_locations` |
| **Employees** | `search_employees`, `get_employee`, `list_departments` |
| **eLearning — Courses** | `search_courses`, `get_course`, `create_course`, `update_course`, `publish_course` |
| **eLearning — Slides** | `list_course_slides`, `get_slide`, `create_slide`, `update_slide`, `publish_slide`, `reorder_slides` |
| **eLearning — Quiz** | `get_quiz_questions`, `add_quiz_question`, `generate_quiz` |
| **eLearning — Enrollment** | `get_course_enrollment`, `enroll_in_course`, `bulk_enroll`, `send_course_invitation` |
| **eLearning — Media** | `set_course_cover`, `set_slide_cover`, `link_drive_document`, `add_course_resource` |
| **Utilities** | `odoo_search`, `odoo_get_record`, `odoo_search_read`, `get_record_count`, `bulk_update_records`, `archive_records`, `get_stage_ids`, `call_odoo_method` |
### Knowledge Article Icon Support
`create_knowledge_article`, `update_knowledge_article`, and `get_knowledge_article` all support an `icon` parameter — a Unicode emoji (e.g. `"⚙️"`, `"🔌"`, `"🖥️"`) that sets the article's icon in the KB tree. Browse emojis at: **https://emojipedia.org**
### eLearning Module (v0.3.0)
22 tools across 5 groups for building and managing internal, reseller, and end-client courses.
**Slide types:** `pdf` (Drive link), `youtube_video`, `vimeo_video`, `infographic`, `webpage` (native HTML article)
**Google Drive policy:** All image and document operations use the Google Workspace MCP connector when available. The skill never asks the user to construct or copy Drive URLs unless the connector is absent.
**Audience tiers** via course settings:
- Internal employees: `visibility=members`, `enroll=invite`, `enroll_group_names=['Internal Users']`
- Resellers: `visibility=connected`, `enroll=public`
- End-clients: `visibility=public`, `enroll=public`
**Onboarding hook:** `enroll_in_course` and `bulk_enroll` are designed to be called by the project management plugin to automatically enroll new customers in courses on contract/onboarding events.
**Quiz generation:** Read course content → Claude generates questions → call `generate_quiz` to write all at once.
### Sales Cancellation Safety Guard
`cancel_sale_orders` and `cancel_and_archive_quotations` **only operate on orders in Quotation (draft) or Quotation Sent (sent) state**. Both tools pre-validate all IDs and raise a named error listing any orders in other states before touching anything. Confirmed Sale Orders cannot be cancelled via Claude.