📦 NPM Helper — инструмент, который поможет вашему помощнику с управлением пакетами npm.🤖
Сервер Model Context Protocol для управления зависимостями NPM. Этот сервер предоставляет инструменты для поиска пакетов NPM и инструменты для обновления пакетов npm, гарантируя, что зависимости вашего проекта будут актуальными и обновленными до последних совместимых версий, без каких-либо конфликтов или головной боли.
В качестве основы для безопасного обновления package.json любого проекта ваш помощник может вызвать инструмент upgradePackagets с параметром 'peer', установленным на true. Это, скорее всего, не обновит все ваши зависимости до последних версий, но безопасно обновит их до последних совместимых версий без каких-либо ошибок.
Если вы ищете полное обновление всех зависимостей, ваш помощник имеет много инструментов и параметров для безопасного исследования. Параметры и примеры предоставлены ниже, в разделе «Доступные инструменты». Вы также можете найти больше информации в каталоге 'docs'.
Также доступны инструменты для поиска и извлечения информации из npmjs, если вы изучаете варианты добавления новых пакетов в свой проект или ищете информацию о конкретном пакете.
✨ Особенности
npm-check-updates Инструменты
- 🔍 checkUpdates : сканирование package.json на предмет устаревших зависимостей
- 🚀 upgradePackages : обновить зависимости до последних версий
- 🔎 filterUpdates : проверка обновлений для определенных пакетов
- 🔄 resolveConflicts : Разрешение конфликтов зависимостей
- ⚙️ setVersionConstraints : Настройка правил обновления версии
- 🩺 runDoctor : итеративный запуск обновлений и тестов для обнаружения критических изменений
Инструменты поиска NPM
- 🔍 searchPackages : Поиск пакетов в реестре npmjs.org
- 📝 fetchPackageContent : извлечение и сбор контента со страниц пакетов npm
- 📋 getPackageVersions : Получить историю версий пакетов
- 📝 getPackageDetails : Извлечение подробных метаданных пакета
🚀 Руководство по установке npm-helper-mcp
Это руководство поможет вам настроить и запустить сервер npm-helper-mcp.
📋 Предварительные условия
Прежде чем начать, убедитесь, что у вас установлено следующее:
- Node.js (версия 18.x или более поздняя)
- npm (версия 8.x или более поздняя)
🔧 Конфигурация
Сервер npm-helper-mcp реализует протокол контекста модели, который позволяет ему взаимодействовать с приложениями LLM, поддерживающими этот протокол.
Конфигурация различается в зависимости от приложения. Как правило, большинство клиентских приложений mcp имеют файл конфигурации .json или место для ввода команды для запуска сервера. Один из этих 2 вариантов должен работать в большинстве случаев.
Вариант 1: Запуск с npx
Самый простой способ использовать сервер — запустить его с помощью npx, который не требует локальной установки. В зависимости от вашего клиента mcp используйте один из следующих 2 методов:
- Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
- Введите команду для запуска сервера в настройках конфигурации mcp вашего приложения.
Вариант 2: Локальная установка
Если вы предпочитаете установить сервер локально, вы можете сделать это с помощью следующей команды:
Конфигурация:
- Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
- Введите команду для запуска сервера в настройках конфигурации mcp вашего приложения.
Вариант 3: Установка из исходного кода
Конфигурация:
- Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
- Введите команду для запуска сервера в настройках конфигурации mcp вашего приложения.
Использование с LLM
Этот сервер следует протоколу Model Context Protocol, что позволяет использовать его LLM, таким как Клод. LLM может использовать инструменты сервера для выполнения различных операций npm.
Доступные инструменты
Инструмент: check_updates
Сканирует package.json на предмет устаревших зависимостей.
Параметры:
packagePath
(необязательно): путь к файлу package.json (по умолчанию: ./package.json)filter
(необязательно): список имен пакетов для проверкиreject
(необязательно): Список имен пакетов для исключенияtarget
(необязательно): Целевая версия для обновления (последняя, новейшая, лучшая, младшая, исправленная, semver)interactive
(необязательно): включить интерактивный режим для выбора обновленийpeer
(необязательно): проверка зависимостей peer установленных пакетовminimal
(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager
(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
Инструмент: upgrade_packages
Обновляет зависимости до последних версий.
Параметры:
packagePath
(необязательно): путь к файлу package.json (по умолчанию: ./package.json)upgradeType
(необязательно): Целевая версия для обновления (последняя, новейшая, лучшая, младшая, исправленная, semver)interactive
(необязательно): включить интерактивный режим для выбора обновленийpeer
(необязательно): проверка зависимостей peer установленных пакетовminimal
(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager
(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
Инструмент: filter_updates
Проверяет обновления для определенных пакетов.
Параметры:
packagePath
(необязательно): путь к файлу package.json (по умолчанию: ./package.json)filter
(обязательно): Список имен пакетов для проверкиupgrade
(необязательно): обновлять ли файл package.json или просто проверитьminimal
(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager
(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
Инструмент: resolve_conflicts
Обрабатывает конфликты зависимостей с использованием одноранговых зависимостей.
Параметры:
packagePath
(необязательно): путь к файлу package.json (по умолчанию: ./package.json)upgrade
(необязательно): обновлять ли файл package.json или просто проверитьminimal
(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager
(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
Инструмент: set_version_constraints
Настраивает правила обновления версии.
Параметры:
packagePath
(необязательно): путь к файлу package.json (по умолчанию: ./package.json)target
(обязательно): стратегия ограничения целевой версии (последняя, новейшая, наибольшая, младшая, исправленная, semver)removeRange
(необязательно): Удалить диапазоны версий из финальной версии пакета.upgrade
(необязательно): обновлять ли файл package.json или просто проверитьminimal
(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager
(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
Инструмент: run_doctor
Итеративно устанавливает обновления и запускает тесты для выявления ломающихся обновлений. Он автоматически отменяет ломающиеся обновления и сохраняет работающие.
Параметры:
packagePath
(необязательно): путь к файлу package.json (по умолчанию: ./package.json)doctorInstall
(необязательно): Пользовательский скрипт установки для использования (по умолчанию: «npm install» или «yarn»)doctorTest
(необязательно): Пользовательский тестовый скрипт для использования (по умолчанию: «npm test»)packageManager
(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
Инструмент: search_npm
Поиск пакетов npm.
Параметры:
query
(обязательно): Поисковый запрос для пакетов npmmaxResults
(необязательно): максимальное количество возвращаемых результатов (по умолчанию: 10)
Пример:
Инструмент: fetch_package_content
Извлечение и анализ подробного содержимого со страницы пакета npm.
Параметры:
url
(обязательно): URL страницы пакета npm
Пример:
Инструмент: get_package_versions
Получает доступные версии для пакета npm.
Параметры:
packageName
(обязательно): Имя пакета npm
Пример:
Инструмент: get_package_details
Получает подробную информацию о пакете npm.
Параметры:
packageName
(обязательно): Имя пакета npm
Пример:
📝 Формат ответа
Все инструменты возвращают ответы в стандартном формате:
🆘 Устранение неполадок
Проблемы с подключением**:
- Убедитесь, что ваше приложение LLM правильно настроено для использования протокола контекста модели.
- Проверьте файл .json на наличие ошибок или убедитесь, что команда запуска верна.
- Если работаете локально, проверьте путь к файлу index.js. При необходимости используйте абсолютные пути.
Получение помощи
Если у вас возникли проблемы, не описанные здесь:
- Проверьте GitHub на наличие похожих проблем и решений.
- Создайте новую тему с подробным описанием вашей проблемы.
📄 Лицензия
Массачусетский технологический институт
🙏 Кредиты
Сделано с ❤️ Pink Pixel
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Сервер Model Context Protocol, предоставляющий инструменты для управления пакетами NPM, включая поиск зависимостей, обновления, разрешение конфликтов и управление версиями, чтобы помочь помощникам ИИ безопасно обновлять зависимости проекта.
Related MCP Servers
- AsecurityAlicenseAqualityA comprehensive Model Context Protocol server that provides advanced Node.js development tooling for automating project creation, component generation, package management, and documentation with AI-powered assistance.Last updated -72JavaScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server providing utility tools for development and testing, offering functionalities like personalized greetings, random card drawing, and datetime formatting with an extensible architecture.Last updated -192152TypeScriptMIT License
- -securityFlicense-qualityA comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.Last updated -16TypeScript
- AsecurityFlicenseAqualityA Model Context Protocol server that allows AI models to fetch detailed information about npm packages and discover popular packages in the npm ecosystem.Last updated -1TypeScript