VS Code MCP サーバー
Claude 氏をはじめとする MCP クライアントが VS Code で直接コーディングできるようにする Visual Studio Code 拡張機能( Marketplaceで入手可能)です。Serenaに着想を得ていますが、VS Code の組み込み機能を使用しています。現時点では Serena よりもはるかにシンプルですが、問題なく動作します。この拡張機能は SSE API ではなく、ストリーミング可能な HTTP API を使用していることに注意してください。
この拡張機能はシェルコマンドの実行を可能にします。これは潜在的なセキュリティリスクを意味しますので、慎重に使用し、使用しているMCPクライアントが信頼できること、およびポートが他のものに公開されていないことを確認してください。認証が役立つ場合もありますが、MCP認証仕様はまだ流動的であるため、現時点では実装されていません。
PR大歓迎です!
デモビデオ
https://github.com/user-attachments/assets/20b87dfb-fc39-4710-a910-b9481dde1e90
インストール
Marketplaceから拡張機能をインストールするか、このリポジトリのクローンを作成し、
npm installとnpm run compileを実行してビルドします。
クロードデスクトップ構成
Claude Desktop は、この拡張機能を MCP サーバーとして使用するように設定できます。これを行うには、 claude_desktop_config.jsonファイルは以下のようになります。
この拡張機能はClaudeプロジェクトでも使用しています。Claudeへの追加指示を指定できるためです。以下のプロンプトがうまく機能していると思います。
この拡張機能は、モデル コンテキスト プロトコル (MCP) サーバーとして機能し、VS Code のファイルシステムと編集機能を MCP クライアントに公開します。
特徴
VS Code MCP サーバー拡張機能は、AI モデルやその他の MCP クライアントが次のことを実行できるようにする MCP 準拠のサーバーを実装します。
VS Code ワークスペース内のファイルとディレクトリを一覧表示する
エンコードのサポートとサイズ制限付きでファイルの内容を読み取る
ワークスペース全体でシンボルを検索する
行とシンボル名でシンボルの定義とホバー情報を取得します
VS Code の WorkspaceEdit API を使用して新しいファイルを作成する
ファイル内の行を置換する
ワークスペースの診断(エラーと警告)を確認します
シェル統合により統合ターミナルでシェルコマンドを実行する
ステータスバー項目からサーバーのオン/オフを切り替える
この拡張機能により、AI アシスタントやその他のツールが標準化された MCP プロトコルを通じて VS Code ワークスペースと対話できるようになります。
仕組み
この拡張機能は、次の機能を備えた MCP サーバーを作成します。
設定可能なポートでローカルに実行(有効な場合)
HTTP経由でMCPプロトコルリクエストを処理する
VS Code の機能を MCP ツールとして公開します
サーバーのステータスを示すステータス バー インジケータを提供し、クリックするとサーバーのオン/オフを切り替えることができます。
サポートされているMCPツール
ファイルツール
list_files_code : ワークスペース内のファイルとディレクトリを一覧表示します
パラメータ:
path: ファイルを一覧表示するパスrecursive(オプション): ファイルを再帰的にリストするかどうか
read_file_code : ファイルの内容を読み取る
パラメータ:
path: 読み取るファイルへのパスencoding(オプション): ファイルのエンコーディング(デフォルト: utf-8)maxCharacters(オプション):最大文字数(デフォルト:100,000)
編集ツール
create_file_code : VS Code の WorkspaceEdit API を使用して新しいファイルを作成します。
パラメータ:
path: 作成するファイルへのパスcontent: ファイルに書き込むコンテンツoverwrite(オプション):ファイルが存在する場合に上書きするかどうか(デフォルト:false)ignoreIfExists(オプション): ファイルが存在する場合に無視するかどうか (デフォルト: false)
replace_lines_code : ファイル内の特定の行を置き換えます
パラメータ:
path: 変更するファイルへのパスstartLine: 開始行番号(0から始まる、含む)endLine: 終了行番号(0から始まる、含む)content: 行を置き換える新しいコンテンツoriginalCode: 検証の元のコード
診断ツール
get_diagnostics_code : ワークスペース内の警告とエラーをチェックします
パラメータ:
path(オプション):チェックするファイルパス(指定しない場合はワークスペース全体をチェックします)severities(オプション):含める重大度の配列(0=エラー、1=警告、2=情報、3=ヒント)。デフォルト:[0, 1]format(オプション): 出力形式 ('text' または 'json')。デフォルト: 'text'includeSource(オプション): 診断ソースを含めるかどうか。デフォルト: true
このツールは特に次の場合に役立ちます。
変更をコミットする前にコード品質をチェックする
修正を確認すると、報告された問題はすべて解決されました
特定のファイルまたはワークスペース全体の問題を特定する
シンボルツール
search_symbols_code : ワークスペース全体でシンボルを検索します
パラメータ:
query: シンボル名の検索クエリmaxResults(オプション): 返される結果の最大数 (デフォルト: 10) このツールは次の場合に役立ちます:
コードベース全体でシンボル(関数、クラス、変数など)の定義を見つける
プロジェクトの構造と組織の探究
名前で特定の要素を検索する
get_symbol_definition_code : ファイル内のシンボルの定義情報を取得します
パラメータ:
path: シンボルを含むファイルへのパスline: シンボルの行番号(0から始まる)symbol: 指定された行で検索するシンボル名 このツールは以下を提供します:
シンボルの型情報、ドキュメント、ソースの詳細
シンボルが出現する行を示すコードコンテキスト
シンボル範囲情報 特に次の場合に役立ちます:
シンボルが何を表しているかを、別の場所に移動せずに理解する
関数のシグネチャ、型定義、ドキュメントの確認
APIまたはライブラリ関数のクイックリファレンス
シェルツール
execute_shell_command_code : シェル統合機能を備えた VS Code 統合ターミナルでシェルコマンドを実行します。
パラメータ:
command: 実行するシェルコマンドcwd(オプション): コマンドのオプションの作業ディレクトリ (デフォルト: '.')
このツールは次の場合に役立ちます:
CLIコマンドとビルド操作の実行
gitコマンドの実行
端末アクセスを必要とするシェル操作を実行する
分析とさらなる処理のためにコマンド出力を取得する
注意事項/TODO
現在、サポートされているワークスペースは1つだけです。また、この拡張機能はローカルでのみ動作するため、接続しているネットワークにVS Codeインスタンスが公開されるのを防ぎます。
拡張機能の設定
この拡張機能は次の設定を提供します。
vscode-mcp-server.port: MCP サーバーのポート番号 (デフォルト: 3000)
MCPクライアントでの使用
MCP クライアントをこのサーバーに接続するには、以下を使用するように構成します。
最初にステータス バー項目をクリックしてサーバーを有効にする必要があることに注意してください。
貢献
貢献を歓迎します!お気軽に問題やプルリクエストを送信してください。
ライセンス
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
vscode-mcp-サーバー
Related MCP Servers
- Asecurity-licenseAqualityMCP Server for running code snippet and show the result.Last updated -1710204MIT License
- MIT License
- MIT License