Labsco
MCP SERVER

Neovim MCP Server

by bigcodegen

Let an agent work inside the Neovim you already have open — your buffers, marks, registers, macros and quickfix list — instead of editing files behind the editor's back.

Editors, Terminals & Local Dev EnvironmentVerified
Summary
Edits land in the buffer on your screen, inside your undo history.

Because every call goes through a running Neovim over its socket, there is one editor state rather than two: the agent's change appears where you are looking, and vim_status hands back your cursor position, mode, marks and registers so it can start from where you actually are. The decision worth making before you connect it is ALLOW_SHELL_COMMANDS, which is the difference between vim_command running editor commands and vim_command running your shell.

What it is

A client for a running Neovim instance: 19 tools that drive the editor over its socket rather than reading and writing files directly.

What you get
  • Buffer work in the live session: contents returned with line numbers, edits applied by insert, replace or replaceAll from a start line, files opened into new buffers, buffers switched by name or number and saved under their own or another filename
  • Search at three scopes: vim_search within a buffer with regex, case and whole-word options; vim_search_replace with global, case-insensitive and confirm options; vim_grep across the project into the quickfix list
  • Editor state read back rather than assumed — cursor position, mode, marks and registers from one call, and a health check on the connection itself
  • Vim's own machinery reachable as tools: named marks, register contents, visual selections, macros recorded and replayed by register and count, folds, and the jump list
  • Window and tab layout: splitting, closing and moving between windows, and creating, closing and navigating tabs
  • vim_command runs Vim commands, with shell command support behind an environment switch
Requirements

A running Neovim whose socket the server can reach at NVIM_SOCKET_PATH. Shell commands through vim_command stay unavailable until ALLOW_SHELL_COMMANDS is set. MIT-licensed.

Setup effort

One command — npx -y mcp-neovim-server