Function: claude-code-ide-mcp--handle-initialize
claude-code-ide-mcp--handle-initialize is a natively compiled function
defined in claude-code-ide-mcp.el.
Signature
(claude-code-ide-mcp--handle-initialize ID PARAMS &optional SESSION)
Documentation
Handle the initialize request with ID for SESSION.
Source Code
;; Defined in /nix/store/yjvbhwl7p6zrbw9xlnni7y4hra8sa3pl-emacs-packages-deps/share/emacs/site-lisp/claude-code-ide-mcp.el
(defun claude-code-ide-mcp--handle-initialize (id _params &optional session)
"Handle the initialize request with ID for SESSION."
(claude-code-ide-debug "Handling initialize request with id: %s" id)
;; Start ping timer after successful initialization
;; DISABLED: Ping causing connection issues - needs investigation
;; (claude-code-ide-mcp--start-ping-timer)
;; Send tools/list_changed notification after initialization
(claude-code-ide-debug "Scheduling tools/list_changed notification")
(run-with-timer claude-code-ide-mcp-initial-notification-delay nil
(lambda ()
(claude-code-ide-debug "Sending tools/list_changed notification")
(claude-code-ide-mcp--send-notification
"notifications/tools/list_changed"
(make-hash-table :test 'equal)
session)))
(let ((response `((protocolVersion . ,claude-code-ide-mcp-version)
(capabilities . ((tools . ((listChanged . t)))
(resources . ((subscribe . :json-false)
(listChanged . :json-false)))
(prompts . ((listChanged . t)))
(logging . ,(make-hash-table :test 'equal))))
(serverInfo . ((name . "claude-code-ide-mcp")
(version . "0.3.0"))))))
(claude-code-ide-debug "Initialize response capabilities: tools.listChanged=%s, resources.subscribe=%s, resources.listChanged=%s, prompts.listChanged=%s"
t :json-false :json-false t)
(claude-code-ide-mcp--make-response id response)))