Overview
What is Neovim MCP Server?
A Model Context Protocol (MCP) server for Neovim that provides LSP-based symbol tools, enabling AI language models to interact with Neovim's Language Server Protocol for symbol-level code operations.
How to use Neovim MCP Server?
Install dependencies (Python 3.11+, uv, Neovim 0.9+), clone the repository, and run uv sync. Start Neovim with nvim --listen /tmp/nvim.sock, set the NVIM environment variable to that socket, then run uv run nvim-mcp. Configure with Claude Desktop or Goose using the provided config examples.
Key features of Neovim MCP Server
- LSP-based symbol tools: overview, find, references, rename
- Symbol body replacement and insertion before/after definitions
- General tools: execute Lua and Vimscript code
- Restart language server and query active LSP clients
Use cases of Neovim MCP Server
- AI-assisted code navigation and symbol discovery
- Automated symbol renaming across the codebase
- Inserting or replacing symbol bodies via AI
- Executing Lua/Vimscript commands from language models
FAQ from Neovim MCP Server
What are the prerequisites?
Python 3.11+, the uv package manager, and Neovim 0.9+ with a built-in LSP client.
How do I start the server?
Start Neovim with a socket (e.g., nvim --listen /tmp/nvim.sock), set NVIM to that socket, then run uv run nvim-mcp.
How can I use it with Claude Desktop?
Add the configuration to claude_desktop_config.json using uv as the command and the NVIM environment variable.
What tools are available?
LSP-based symbol tools (overview, find, references, replace, insert, rename) and general tools (execute Lua/Vimscript, restart LSP, get LSP info).
How do I run linting and type checking?
Use uv run ruff check for linting and uv run mypy for type checking (development commands).