nsmcp::ToolRegistry method call (public)
<instance of nsmcp::ToolRegistry> call context authorizer name \ arguments
Defined in /usr/local/ns/tcl/nsmcp/lib/tools.tcl
- Parameters:
- context (required)
- authorizer (required)
- name (required)
- arguments (required)
- Testcases:
- No testcase defined.
Source code: if {![dict exists ${:tools} $name]} { return -code error -errorcode {NSMCP RPC -32602} "Unknown tool" } set tool [dict get ${:tools} $name] $authorizer require $context [$tool permission] $tool validate $arguments if {[catch {$tool execute $context $arguments} result options]} { if {[lrange [dict get $options -errorcode] 0 1] eq {NSMCP RPC}} { return -options $options $result } ns_log error "nsmcp: tool execution failed: $name" return [list {} object {content array {0 object {type string text text string {Tool execution failed; consult the server log.}}} isError boolean true}] } # Both structured output and text for clients without structured support. return [list {} object [list structuredContent object [lindex $result 2] content array [list 0 object [list type string text text string [ns_json value -- $result]]] isError boolean false]]XQL Not present: Generic, PostgreSQL, Oracle
![[i]](/resources/acs-subsite/ZoomIn16.gif)