qod-ppm-odoo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ODOO_DB | No | The name of the Odoo database | |
| ODOO_URL | No | The URL of the Odoo server, e.g., https://your-odoo.example.com | |
| ODOO_API_KEY | No | The API key for the Odoo user (preferred over password) | |
| ODOO_PASSWORD | No | The password for the Odoo user (alternative to API key) | |
| ODOO_USERNAME | No | The username for the Odoo service user, e.g., ppm-service@example.com | |
| QOD_PPM_MCP_HOST | No | The host for HTTP transport, e.g., 0.0.0.0 | 0.0.0.0 |
| QOD_PPM_MCP_PORT | No | The port for HTTP transport, e.g., 8765 | 8765 |
| QOD_PPM_MCP_TRANSPORT | No | The transport mode for the MCP server, e.g., 'http' for remote access | stdio |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ppm_milestone_startB | Transition a milestone from 'planned' to 'in_progress'. |
| ppm_milestone_achieveC | Mark a milestone as achieved; records today as the actual date. |
| ppm_milestone_missC | Mark a milestone as missed. |
| ppm_milestone_cancelC | Cancel a milestone. |
| ppm_milestone_reopenB | Reopen a milestone back to 'planned'. |
| ppm_status_report_generateA | Run the Status Report wizard for a project. The wizard auto-populates RAG, budget, risks, milestones from project data
and creates a Args:
project_id: Returns: dict with the created status report id and summary fields. |
| ppm_status_report_publishC | Publish a draft status report. |
| ppm_status_report_reset_draftB | Revert a published status report back to draft. |
| ppm_status_report_print_urlA | Return the Odoo URL for the PDF render of a status report. Odoo returns a report action; the caller fetches the PDF via that URL using the same credentials. |
| ppm_change_request_submitB | Submit a draft Change Request for review; assigns a sequence number. |
| ppm_change_request_start_reviewB | Start review of a submitted Change Request. |
| ppm_change_request_approveB | Approve a Change Request under review; creates a baseline snapshot. |
| ppm_change_request_rejectB | Reject a Change Request with a required reason (runs the reject wizard). |
| ppm_change_request_reset_draftB | Return a submitted or rejected Change Request to draft. |
| ppm_risk_start_analysisB | Transition a risk from 'identified' to 'analyzing'. |
| ppm_risk_start_mitigationC | Transition a risk to 'mitigating'. |
| ppm_risk_start_monitoringC | Transition a risk to 'monitoring'. |
| ppm_risk_mark_occurredC | Mark a risk as occurred. |
| ppm_risk_closeC | Close a risk; sets date_closed. |
| ppm_risk_reopenC | Reopen a closed risk back to 'identified'. |
| ppm_risk_move_in_matrixA | Move a risk in the P×I matrix. Both probability and impact are integers 1–5 (matching the selection keys).
The server recomputes |
| ppm_issue_assignC | Move an issue from 'new' to 'assigned'. |
| ppm_issue_startB | Move an issue to 'in_progress'. |
| ppm_issue_resolveC | Resolve an issue; sets date_resolved. |
| ppm_issue_escalateC | Escalate an issue to management. |
| ppm_role_activateB | Activate a draft role assignment (syncs the security group). |
| ppm_role_approve_and_activateC | Approve and activate in one step. |
| ppm_role_revokeB | Revoke a role assignment; removes the user from the security group. |
| ppm_role_reset_draftC | Return a role assignment to draft. |
| ppm_export_budgetA | Export budget lines to XLSX. Returns the download URL action. At least one of |
| ppm_export_risksB | Export the risk register to XLSX.
|
| ppm_export_resourcesB | Export resource allocations to XLSX. |
| ppm_create_project_from_templateB | Clone a project template and attach it to a customer (res.partner). Returns the new project id, name, portfolio_id, and program_id. |
| ppm_pingA | Verify the MCP server can authenticate to Odoo and hit the PPM models. Returns {ok, uid, portfolios, programs, projects, risks} with counts. |
| ppm_list_action_toolsA | List every PPM action/wizard tool this server exposes, with a one-line description. Useful when Claude is deciding whether to call a custom tool or fall back
to the generic Odoo MCP's |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/wethti/qod-ppm-odoo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server