Servidor MCP de Neovim
Una prueba de concepto de integración entre Claude Desktop (o cualquier cliente) y Neovim mediante el Protocolo de Contexto de Modelo (MCP) y la biblioteca JavaScript oficial de neovim/node-client. Este servidor aprovecha los comandos y flujos de trabajo de edición de texto nativos de Vim, que Claude ya comprende, para crear un código ligero o una capa de asistencia de texto de IA de propósito general.
Características
Se conecta a su instancia nvim si expone un archivo de socket, por ejemplo
--listen /tmp/nvim, al iniciar nvimVisualiza tus buffers actuales
Obtiene la ubicación del cursor, el modo y el nombre del archivo.
Ejecuta comandos vim y, opcionalmente, comandos de shell a través de vim
Puede realizar ediciones utilizando insertar o reemplazar
API
Recursos
nvim://session: Sesión actual del editor de texto neovimnvim://buffers: lista de todos los buffers abiertos en la sesión actual de Neovim con metadatos que incluyen estado modificado, sintaxis e identificaciones de ventana
Herramientas
búfer de vim
Buffer del editor de texto VIM actual con números de línea mostrados
filenamede entrada (cadena)Se ignora el nombre del archivo y se devuelve una cadena de líneas numeradas con el contenido del búfer activo actual
comando vim
Envíe un comando a VIM para navegación, edición puntual y eliminación de líneas
commandde entrada (cadena)Ejecuta un comando de VIM que primero se pasa por
nvim.replaceTermcodes. Varios comandos funcionarán si se separan con saltos de línea.En caso de error, se devuelve el contenido
'nvim:errmsg'
estado de vim
Obtener el estado del editor VIM
El estado contiene la posición del cursor, el modo, el nombre del archivo, la selección visual, el diseño de la ventana, la pestaña actual, las marcas, los registros y el directorio de trabajo.
vim_edit
Editar líneas usando insertar, reemplazar o reemplazar todo en el editor de VIM
Entrada
startLine(número),mode("insert"|"replace"|"replaceAll"),lines(cadena)Insertar insertará líneas en la línea de inicio
replace reemplazará las líneas comenzando en startLine
replaceAll reemplazará todo el contenido del buffer
ventana_vim
Manipular ventanas de Neovim (dividir, vsplit, cerrar, navegar)
commandde entrada (cadena: "split", "vsplit", "only", "close", "wincmd h/j/k/l")Permite operaciones de gestión de ventanas
marca_vim
Establecer una marca en una posición específica
markde entrada (cadena: az),line(número),column(número)Establece marcas con nombre en posiciones específicas
registro_vim
Establecer el contenido de un registro
registerde entrada (cadena: az o "),content(cadena)Gestiona el contenido del registro
vim_visual
Hacer una selección visual
Entrada
startLine(número),startColumn(número),endLine(número),endColumn(número)Crea selecciones de modo visual
Con este sencillo conjunto de herramientas, Claude puede examinar su sesión de neovim para responder preguntas y realizar modificaciones en el buffer.
Limitaciones
Esta es una prueba de concepto rápida para experimentar con el Protocolo de Contexto de Modelo. Úselo bajo su propia responsabilidad.
¡Puede que no interactúe bien con una configuración de neovim personalizada!
El manejo de errores podría ser mejor.
A veces Claude no obtiene la entrada del comando vim correctamente.
Configuración
Variables de entorno
ALLOW_SHELL_COMMANDS: Establézcalo como 'true' para habilitar la ejecución de comandos de shell (p. ej.!ls). El valor predeterminado es 'false' por seguridad.NVIM_SOCKET_PATH: Establezca la ruta de su socket de Neovim. El valor predeterminado es '/tmp/nvim' si no se especifica.
Uso con Claude Desktop
Agregue esto a su claude_desktop_config.json :
Licencia
Este servidor MCP cuenta con la licencia MIT. Esto significa que puede usar, modificar y distribuir el software libremente, sujeto a los términos y condiciones de la licencia MIT. Para más detalles, consulte el archivo de LICENCIA en el repositorio del proyecto.
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
Aprovecha los comandos de edición de texto y flujos de trabajo nativos de Vim, que Claude ya comprende, para crear una capa de asistencia de código liviana.
Related MCP Servers
- AsecurityAlicenseAqualityShell and file edit capabilities tightly coupled to provide a powerful coding experience. You can work with different modes: architect and code-writer for separate plan and implementation phase. You can get it to invoke any cli command, e.g., compiling, type checking, linting, github cli, pythonLast updated -6602Apache 2.0
- -securityAlicense-qualityA comprehensive code analysis and management tool that integrates with Claude Desktop to analyze code at project and file levels, helping adapt changes to projects intelligently.Last updated -39MIT License
- -securityFlicense-qualityA utility toolkit that enhances Claude's code interaction capabilities by providing seamless tools for Java code analysis, manipulation, and testing workflows.Last updated -3
- AsecurityAlicenseAqualityAllows Claude to execute terminal commands on your computer and perform file system operations including surgical code editing with diff-based replacements.Last updated -1914,6146MIT License