mcp-server-pacman

MIT License
4
  • Linux
  • Apple

Integrations

  • Provides capabilities to search for Docker images on Docker Hub and retrieve detailed information about specific images and tags.

  • Enables searching for JavaScript packages and retrieving detailed package information from npm registry.

  • Allows searching for Python packages and retrieving detailed package information from PyPI.

팩맨 MCP 서버

패키지 인덱스 쿼리 기능을 제공하는 모델 컨텍스트 프로토콜 서버입니다. 이 서버를 통해 LLM은 PyPI, npm, crates.io, Docker Hub, Terraform Registry와 같은 패키지 저장소에서 정보를 검색하고 가져올 수 있습니다.

사용 가능한 도구

  • search_package - 패키지 인덱스에서 패키지 검색
    • index (문자열, 필수): 검색할 패키지 인덱스("pypi", "npm", "crates", "terraform")
    • query (문자열, 필수): 패키지 이름 또는 검색 쿼리
    • limit (정수, 선택 사항): 반환할 최대 결과 수(기본값: 5, 최대값: 50)
  • package_info - 특정 패키지에 대한 자세한 정보를 가져옵니다.
    • index (문자열, 필수): 쿼리할 패키지 인덱스("pypi", "npm", "crates", "terraform")
    • name (문자열, 필수): 패키지 이름
    • version (문자열, 선택 사항): 정보를 가져올 특정 버전(기본값: 최신)
  • search_docker_image - Docker Hub에서 Docker 이미지 검색
    • query (문자열, 필수): 이미지 이름 또는 검색 쿼리
    • limit (정수, 선택 사항): 반환할 최대 결과 수(기본값: 5, 최대값: 50)
  • docker_image_info - 특정 Docker 이미지에 대한 자세한 정보를 가져옵니다.
    • name (문자열, 필수): 이미지 이름(예: 사용자/저장소 또는 라이브러리/저장소)
    • tag (문자열, 선택 사항): 특정 이미지 태그(기본값: 최신)
  • terraform_module_latest_version - Terraform 모듈의 최신 버전을 가져옵니다.
    • name (문자열, 필수): 모듈 이름(형식: 네임스페이스/이름/공급자)

프롬프트

  • 검색_파이파이
    • PyPI에서 Python 패키지 검색
    • 인수:
      • query (문자열, 필수): 패키지 이름 또는 검색 쿼리
  • pypi_info
    • 특정 Python 패키지에 대한 정보 얻기
    • 인수:
      • name (문자열, 필수): 패키지 이름
      • version (문자열, 선택 사항): 특정 버전
  • 검색_npm
    • npm에서 JavaScript 패키지 검색
    • 인수:
      • query (문자열, 필수): 패키지 이름 또는 검색 쿼리
  • npm_info
    • 특정 JavaScript 패키지에 대한 정보 가져오기
    • 인수:
      • name (문자열, 필수): 패키지 이름
      • version (문자열, 선택 사항): 특정 버전
  • 검색 상자
    • crates.io에서 Rust 패키지를 검색하세요
    • 인수:
      • query (문자열, 필수): 패키지 이름 또는 검색 쿼리
  • 상자 정보
    • 특정 Rust 패키지에 대한 정보 가져오기
    • 인수:
      • name (문자열, 필수): 패키지 이름
      • version (문자열, 선택 사항): 특정 버전
  • 검색_도커
    • Docker Hub에서 Docker 이미지 검색
    • 인수:
      • query (문자열, 필수): 이미지 이름 또는 검색 쿼리
  • 도커_인포
    • 특정 Docker 이미지에 대한 정보 가져오기
    • 인수:
      • name (문자열, 필수): 이미지 이름(예: 사용자/저장소)
      • tag (문자열, 선택 사항): 특정 태그
  • 검색_테라폼
    • Terraform 레지스트리에서 Terraform 모듈 검색
    • 인수:
      • query (문자열, 필수): 모듈 이름 또는 검색 쿼리
  • 테라폼_인포
    • 특정 Terraform 모듈에 대한 정보 가져오기
    • 인수:
      • name (문자열, 필수): 모듈 이름(형식: 네임스페이스/이름/공급자)
  • 테라폼 최신 버전
    • 특정 Terraform 모듈의 최신 버전을 받으세요
    • 인수:
      • name (문자열, 필수): 모듈 이름(형식: 네임스페이스/이름/공급자)

설치

uv 사용(권장)

uv 사용하면 별도의 설치가 필요하지 않습니다. uvx 사용하여 mcp-server-pacman을 직접 실행합니다.

PIP 사용

또는 pip를 통해 mcp-server-pacman 설치할 수 있습니다.

지엑스피1

설치 후 다음을 사용하여 스크립트로 실행할 수 있습니다.

python -m mcp_server_pacman

Docker 사용하기

Docker 이미지를 사용할 수도 있습니다.

docker pull oborchers/mcp-server-pacman:latest docker run -i --rm oborchers/mcp-server-pacman

구성

Claude.app에 대한 구성

Claude 설정에 추가:

"mcpServers": { "pacman": { "command": "uvx", "args": ["mcp-server-pacman"] } }
"mcpServers": { "pacman": { "command": "docker", "args": ["run", "-i", "--rm", "oborchers/mcp-server-pacman:latest"] } }
"mcpServers": { "pacman": { "command": "python", "args": ["-m", "mcp-server-pacman"] } }

VS Code에 대한 구성

수동 설치의 경우, VS Code의 사용자 설정(JSON) 파일에 다음 JSON 블록을 추가하세요. Ctrl + Shift + P 를 누르고 Preferences: Open User Settings (JSON) 입력하면 됩니다.

원하는 경우, 작업 공간의 .vscode/mcp.json 파일에 추가할 수 있습니다. 이렇게 하면 다른 사용자와 구성을 공유할 수 있습니다.

mcp.json 파일을 사용하려면 mcp 키가 필요합니다.

{ "mcp": { "servers": { "pacman": { "command": "uvx", "args": ["mcp-server-pacman"] } } } }
{ "mcp": { "servers": { "pacman": { "command": "docker", "args": ["run", "-i", "--rm", "oborchers/mcp-server-pacman:latest"] } } } }

사용자 정의 - 사용자 에이전트

기본적으로 서버는 사용자 에이전트를 사용합니다.

ModelContextProtocol/1.0 Pacman (+https://github.com/modelcontextprotocol/servers)

구성의 args 목록에 --user-agent=YourUserAgent 인수를 추가하여 이를 사용자 정의할 수 있습니다.

개발

테스트 실행

  • 모든 테스트를 실행합니다.
    uv run pytest -xvs
  • 특정 테스트 카테고리를 실행하세요:
    # Run all provider tests uv run pytest -xvs tests/providers/ # Run integration tests for a specific provider uv run pytest -xvs tests/integration/test_pypi_integration.py # Run specific test class uv run pytest -xvs tests/providers/test_npm.py::TestNPMFunctions # Run a specific test method uv run pytest -xvs tests/providers/test_pypi.py::TestPyPIFunctions::test_search_pypi_success
  • 코드 스타일 확인:
    uv run ruff check . uv run ruff format --check .
  • 형식 코드:
    uv run ruff format .

디버깅

MCP 검사기를 사용하여 서버를 디버깅할 수 있습니다. UVX 설치의 경우:

npx @modelcontextprotocol/inspector uvx mcp-server-pacman

또는 특정 디렉토리에 패키지를 설치했거나 해당 디렉토리에서 개발 중인 경우:

cd path/to/pacman npx @modelcontextprotocol/inspector uv run mcp-server-pacman

릴리스 프로세스

이 프로젝트에서는 자동화된 릴리스를 위해 GitHub Actions를 사용합니다.

  1. pyproject.toml 에서 버전을 업데이트하세요
  2. git tag vX.YZ 로 새 태그를 만듭니다(예: git tag v0.1.0 )
  3. git push --tags 로 태그를 푸시합니다.

이렇게 하면 자동으로 다음이 수행됩니다.

  • pyproject.toml 의 버전이 태그와 일치하는지 확인하세요.
  • 테스트 및 린트 검사 실행
  • PyPI에 빌드하고 게시
  • oborchers/mcp-server-pacman:latestoborchers/mcp-server-pacman:XYZ 로 Docker Hub에 빌드하고 게시합니다.

프로젝트 구조

코드베이스는 다음 구조로 구성됩니다.

src/mcp_server_pacman/ ├── models/ # Data models/schemas ├── providers/ # Package registry API clients │ ├── pypi.py # PyPI API functions │ ├── npm.py # npm API functions │ ├── crates.py # crates.io API functions │ ├── dockerhub.py # Docker Hub API functions │ └── terraform.py # Terraform Registry API functions ├── utils/ # Utilities and helpers │ ├── cache.py # Caching functionality │ ├── constants.py # Shared constants │ └── parsers.py # HTML parsing utilities ├── __init__.py # Package initialization ├── __main__.py # Entry point └── server.py # MCP server implementation

테스트는 비슷한 구조를 따릅니다.

tests/ ├── integration/ # Integration tests (real API calls) ├── models/ # Model validation tests ├── providers/ # Provider function tests └── utils/ # Test utilities

기여하다

mcp-server-pacman의 확장 및 개선을 위한 여러분의 참여를 기다립니다. 새로운 패키지 인덱스 추가, 기존 기능 개선, 문서 개선 등 어떤 목적이든 여러분의 의견은 소중합니다.

다른 MCP 서버 및 구현 패턴의 예는 https://github.com/modelcontextprotocol/servers를 참조하세요.

풀 리퀘스트를 환영합니다! mcp-server-pacman을 더욱 강력하고 유용하게 만들기 위한 새로운 아이디어, 버그 수정, 개선 사항을 자유롭게 공유해 주세요.

특허

mcp-server-pacman은 MIT 라이선스에 따라 라이선스가 부여됩니다. 즉, MIT 라이선스의 조건에 따라 소프트웨어를 자유롭게 사용, 수정 및 배포할 수 있습니다. 자세한 내용은 프로젝트 저장소의 LICENSE 파일을 참조하세요.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

mcp-서버-팩맨

  1. Available Tools
    1. Prompts
      1. Installation
        1. Using uv (recommended)
        2. Using PIP
        3. Using Docker
      2. Configuration
        1. Configure for Claude.app
        2. Configure for VS Code
        3. Customization - User-agent
      3. Development
        1. Running Tests
        2. Debugging
      4. Release Process
        1. Project Structure
          1. Contributing
            1. License

              Related MCP Servers

              View all related MCP servers

              ID: md47ozus83