NPM Helper MCP

MIT License
367
1
  • Linux
  • Apple

Integrations

  • Supports Bun as a package manager option for dependency updating and package management operations

  • Supports Deno as a package manager option for dependency updating and package management operations

  • Offers example functionality for managing and updating Lodash dependencies in JavaScript projects

📦 NPM Helper - AI 어시스턴트가 npm 패키지 관리를 할 수 있도록 도와주는 도구입니다.🤖

NPM 종속성 관리를 위한 모델 컨텍스트 프로토콜 서버입니다. 이 서버는 NPM 패키지 검색 도구와 npm 패키지 업데이트 도구를 제공하여 프로젝트의 종속성이 최신 상태로 유지되고 충돌이나 문제 없이 최신 호환 버전으로 업데이트되도록 보장합니다.

기본적으로 모든 프로젝트의 package.json 파일을 안전하게 업그레이드하려면 어시스턴트가 'peer' 매개변수를 true로 설정하고 upgradePackagets 도구를 호출할 수 있습니다. 이렇게 하면 모든 종속성이 최신 버전으로 업데이트되지는 않지만, 오류 없이 최신 호환 버전으로 안전하게 업그레이드됩니다.

모든 종속성을 완전히 업그레이드하려는 경우, 어시스턴트는 안전하게 탐색할 수 있는 다양한 도구와 매개변수를 제공합니다. 매개변수 옵션과 예시는 아래 "사용 가능한 도구" 섹션에서 확인할 수 있습니다. '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 구성 파일이나 서버 실행 명령을 입력할 수 있는 공간이 있습니다. 대부분의 경우 이 두 가지 옵션 중 하나를 사용하면 됩니다.

옵션 1: npx로 실행

서버를 사용하는 가장 쉬운 방법은 로컬 설치 없이 npx로 실행하는 것입니다. MCP 클라이언트에 따라 다음 두 가지 방법 중 하나를 사용하세요.

  1. json 구성을 복사하여 애플리케이션의 mcp 구성 파일에 붙여넣습니다.

지엑스피1

  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)을 따르므로 Claude와 같은 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 (필수): npm 패키지 페이지의 URL

예:

{ "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 이슈를 확인하세요.
  • 문제에 대한 자세한 설명과 함께 새로운 이슈를 생성하세요.

📄 라이센스

MIT

🙏 크레딧

Pink Pixel에서 ❤️로 만들었습니다

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

종속성 검색, 업데이트, 충돌 해결, 버전 관리 등 NPM 패키지 관리를 위한 도구를 제공하는 모델 컨텍스트 프로토콜 서버로, AI 어시스턴트가 프로젝트 종속성을 안전하게 업그레이드할 수 있도록 지원합니다.

  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 that integrates with Linear, enabling AI assistants to create, update, search, and comment on issues for project management and issue tracking.
    Last updated -
    5
    6
    Python
    Apache 2.0
  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server that enables AI agents to retrieve and understand entire codebases at once, providing tools to analyze local workspaces or remote GitHub repositories.
    Last updated -
    9
    TypeScript
    MIT License
    • Linux
    • Apple
  • 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

ID: 4qbql03398