Function: claude-code-ide-mcp--build-tool-schemas

claude-code-ide-mcp--build-tool-schemas is a natively compiled function defined in claude-code-ide-mcp-handlers.el.

Signature

(claude-code-ide-mcp--build-tool-schemas)

Documentation

Build the tool schemas, conditionally including ediff tools.

Source Code

;; Defined in /nix/store/yjvbhwl7p6zrbw9xlnni7y4hra8sa3pl-emacs-packages-deps/share/emacs/site-lisp/claude-code-ide-mcp-handlers.el
(defun claude-code-ide-mcp--build-tool-schemas ()
  "Build the tool schemas, conditionally including ediff tools."
  `(("openFile" . ((type . "object")
                   (properties . ((filePath . ((type . "string")
                                               (description . "Path to the file to open")))
                                  (startLine . ((type . "integer")
                                                (description . "Start line for selection")))
                                  (endLine . ((type . "integer")
                                              (description . "End line for selection")))
                                  (startText . ((type . "string")
                                                (description . "Start text pattern for selection (takes precedence over line numbers)")))
                                  (endText . ((type . "string")
                                              (description . "End text pattern for selection")))))
                   (required . ["filePath"])))
    ("getDiagnostics" . ((type . "object")
                         (properties . ((uri . ((type . "string")
                                                (description . "Optional file URI to get diagnostics for. If not provided, gets diagnostics for all files.")))))
                         (required . [])))
    ("close_tab" . ((type . "object")
                    (properties . ((path . ((type . "string")
                                            (description . "Path to the file to close")))
                                   (tab_name . ((type . "string")
                                                (description . "Name of the tab to close")))))
                    (required . [])))
    ,@(when (bound-and-true-p claude-code-ide-use-ide-diff)
        '(("openDiff" . ((type . "object")
                         (properties . ((old_file_path . ((type . "string")
                                                          (description . "Path to the original file")))
                                        (new_file_path . ((type . "string")
                                                          (description . "Path to the new file (usually same as old)")))
                                        (new_file_contents . ((type . "string")
                                                              (description . "New content to diff against")))
                                        (tab_name . ((type . "string")
                                                     (description . "Name for the diff tab")))))
                         (required . ["old_file_path" "new_file_path" "new_file_contents" "tab_name"])))
          ("closeAllDiffTabs" . ((type . "object")
                                 (properties . :json-empty)))))
    ,@(when (bound-and-true-p claude-code-ide-enable-execute-code)
        '(("executeCode" . ((type . "object")
                            (properties . ((code . ((type . "string")
                                                    (description . "Elisp expression to evaluate")))))
                            (required . ["code"])))))))