NPM Helper MCP
📦 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.
Related MCP server: NPM Sentinel MCP
📋 Предварительные условия
Прежде чем начать, убедитесь, что у вас установлено следующее:
Node.js (версия 18.x или более поздняя)
npm (версия 8.x или более поздняя)
🔧 Конфигурация
Сервер npm-helper-mcp реализует протокол контекста модели, который позволяет ему взаимодействовать с приложениями LLM, поддерживающими этот протокол.
Конфигурация различается в зависимости от приложения. Как правило, большинство клиентских приложений mcp имеют файл конфигурации .json или место для ввода команды для запуска сервера. Один из этих 2 вариантов должен работать в большинстве случаев.
Вариант 1: Запуск с npx
Самый простой способ использовать сервер — запустить его с помощью npx, который не требует локальной установки. В зависимости от вашего клиента mcp используйте один из следующих 2 методов:
Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
{
"mcpServers": {
"npm-helper": {
"command": "npx",
"args": [
"-y",
"@pinkpixel/npm-helper-mcp"
]
}
}
}Введите команду для запуска сервера в настройках конфигурации mcp вашего приложения.
npx -y @pinkpixel/npm-helper-mcpВариант 2: Локальная установка
Если вы предпочитаете установить сервер локально, вы можете сделать это с помощью следующей команды:
# Install the package globally
npm install -g npm-helper-mcpКонфигурация:
Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
{
"mcpServers": {
"npm-helper": {
"command": "npx",
"args": [
"-y",
"@pinkpixel/npm-helper-mcp"
]
}
}
}Введите команду для запуска сервера в настройках конфигурации mcp вашего приложения.
npm-helper-mcpВариант 3: Установка из исходного кода
# Clone the repository
git clone https://github.com/pinkpixel-dev/npm-helper-mcp.git
cd npm-helper-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Optionally run/test the server
npm startКонфигурация:
Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
{
"mcpServers": {
"npm-helper": {
"command": "node",
"args": [
"/path/to/npm-helper-mcp/dist/index.js"
]
}
}
}Введите команду для запуска сервера в настройках конфигурации mcp вашего приложения.
node /path/to/npm-helper-mcp/dist/index.jsИспользование с 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)
Пример:
{
"name": "check_updates",
"arguments": {
"packagePath": "./package.json",
"filter": ["react", "lodash"],
"peer": true,
"minimal": true,
"packageManager": "npm"
}
}Инструмент: upgrade_packages
Обновляет зависимости до последних версий.
Параметры:
packagePath(необязательно): путь к файлу package.json (по умолчанию: ./package.json)upgradeType(необязательно): Целевая версия для обновления (последняя, новейшая, лучшая, младшая, исправленная, semver)interactive(необязательно): включить интерактивный режим для выбора обновленийpeer(необязательно): проверка зависимостей peer установленных пакетовminimal(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
{
"name": "upgrade_packages",
"arguments": {
"upgradeType": "minor",
"peer": true,
"minimal": true,
"packageManager": "yarn"
}
}Инструмент: filter_updates
Проверяет обновления для определенных пакетов.
Параметры:
packagePath(необязательно): путь к файлу package.json (по умолчанию: ./package.json)filter(обязательно): Список имен пакетов для проверкиupgrade(необязательно): обновлять ли файл package.json или просто проверитьminimal(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
{
"name": "filter_updates",
"arguments": {
"filter": ["react", "react-dom"],
"upgrade": false,
"minimal": true
}
}Инструмент: resolve_conflicts
Обрабатывает конфликты зависимостей с использованием одноранговых зависимостей.
Параметры:
packagePath(необязательно): путь к файлу package.json (по умолчанию: ./package.json)upgrade(необязательно): обновлять ли файл package.json или просто проверитьminimal(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
{
"name": "resolve_conflicts",
"arguments": {
"upgrade": true,
"packageManager": "npm"
}
}Инструмент: set_version_constraints
Настраивает правила обновления версии.
Параметры:
packagePath(необязательно): путь к файлу package.json (по умолчанию: ./package.json)target(обязательно): стратегия ограничения целевой версии (последняя, новейшая, наибольшая, младшая, исправленная, semver)removeRange(необязательно): Удалить диапазоны версий из финальной версии пакета.upgrade(необязательно): обновлять ли файл package.json или просто проверитьminimal(необязательно): не обновлять новые версии, которые уже удовлетворяют диапазону версийpackageManager(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
{
"name": "set_version_constraints",
"arguments": {
"target": "minor",
"removeRange": false,
"upgrade": true,
"packageManager": "pnpm"
}
}Инструмент: run_doctor
Итеративно устанавливает обновления и запускает тесты для выявления ломающихся обновлений. Он автоматически отменяет ломающиеся обновления и сохраняет работающие.
Параметры:
packagePath(необязательно): путь к файлу package.json (по умолчанию: ./package.json)doctorInstall(необязательно): Пользовательский скрипт установки для использования (по умолчанию: «npm install» или «yarn»)doctorTest(необязательно): Пользовательский тестовый скрипт для использования (по умолчанию: «npm test»)packageManager(необязательно): менеджер пакетов для использования (npm, yarn, pnpm, deno, bun, staticRegistry)
Пример:
{
"name": "run_doctor",
"arguments": {
"packagePath": "./package.json",
"doctorInstall": "npm ci",
"doctorTest": "npm run test:ci",
"packageManager": "npm"
}
}Инструмент: search_npm
Поиск пакетов npm.
Параметры:
query(обязательно): Поисковый запрос для пакетов npmmaxResults(необязательно): максимальное количество возвращаемых результатов (по умолчанию: 10)
Пример:
{
"name": "search_npm",
"arguments": {
"query": "react state management",
"maxResults": 5
}
}Инструмент: fetch_package_content
Извлечение и анализ подробного содержимого со страницы пакета npm.
Параметры:
url(обязательно): URL страницы пакета npm
Пример:
{
"name": "fetch_package_content",
"arguments": {
"url": "https://www.npmjs.com/package/react"
}
}Инструмент: get_package_versions
Получает доступные версии для пакета npm.
Параметры:
packageName(обязательно): Имя пакета npm
Пример:
{
"name": "get_package_versions",
"arguments": {
"packageName": "react"
}
}Инструмент: get_package_details
Получает подробную информацию о пакете npm.
Параметры:
packageName(обязательно): Имя пакета npm
Пример:
{
"name": "get_package_details",
"arguments": {
"packageName": "react"
}
}📝 Формат ответа
Все инструменты возвращают ответы в стандартном формате:
{
"status": "success" | "error",
"data": {}, // Tool-specific data
"message": "Human-readable message"
}🆘 Устранение неполадок
Проблемы с подключением**:
Убедитесь, что ваше приложение LLM правильно настроено для использования протокола контекста модели.
Проверьте файл .json на наличие ошибок или убедитесь, что команда запуска верна.
Если работаете локально, проверьте путь к файлу index.js. При необходимости используйте абсолютные пути.
Получение помощи
Если у вас возникли проблемы, не описанные здесь:
Проверьте GitHub на наличие похожих проблем и решений.
Создайте новую тему с подробным описанием вашей проблемы.
📄 Лицензия
Массачусетский технологический институт
🙏 Кредиты
Сделано с ❤️ Pink Pixel
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/pinkpixel-dev/npm-helper-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server