- Home
- MCP servers
- Neovim
Neovim
- typescript
294
GitHub Stars
typescript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"bigcodegen-mcp-neovim-server": {
"command": "npx",
"args": [
"-y",
"mcp-neovim-server"
],
"env": {
"NVIM_SOCKET_PATH": "/tmp/nvim",
"ALLOW_SHELL_COMMANDS": "true"
}
}
}
}You connect Claude Desktop to Neovim using the MCP Neovim Server to leverage Neovim’s editing capabilities with AI assistance. This server exposes Neovim features like buffer management, cursor info, and command execution through MCP, enabling smooth, context-aware interactions with your editor.
How to use
You can use the MCP Neovim Server to peek into your Neovim session, switch buffers, inspect cursor state, and perform edits or searches directly from Claude Desktop or any Model Context Protocol client. Typical workflows include opening files, navigating buffers, creating or adjusting selections, running vim commands, and performing project-wide searches. Use the available MCP tools to edit buffers, manage windows and tabs, run macros, and perform sophisticated search and replace operations.
How to install
Prerequisites: you need Node.js and npm or npx available on your system. Ensure Neovim is running with a socket exposed, for example by starting Neovim with --listen /tmp/nvim.
Option 1: DXT Package (Recommended) install steps
- Download the latest .dxt file from the available releases
- Drag the file to Claude Desktop and follow any prompts to install the MCP Neovim Server package
Option 2: Manual Installation
- Add the following to your claude_desktop_config.json to run the MCP Neovim Server via npx
{
"mcpServers": {
"MCP Neovim Server": {
"command": "npx",
"args": [
"-y",
"mcp-neovim-server"
],
"env": {
"ALLOW_SHELL_COMMANDS": "true",
"NVIM_SOCKET_PATH": "/tmp/nvim"
}
}
}
}
Additional setup notes
Shell commands are disabled by default for security. If you explicitly enable them, you can execute shell commands via the editor commands using the MCP tools that support shell execution when ALLOW_SHELL_COMMANDS is set to true.
Available tools
vim_buffer
Get buffer contents with line numbers and optional filename; returns numbered lines for the current buffer or a specific one by filename.
vim_command
Send a Vim command to Neovim to navigate, edit, or delete lines. Supports shell commands with a leading ! when enabled.
vim_status
Return comprehensive Neovim status including cursor, mode, filename, selections, window layout, registers, marks, and LSP/plugin info.
vim_edit
Edit buffer lines in insert, replace, or replaceAll modes. Specify startLine, mode, and the text content to apply.
vim_window
Manipulate Neovim windows: split, vsplit, close, and navigate between windows.
vim_mark
Set named marks at specific line and column positions for quick navigation.
vim_register
Set the content of a register to store and reuse text or commands.
vim_visual
Create and manipulate visual mode selections by coordinates.
vim_buffer_switch
Switch between buffers by name or number; open specific buffers as needed.
vim_buffer_save
Save current buffer or write to a specified filename.
vim_file_open
Open files into new buffers for editing.
vim_search
Search within the current buffer with regex support, including ignoreCase and wholeWord options.
vim_search_replace
Find and replace with options for global replacement, ignoreCase, and optional confirmation.
vim_grep
Perform a project-wide search with vimgrep and populate the quickfix list.
vim_macro
Record, stop, and play Vim macros to automate repetitive edits.
vim_tab
Manage tabs: create new, close, navigate, and list tabs.
vim_fold
Control code folding to create, open, close, toggle, or delete folds.
vim_jump
Navigate the jump list to move backward or forward through positions.
vim_health
Check Neovim connection health and socket status.