nvimmcp
v1.0.1
Published
MCP server that receives Neovim buffer updates and exposes editor context as MCP tools.
Readme
NeoVimMCP
MCP server that receives Neovim buffer updates and exposes editor context as MCP tools.
Features
- MCP server over stdio for AI clients
- HTTP bridge endpoint Neovim can POST to
- In-memory buffer store with active buffer tracking
- Tools for active buffer, list/lookup, cursor context, publish, and clear
- Bridge written in C++ for mutliple nvim instances
Start server
npm install
npm startOptional env var:
NVIM_BUFFER_PORT(default4389)
MCP tools exposed
nvim_get_active_buffernvim_list_buffersnvim_get_buffernvim_get_cursor_contextnvim_publish_buffernvim_clear_buffer
Connect your MCP client
Example mcpServers entry:
{
"mcpServers": {
"nvim": {
"command": "node",
"args": ["/absolute/path/to/nvimMCP/server.js"],
"env": {
"NVIM_SOCKET_PATH": "/tmp/nvim.sock (Neovim socket)"
}
}
}
}Connect Neovim
Drop nvim/nvim-mcp.lua into your config (or source it directly), then call setup:
local nvim_mcp = dofile("/absolute/path/to/nvimMCP/nvim/nvim-mcp.lua")
nvim_mcp.setup({
endpoint = "http://127.0.0.1:4389/buffer/update",
clear_endpoint = "http://127.0.0.1:4389/buffer/clear",
debounce_ms = 150,
})Available user commands:
:NvimMcpPublish(force publish current buffer):NvimMcpClear(clear current buffer from server)
TODO: Create a mutliplex using C++ to handle multiple instances that can share across the network.
