Skip to main content
Glama

vscode-mcp-server

VS Code MCP-сервер

Расширение Visual Studio Code (доступно на Marketplace ), которое позволяет Клоду и другим клиентам MCP писать код непосредственно в VS Code! Вдохновлено Serena , но использует встроенные возможности VS Code. В настоящее время это намного проще, чем Serena, но это работает! Обратите внимание, что это расширение использует потоковый HTTP API, а не SSE API.

Это расширение может разрешить выполнение команд оболочки. Это означает, что существует потенциальный риск безопасности, поэтому используйте его с осторожностью и убедитесь, что вы доверяете клиенту MCP, который вы используете, и что порт не подвергается ничему. Аутентификация могла бы помочь, но поскольку спецификация аутентификации MCP все еще находится в стадии разработки, на данный момент она не реализована.

Пиар-сообщения приветствуются!

Демонстрационное видео

https://github.com/user-attachments/assets/20b87dfb-fc39-4710-a910-b9481dde1e90

Установка

  1. Установите расширение из Marketplace или клонируйте этот репозиторий и запустите npm install и npm run compile для его сборки.

Конфигурация рабочего стола Клода

Claude Desktop можно настроить на использование этого расширения в качестве сервера MCP. Для этого ваш файл claude_desktop_config.json должен выглядеть следующим образом:

{ "mcpServers": { "vscode-mcp-server": { "command": "npx", "args": ["mcp-remote@next", "http://localhost:3000/mcp"] } } }

Мне также нравится использовать это расширение в проекте Claude, поскольку оно позволяет мне указывать дополнительные инструкции для Claude. Я считаю, что следующее приглашение работает хорошо:

You are working on an existing codebase, which you can access using your tools. These code tools interact with a VS Code workspace. Before running code tools that will make any modification to code, always present a comprehensive and detailed plan to the user, including your confidence level (out of 10). When planning, use your tools to explore the codebase so that you understand the context of the project. If you are not confident in your plan because you require more information, use your tools, such as web search, to look for this information or ask the user. IMPORTANT: Only run code tools that will modify code after presenting such a plan to the user, and receiving explicit approval. Approval must be given each time; prior approval for a change does not imply that subsequent changes are approved.

Это расширение служит сервером Model Context Protocol (MCP), предоставляя клиентам MCP доступ к файловой системе и возможностям редактирования VS Code.

Функции

Расширение VS Code MCP Server реализует сервер, совместимый с MCP, который позволяет моделям ИИ и другим клиентам MCP:

  • Список файлов и каталогов в вашем рабочем пространстве VS Code
  • Чтение содержимого файла с поддержкой кодировки и ограничениями по размеру
  • Поиск символов на вашем рабочем месте
  • Получайте определения символов и информацию о наведении по названию строки и символа
  • Создавайте новые файлы с помощью API WorkspaceEdit VS Code
  • Сделать замену строк в файлах
  • Проверьте наличие диагностических данных (ошибок и предупреждений) в вашем рабочем пространстве.
  • Выполнение команд оболочки в интегрированном терминале с интеграцией оболочки
  • Включайте и выключайте сервер с помощью элемента строки состояния.

Это расширение позволяет помощникам на основе искусственного интеллекта и другим инструментам взаимодействовать с рабочим пространством VS Code через стандартизированный протокол MCP.

Как это работает

Расширение создает MCP-сервер, который:

  1. Работает локально на настраиваемом порту (если включен)
  2. Обрабатывает запросы протокола MCP через HTTP
  3. Раскрывает функциональность VS Code как инструментов MCP
  4. Предоставляет индикатор строки состояния, отображающий состояние сервера, на который можно нажать, чтобы включить/выключить сервер.

Поддерживаемые инструменты MCP

Файловые инструменты

  • list_files_code : Список файлов и каталогов в вашем рабочем пространстве.
    • Параметры:
      • path : Путь к списку файлов
      • recursive (необязательно): следует ли рекурсивно перечислять файлы
  • read_file_code : Считывает содержимое файла
    • Параметры:
      • path : Путь к файлу для чтения.
      • encoding (необязательно): Кодировка файла (по умолчанию: utf-8)
      • maxCharacters (необязательно): максимальное количество символов (по умолчанию: 100 000)

Инструменты редактирования

  • create_file_code : создает новый файл с помощью API WorkspaceEdit VS Code
    • Параметры:
      • path : Путь к файлу, который нужно создать.
      • content : Содержимое для записи в файл.
      • overwrite (необязательно): перезаписывать ли, если файл существует (по умолчанию: false)
      • ignoreIfExists (необязательно): игнорировать ли файл, если он существует (по умолчанию: false)
  • replace_lines_code : Заменяет определенные строки в файле
    • Параметры:
      • path : Путь к файлу, который нужно изменить.
      • startLine : номер стартовой линии (начиная с 1 включительно)
      • endLine : номер конечной строки (начиная с 1 включительно)
      • content : Новый контент, которым следует заменить строки.
      • originalCode : Исходный код для проверки

Инструменты диагностики

  • get_diagnostics_code : Проверяет наличие предупреждений и ошибок в вашем рабочем пространстве
    • Параметры:
      • path (необязательно): путь к файлу для проверки (если не указан, проверяется вся рабочая область)
      • severities (необязательно): Массив уровней серьезности для включения (0=Ошибка, 1=Предупреждение, 2=Информация, 3=Подсказка). По умолчанию: [0, 1]
      • format (необязательно): Формат вывода («текст» или «json»). По умолчанию: «текст»
      • includeSource (необязательно): Включать ли источник диагностики. По умолчанию: true

    Этот инструмент особенно полезен для:

    • Проверка качества кода перед внесением изменений
    • Проверка исправлений устранила все выявленные проблемы
    • Выявление проблем в отдельных файлах или во всем рабочем пространстве

Инструменты для работы с символами

  • search_symbols_code : Поиск символов по всему рабочему пространству.
    • Параметры:
      • query : Поисковый запрос для имен символов
      • maxResults (необязательно): максимальное количество возвращаемых результатов (по умолчанию: 10)

    Этот инструмент полезен для:

    • Поиск определений символов (функций, классов, переменных и т. д.) в кодовой базе
    • Изучение структуры и организации проекта
    • Поиск определенных элементов по имени
  • get_symbol_definition_code : Получает информацию об определении символа в файле
    • Параметры:
      • path : Путь к файлу, содержащему символ.
      • line : номер строки символа
      • symbol : Имя символа, которое нужно найти в указанной строке.

    Этот инструмент обеспечивает:

    • Информация о типах, документация и исходные данные для символов
    • Контекст кода, показывающий строку, где появляется символ
    • Информация о диапазоне символов

    Это особенно полезно для:

    • Понимание того, что представляет собой символ, без перехода на другую страницу
    • Проверка сигнатур функций, определений типов или документации
    • Краткий справочник по API и библиотечным функциям

Инструменты Shell

  • execute_shell_command_code : выполняет команду оболочки в интегрированном терминале VS Code с интеграцией оболочки
    • Параметры:
      • command : Команда оболочки для выполнения
      • cwd (необязательно): Необязательный рабочий каталог для команды (по умолчанию: '.')

    Этот инструмент полезен для:

    • Выполнение команд CLI и операций сборки
    • Выполнение команд git
    • Выполнение любых операций оболочки, требующих доступа к терминалу
    • Получение вывода команды для анализа и дальнейшей обработки

Предостережения/TODO

В настоящее время поддерживается только одно рабочее пространство. Расширение также работает только локально, чтобы не подвергать ваш экземпляр VS Code какой-либо сети, к которой вы можете быть подключены.

Настройки расширения

Это расширение вносит следующие настройки:

  • vscode-mcp-server.port : Номер порта для сервера MCP (по умолчанию: 3000)

Использование с клиентами MCP

Чтобы подключить клиентов MCP к этому серверу, настройте их на использование:

http://localhost:3000/mcp

Помните, что сначала вам необходимо включить сервер, нажав на соответствующий элемент в строке состояния!

Внося вклад

Вклады приветствуются! Не стесняйтесь отправлять вопросы или запросы на включение.

Лицензия

Массачусетский технологический институт

Related MCP Servers

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/juehang/vscode-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server