Function: claude-code-ide-emacs-tools-setup

claude-code-ide-emacs-tools-setup is an interactive and natively compiled function defined in claude-code-ide-emacs-tools.el.

Signature

(claude-code-ide-emacs-tools-setup)

Documentation

Set up Emacs MCP tools for Claude Code IDE.

Key Bindings

This command is not in any keymaps.

Source Code

;; Defined in /nix/store/yjvbhwl7p6zrbw9xlnni7y4hra8sa3pl-emacs-packages-deps/share/emacs/site-lisp/claude-code-ide-emacs-tools.el
;;; Tool Configuration

;;; Tool Registration


;;; Setup Function

;;;###autoload
(defun claude-code-ide-emacs-tools-setup ()
  "Set up Emacs MCP tools for Claude Code IDE."
  (interactive)
  (setq claude-code-ide-enable-mcp-server t)

  ;; Register xref tools
  (claude-code-ide-make-tool
   :function #'claude-code-ide-mcp-xref-find-references
   :name "claude-code-ide-mcp-xref-find-references"
   :description "Find where a function, variable, or class is used throughout your codebase. Perfect for understanding code dependencies and impact analysis"
   :args '((:name "identifier"
                  :type string
                  :description "The identifier to find references for")
           (:name "file_path"
                  :type string
                  :description "File path to use as context for the search")))

  (claude-code-ide-make-tool
   :function #'claude-code-ide-mcp-xref-find-apropos
   :name "claude-code-ide-mcp-xref-find-apropos"
   :description "Search for functions, variables, or classes by name pattern across your project. Helps you discover code elements when you know part of the name"
   :args '((:name "pattern"
                  :type string
                  :description "The pattern to search for symbols")
           (:name "file_path"
                  :type string
                  :description "File path to use as context for the search")))

  ;; Register project info tool
  (claude-code-ide-make-tool
   :function #'claude-code-ide-mcp-project-info
   :name "claude-code-ide-mcp-project-info"
   :description "Get quick overview of your current project context including directory, active file, and project size"
   :args nil)

  ;; Register imenu tool
  (claude-code-ide-make-tool
   :function #'claude-code-ide-mcp-imenu-list-symbols
   :name "claude-code-ide-mcp-imenu-list-symbols"
   :description "Navigate and explore a file's structure by listing all its functions, classes, and variables with their locations"
   :args '((:name "file_path"
                  :type string
                  :description "Path to the file to analyze for symbols")))

  ;; Register tree-sitter tool
  (claude-code-ide-make-tool
   :function #'claude-code-ide-mcp-treesit-info
   :name "claude-code-ide-mcp-treesit-info"
   :description "Get tree-sitter syntax tree information for a file, including node types, ranges, and hierarchical structure. Useful for understanding code structure and AST analysis"
   :args '((:name "file_path"
                  :type string
                  :description "Path to the file to analyze")
           (:name "line"
                  :type number
                  :description "Line number (1-based)"
                  :optional t)
           (:name "column"
                  :type number
                  :description "Column number (0-based)"
                  :optional t)
           (:name "whole_file"
                  :type boolean
                  :description "Show the entire file's syntax tree"
                  :optional t)
           (:name "include_ancestors"
                  :type boolean
                  :description "Include parent node hierarchy"
                  :optional t)
           (:name "include_children"
                  :type boolean
                  :description "Include child nodes"
                  :optional t))))