mcpField
N
Neovim MCP Server

Neovim MCP Server

ローカル
github.com/brianhuster開発ツール635 週間前に更新

Neovim MCP Server について

Neovim MCP Serverは、AI言語モデルがNeovimのLSPを使ってコードのシンボル単位で操作できるようにします。Neovim内でLuaとVimscriptを実行する機能も備えています。

主な機能

  1. 01ファイル内のシンボル一覧
  2. 02シンボルと参照の検索
  3. 03シンボル内容の置換・挿入
  4. 04コードシンボルの名前変更
  5. 05LSPクライアントとサーバーの管理
  6. 06LuaとVimscriptの実行

活用シーン

  1. 01ファイル内のクラスやメソッドの確認
  2. 02シンボルの全参照の検索
  3. 03コードベース全体でのシンボル名変更
  4. 04Neovim内でのスクリプト実行

MCP 対応

MCPサーバーとして、LSPによるシンボル検索・編集ツールとNeovimでのスクリプト実行機能をMCPクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MseeP.ai Security Assessment Badge

Neovim MCP サーバー

LSP ベースのシンボルツールを提供する、Neovim 用の Model Context Protocol(MCP)サーバーです。このサーバーを使うと、AI 言語モデルが Neovim の Language Server Protocol(LSP)と連携し、シンボル単位のコード操作を実行できます。

機能

シンボルツール(LSP ベース)
  • get_symbols_overview(relative_path, depth) - ファイル内のトップレベルシンボルの概要を取得します。depth を使うと、子要素(クラスのメソッドなど)も含められます。
  • find_symbol(name_path_pattern, relative_path, depth) - 名前のパスパターン(例:「MyClass/my_method」)でシンボルを検索します。
  • find_referencing_symbols(name_path, relative_path) - シンボルへの参照をすべて検索します。
  • replace_symbol_body(name_path, relative_path, body) - シンボル定義の本体を置き換えます。
  • insert_after_symbol(name_path, relative_path, body) - シンボル定義の後にコンテンツを挿入します。
  • insert_before_symbol(name_path, relative_path, body) - シンボル定義の前にコンテンツを挿入します。
  • rename_symbol(name_path, relative_path, new_name) - コードベース全体でシンボルの名前を変更します。
  • restart_language_server() - LSP サーバーを再起動します(LSP が応答しなくなった場合に便利です)。
  • get_lsp_client_info() - アクティブな LSP クライアントに関する情報を取得します。
一般ツール
  • execute_lua(code) - Neovim で Lua コードを実行します
  • execute_vimscript(code) - Neovim で Vimscript コードを実行します

インストール

前提条件
  • Python 3.11+
  • uv パッケージマネージャー
  • 組み込み LSP クライアントを備えた Neovim 0.9+
ソースからインストール
git clone https://github.com/brianhuster/nvim-mcp-server.git
cd nvim-mcp-server
uv sync
Neovim の設定に追加

プラグインのディレクトリを Neovim のランタイムパスに追加します。

-- In your init.lua or plugins.lua
vim.opt.runtimepath:append("/path/to/nvim-mcp-server/plugin")

使い方

MCP サーバーを起動して Neovim を開始
  1. ソケットを指定して Neovim を起動します。

    nvim --listen /tmp/nvim.sock
    
  2. NVIM 環境変数を設定し、MCP サーバーを実行します。

    export NVIM=/tmp/nvim.sock
    uv run nvim-mcp
    
Claude Desktop の設定

claude_desktop_config.json に以下を追加します。

{
  "mcpServers": {
    "nvim": {
      "command": "uv",
      "args": ["run", "nvim-mcp"],
      "env": {
        "NVIM": "/tmp/nvim.sock"
      }
    }
  }
}
Goose で使用
extensions:
  nvim-mcp:
    cmd: uv
    args: ["run", "nvim-mcp"]
    env:
      NVIM: "/tmp/nvim.sock"
    type: stdio

開発

コマンド
  • uv run nvim-mcp - MCP サーバーを起動します
  • uv run nvim-mcp --version - バージョンを表示します
  • uv run ruff check - リントを実行します
  • uv run mypy - 型チェックを実行します

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。