nvim
A Ruby implementation of the MCP server protocol for Neovim
claude mcp add --transport stdio maquina-app-nvim-mcp-server nvim-mcp-server
How to use
This Neovim MCP Server is a Ruby-based implementation that exposes Neovim editor capabilities to Large Language Models via the Model Context Protocol (MCP). It enables tools for querying buffers, exploring project files, and editing content within running Neovim instances. Use the STDIO mode for direct integration with clients that support JSON-RPC over standard I/O, or run in HTTP mode to expose JSON-RPC endpoints and Server-Sent Events (SSE) for reactive communication. The server connects to Neovim via per-project sockets (e.g., /tmp/nvim-{project_name}.sock) and can report on buffers currently opened in a given project. This makes it suitable for LLM-assisted code understanding, refactoring, and editing workflows where a model can request buffer data and apply changes back to Neovim.
How to install
Prerequisites:\n- Ruby and RubyGems installed on your system.\n- Access to the internet to install gems.\n\nStep-by-step installation:\n1) Install the Neovim MCP Server gem:\n\nbash\ngem install nvim-mcp-server\n``\n\n2) Ensure the executable is on your PATH. The gem installs an nvim-mcp-server executable that should be discoverable as nvim-mcp-server. You can verify:\n\nbash\nwhich nvim-mcp-server\n# or\ncommand -v nvim-mcp-server\n\n\n3) (Optional) Run the server to verify it starts correctly:\n\nbash\nnvim-mcp-server\n```\n\n4) Optional: configure MCP clients to connect via STDIO or HTTP as described in the README. If you prefer HTTP, run the server with the appropriate mode flag (see usage in the README).
Additional notes
Tips and notes:\n- The server uses Neovim sockets located at /tmp/nvim-{project_name}.sock. Ensure Neovim instances are started with a matching --listen socket if you intend multi-project usage.\n- In HTTP mode, you can access JSON-RPC at http://localhost:<port>/mcp/messages and receive events via SSE at http://localhost:<port>/mcp/sse.\n- When integrating with Claude Desktop or other clients, you may need to configure the MCP server under an mcpServers entry with command and args suitable for your environment.\n- If you experience startup failures due to Ruby version management, ensure the system Ruby is used for the installed gem or provide a shim that points ruby to the correct version.\n- Security: expose HTTP mode only on trusted networks and consider using bind-all only in secure LANs.\n- If you plan to implement or rely on additional tools (e.g., get_project_buffers), ensure your Neovim configuration enables the expected sockets and that Neovim instances have the appropriate permissions for socket access.
Related MCP Servers
fast
A Ruby Implementation of the Model Context Protocol
ruby-sdk
The official Ruby SDK for the Model Context Protocol.
rails
A Ruby gem implementation of a Model Context Protocol (MCP) server for Rails projects. This server allows LLMs (Large Language Models) to interact with Rails projects through the Model Context Protocol.
mcp-rb
A lightweight Ruby framework for building MCP servers with a Sinatra-like DSL
sketchup
Sketchup Model Context Protocol
rails-pg-extras
MCP (Model Context Protocol) LLM interface for rails-pg-extras gem