ppm_change_request_reject
Reject a change request by providing a mandatory reason. Initiates the reject wizard to process the rejection.
Instructions
Reject a Change Request with a required reason (runs the reject wizard).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cr_id | Yes | ||
| reason | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/qod_ppm_mcp/server.py:183-192 (handler)The handler function for ppm_change_request_reject. It creates a reject wizard record with the given reason, confirms the rejection via action_confirm_reject, and returns the updated Change Request state.
@mcp.tool() def ppm_change_request_reject(cr_id: int, reason: str) -> dict[str, Any]: """Reject a Change Request with a required reason (runs the reject wizard).""" wizard_id = client().execute_kw( "ppm.change.request.reject.wizard", "create", [{"change_request_id": cr_id, "reason": reason}], ) client().call_action("ppm.change.request.reject.wizard", "action_confirm_reject", [wizard_id]) return _read_state("ppm.change.request", cr_id, _CR_FIELDS) - src/qod_ppm_mcp/server.py:159-159 (schema)The schema fields read from the change request after rejection (name, state, project_id, change_type, priority, initiator_id).
_CR_FIELDS = ["name", "state", "project_id", "change_type", "priority", "initiator_id"] - src/qod_ppm_mcp/server.py:182-183 (registration)Registration of the tool via the @mcp.tool() decorator on the ppm_change_request_reject function.
@mcp.tool()