Skip to main content
Glama
santanusinha

neovim-use-mcp

by santanusinha

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NVIM_MCP_BINNoPath to the nvim binary. Default is 'nvim'.nvim
NVIM_MCP_CWDNoProject root for the language server. Default is the process cwd.
NVIM_MCP_MODENoMode for the Neovim instance: 'embedded' spawns its own nvim, 'attach' connects to a socket. Default is 'embedded'.embedded
NVIM_MCP_DEBUGNoSet to '1' or 'true' to enable debug output on stderr. Default is off.off
NVIM_MCP_SOCKETNoSocket path for attach mode (used when NVIM_MCP_MODE=attach or --socket is passed).
NVIM_MCP_MAX_LINESNoLine cap for file reads. Default is '2000'.2000
NVIM_MCP_ALLOW_EXECNoSet to '0' to disable nvim_exec_lua and nvim_command tools. Default is enabled.1
NVIM_MCP_CONFIG_MODENoConfig mode for Neovim: 'user' loads your config, 'minimal' runs `nvim --clean`. Default is 'user'.user
NVIM_MCP_LSP_WAIT_MSNoDefault LSP wait time in milliseconds. Default is '3000'.3000

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
nvim_open_fileA

Open one or more files in Neovim buffers and start their LSP clients. Pass a single path or an array of paths. Returns the buffer id, filetype, line count and attached LSP clients for each file. Optional: use it to pre-warm files or tune wait_ms. Other tools open files on demand.

nvim_read_fileA

Read a file through Neovim with line numbers. Opens the file if needed. Use start_line and end_line to read a slice of a large file.

nvim_edit_linesA

This is the default way to edit files. Use the provided line numbers to directly replace lines start_line..end_line (1-based, inclusive) with new text. To insert before a line, pass start_line = end_line + 1 (for example start 5, end 4 inserts before line 5). Saves the buffer by default without running format-on-save autocmds, so the diff is minimal. Returns fresh LSP diagnostics for the file. Use nvim_format to format after editing once editing and fixes on that are done.

nvim_goto_definitionA

Find where the symbol at a position is defined, through the LSP.

nvim_referencesA

Find every reference to the symbol at a position, through the LSP. Use this before a rename or a signature change.

nvim_hoverA

Get type and documentation information for the symbol at a position, the same text the editor shows on hover.

nvim_rename_symbolA

Rename a symbol across the whole workspace with the LSP, then save every changed file. Safer than a text search and replace.

nvim_code_actionsA

List LSP code actions at a position. Pass apply_index to apply one and save the file. Use this to apply quick fixes for diagnostics.

nvim_formatA

Format a whole file or a line range with the formatter Neovim is configured to use, then save it.

nvim_exec_luaA

Run a Lua chunk inside Neovim and return its value. The chunk receives its arguments through ... and must use return to send a value back. Use this to reach plugins that have no dedicated tool.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 10 tools

Disambiguation5/5

Each tool has a clearly distinct responsibility: LSP lookups (hover, definition, references), mutations (rename, edit, format, code actions), file I/O (read, open), and an escape hatch (exec lua). Even the similar-looking open vs read tools differ clearly in purpose: one returns buffer metadata, the other returns file content.

Naming Consistency4/5

All tools share the consistent nvim_ prefix and most use a verb_noun pattern like nvim_read_file and nvim_rename_symbol. Minor deviations like nvim_references and nvim_code_actions being noun phrases, plus bare-verb tools like nvim_format and nvim_hover, keep this from being a perfect 5.

Tool Count5/5

10 tools is a well-scoped set for a Neovim-powered editing and LSP server. Each tool covers a meaningful operation, and there is no obvious redundancy or bloat.

Completeness4/5

The core workflows are well covered: read, open, edit, format, rename, reference lookup, definition lookup, hover info, and code actions. Minor gaps exist around secondary LSP features like a dedicated diagnostics-only tool, document symbols, or explicit file create/delete operations, but agents can work around these.

Maintenance

ActivityMaintained
ResponsivenessNo issues