Install
$ agentstack add mcp-paulburgess1357-nvim-mcp Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.
Security review
⚠ Flagged1 finding(s); flagged for manual review. · v0.1.0 How review works →
- • Prompt-injection patterns
- • Secret / credential exfiltration
- • Dangerous shell & filesystem operations
- • Untrusted network calls
- • Known-malicious package signatures
- high Pipes remote content directly into a shell (remote code execution).
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
nvim-mcp
[](https://pypi.org/project/nvim-mcp/)
An MCP server that gives AI agents first-class access to your running Neovim session. It connects through Neovim's native msgpack-RPC socket — no plugins required.
Works with Cursor, Claude Code, Codex, OpenCode, and any MCP-compatible client.
Before you connect an agent to Neovim, please read [Working safely](#working-safely).
What agents can do
- See what you see — editor mode, working directory, open buffers, window layout, cursor context, folds, selections, marks, and diagnostics.
- Edit buffers in memory — find-and-replace or full rewrites with immediate feedback and full undo support. Nothing touches disk until you save.
- Run any Vim command —
:w,:e,:vsplit, macros, or anything else you could type at the command line. - Send keystrokes — navigate, enter insert mode, trigger mappings.
- Query LSP diagnostics — errors, warnings, and hints across one buffer or the whole session.
- Annotate code with highlights and virtual text — colored line highlights and inline/above/below text notes that never touch the buffer's real content.
- Work with multiple instances — auto-discovers running sessions and connects to the right one. See [multiple instances](docs/MULTIPLE_INSTANCES.md).
Anything you can do in Neovim, the agent can too. See the [full tool reference](docs/TOOLS.md) for details.
Demos
Using nvim-mcp across two terminals
Using nvim-mcp with a terminal inside Neovim
Claude and Cursor collaborating in one Neovim instance
Using nvim-mcp in Cursor
Multiple Neovim instances
Quick start
nvim-mcp runs via uv (recommended) or Nix.
> Cursor users: A Marketplace plugin is pending review — once available, it installs the MCP server and agent rule together (you can skip to step 4). To activate the rule, start chats with something like "Connect to my Neovim instance"_ — or set the rule to "Always" in Settings → Rules to apply it on every turn.
- Install a launcher.
uv
``bash curl -LsSf https://astral.sh/uv/install.sh | sh ``
Nix
Install Nix — flakes must be enabled.
- Register the MCP server with your client. Example for Cursor (
.cursor/mcp.json):
With uv
``json { "mcpServers": { "nvim-mcp": { "command": "uvx", "args": ["nvim-mcp"] } } } ``
With Nix
``json { "mcpServers": { "nvim-mcp": { "command": "nix", "args": ["run", "github:paulburgess1357/nvim-mcp"] } } } ``
For Claude Code, Codex, Claude Desktop, OpenCode, and other clients, see the [configuration guide](config/README.md).
- Add agent rules — do not skip this. Without rules, the agent has the tools but doesn't know when or how to use them, and behavior will be unreliable. See the [configuration guide](config/README.md#2-add-agent-rules) for setup.
- Start Neovim — on most Linux systems it listens on a Unix socket automatically and is discovered by nvim-mcp. If auto-discovery doesn't work, see [environment variables](config/README.md#3-environment-variables-optional). Running multiple instances? See [multiple instances](docs/MULTIPLE_INSTANCES.md).
Verify it works
Open a file in Neovim and paste this into your AI agent:
For each step: explain what you're about to do, then do it, then tell me
what happened. Wait for me to say "next" before moving on.
1. What file am I in? Highlight the function my cursor is in.
2. Are there any diagnostics? Highlight any lines with errors or warnings.
3. Add a docstring above the function, then show me the diff.
4. Open a vertical split, write a short test for that function, and save both files.
Working safely
The tools and agent rules are designed to use non-destructive operations — edits happen in memory, undo history is preserved, and the agent is steered toward buffer operations. But LLMs are non-deterministic, have full access to Neovim's API, and you should assume they will make mistakes. Work in a version-controlled directory.
Requirements
- Linux
- Python ≥ 3.10
- Neovim ≥ 0.11 ([older versions](config/README.md#3-environment-variables-optional) work with
--listenandNVIM_ADDRESS)
License
MIT — see [LICENSE](LICENSE).
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: paulburgess1357
- Source: paulburgess1357/nvim-mcp
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.