Neovim MCP 服务器
这是 Claude Desktop(或任何客户端)与 Neovim 之间使用模型上下文协议 (MCP) 和官方 neovim/node-client JavaScript 库进行概念验证集成的成果。该服务器利用 Vim 原生的文本编辑命令和工作流程(Claude 已理解这些命令和工作流程),创建轻量级代码或通用的 AI 文本辅助层。
特征
如果您在启动 nvim 时公开套接字文件(例如
--listen /tmp/nvim),则连接到您的 nvim 实例查看当前缓冲区
获取光标位置、模式、文件名
通过 vim 运行 vim 命令和可选的 shell 命令
可以使用插入或替换进行编辑
API
资源
nvim://session:当前 neovim 文本编辑器会话nvim://buffers:当前 Neovim 会话中所有打开的缓冲区的列表,其中包含修改状态、语法和窗口 ID 等元数据
工具
vim_buffer
显示当前 VIM 文本编辑器缓冲区的行号
输入
filename(字符串)忽略文件名,返回包含当前活动缓冲区内容的编号行字符串
vim命令
向 VIM 发送命令以进行导航、点编辑和行删除
输入
command(字符串)运行首先通过
nvim.replaceTermcodes传递的 vim 命令。多个命令之间用换行符分隔即可运行。发生错误时,返回
'nvim:errmsg'内容
vim_status
获取 VIM 编辑器的状态
状态包含光标位置、模式、文件名、视觉选择、窗口布局、当前选项卡、标记、寄存器和工作目录
vim_edit
在 VIM 编辑器中使用 insert、replace 或 replaceAll 编辑行
输入
startLine(数字),mode("insert"|"replace"|"replaceAll"),lines(字符串)插入将在 startLine 处插入行
replace 将替换从 startLine 开始的行
replaceAll 将替换整个缓冲区内容
vim_window
操作 Neovim 窗口(拆分、vsplit、关闭、导航)
输入
command(字符串:“split”、“vsplit”、“only”、“close”、“wincmd h/j/k/l”)允许窗口管理操作
vim_mark
在特定位置设置标记
输入
mark(字符串:az)、line(数字)、column(数字)在指定位置设置命名标记
vim_register
设置寄存器的内容
输入
register(字符串:az或“),content(字符串)管理寄存器内容
vim_visual
进行视觉选择
输入
startLine(数字)、startColumn(数字)、endLine(数字)、endColumn(数字)创建视觉模式选择
使用这套简单的工具,Claude 可以窥视您的 neovim 会话来回答问题以及对缓冲区进行编辑。
限制
这是对模型上下文协议进行快速概念验证的实验。使用风险自负。
可能无法与自定义 neovim 配置很好地交互!
错误处理可能会更好。
有时 Claude 无法正确输入 vim 命令。
配置
环境变量
ALLOW_SHELL_COMMANDS:设置为 true 以允许执行 shell 命令(例如!ls)。出于安全考虑,默认为 false 。NVIM_SOCKET_PATH:设置为 Neovim 套接字的路径。如果未指定,则默认为 '/tmp/nvim'。
与 Claude Desktop 一起使用
将其添加到您的claude_desktop_config.json中:
执照
此 MCP 服务器采用 MIT 许可证。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
利用 Claude 已经了解的 Vim 本机文本编辑命令和工作流程来创建轻量级的代码辅助层。
Related MCP Servers
- Asecurity-licenseAqualityShell and file edit capabilities tightly coupled to provide a powerful coding experience. You can work with different modes: architect and code-writer for separate plan and implementation phase. You can get it to invoke any cli command, e.g., compiling, type checking, linting, github cli, pythonLast updated -6602Apache 2.0
- -security-license-qualityA comprehensive code analysis and management tool that integrates with Claude Desktop to analyze code at project and file levels, helping adapt changes to projects intelligently.Last updated -39MIT License
- -security-license-qualityA utility toolkit that enhances Claude's code interaction capabilities by providing seamless tools for Java code analysis, manipulation, and testing workflows.Last updated -3
- Asecurity-licenseAqualityAllows Claude to execute terminal commands on your computer and perform file system operations including surgical code editing with diff-based replacements.Last updated -1914,6146MIT License