Skip to main content
Glama

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.

📋 Предварительные условия

Прежде чем начать, убедитесь, что у вас установлено следующее:

  • Node.js (версия 18.x или более поздняя)
  • npm (версия 8.x или более поздняя)

🔧 Конфигурация

Сервер npm-helper-mcp реализует протокол контекста модели, который позволяет ему взаимодействовать с приложениями LLM, поддерживающими этот протокол.

Конфигурация различается в зависимости от приложения. Как правило, большинство клиентских приложений mcp имеют файл конфигурации .json или место для ввода команды для запуска сервера. Один из этих 2 вариантов должен работать в большинстве случаев.

Вариант 1: Запуск с npx

Самый простой способ использовать сервер — запустить его с помощью npx, который не требует локальной установки. В зависимости от вашего клиента mcp используйте один из следующих 2 методов:

  1. Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
{ "mcpServers": { "npm-helper": { "command": "npx", "args": [ "-y", "@pinkpixel/npm-helper-mcp" ] } } }
  1. Введите команду для запуска сервера в настройках конфигурации mcp вашего приложения.
npx -y @pinkpixel/npm-helper-mcp

Вариант 2: Локальная установка

Если вы предпочитаете установить сервер локально, вы можете сделать это с помощью следующей команды:

# Install the package globally npm install -g npm-helper-mcp

Конфигурация:

  1. Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
{ "mcpServers": { "npm-helper": { "command": "npx", "args": [ "-y", "@pinkpixel/npm-helper-mcp" ] } } }
  1. Введите команду для запуска сервера в настройках конфигурации 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

Конфигурация:

  1. Скопируйте и вставьте конфигурацию json в файл конфигурации mcp вашего приложения.
{ "mcpServers": { "npm-helper": { "command": "node", "args": [ "/path/to/npm-helper-mcp/dist/index.js" ] } } }
  1. Введите команду для запуска сервера в настройках конфигурации 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 (обязательно): Поисковый запрос для пакетов npm
  • maxResults (необязательно): максимальное количество возвращаемых результатов (по умолчанию: 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

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Сервер Model Context Protocol, предоставляющий инструменты для управления пакетами NPM, включая поиск зависимостей, обновления, разрешение конфликтов и управление версиями, чтобы помочь помощникам ИИ безопасно обновлять зависимости проекта.

  1. ✨ Особенности
    1. npm-check-updates Инструменты
    2. Инструменты поиска NPM
  2. 🚀 Руководство по установке npm-helper-mcp
    1. 📋 Предварительные условия
    2. 🔧 Конфигурация
    3. Использование с LLM
    4. 📝 Формат ответа
    5. 🆘 Устранение неполадок
    6. 📄 Лицензия
    7. 🙏 Кредиты

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    A 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 -
    7
    2
    JavaScript
    MIT License
  • A
    security
    A
    license
    A
    quality
    A 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 -
    19
    215
    2
    TypeScript
    MIT License
    • Apple
    • Linux
  • -
    security
    F
    license
    -
    quality
    A 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 -
    16
    TypeScript
  • A
    security
    F
    license
    A
    quality
    A 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 -
    1
    TypeScript

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/pinkpixel-dev/npm-helper-mcp'

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