call_procedure
Execute Oracle PL/SQL procedures, functions, or package subprograms with typed IN/OUT/INOUT arguments, returning scalar and SYS_REFCURSOR row-array results.
Instructions
Execute a PL/SQL procedure, function or package subprogram with typed arguments. Supports IN/OUT/INOUT scalar parameters and function return values via typed binds (SYS_REFCURSOR OUT/return arguments are fetched and returned as row arrays). Pass args as a JSON array: [{"name":"P","direction":"IN","dataType":"NUMBER","value":1}]. PL/SQL BOOLEAN/RECORD/TABLE/VARRAY/OBJECT types are rejected with guidance to create a scalar wrapper. Requires GRANT EXECUTE on the target object. Auto-commits like execute_dml.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| args | Yes | Arguments as a JSON array: [{"name":"P","direction":"IN|OUT|INOUT","dataType":"NUMBER","value":1}]. | |
| name | Yes | Object name; optionally qualified as PKG.PROC for a package subprogram. | |
| schema | No | Schema (owner) of the object. Optional — defaults to the server's current schema; omit rather than guess. | |
| isFunction | No | Set true if the object is a function (registers a return slot and populates returnValue). | |
| returnType | No | Oracle return type for functions (e.g. NUMBER, VARCHAR2, REF CURSOR). Ignored for procedures. |