Skip to main content
Glama
pulumi
by pulumi

풀루미 MCP 서버

참고: 이 MCP 서버는 현재 활발하게 개발 중입니다. API(사용 가능한 명령 및 인수 포함)는 실험 단계이므로 예고 없이 호환성 문제가 발생할 수 있습니다. 버그가 발생하거나 추가 Pulumi 명령에 대한 지원이 필요한 경우 GitHub 에 문제를 제기해 주세요.

Pulumi Automation API와 Pulumi Cloud API를 사용하여 Pulumi CLI와 상호 작용하기 위한 MCP( Model Context Protocol )를 구현하는 서버입니다.

이 패키지를 사용하면 MCP 클라이언트가 Pulumi CLI를 클라이언트 환경에 직접 설치하지 않고도 패키지 정보 검색, 변경 사항 미리 보기, 업데이트 배포, 스택 출력 검색과 같은 Pulumi 작업을 프로그래밍 방식으로 수행할 수 있습니다.

용법

Pulumi CLI를 컴퓨터에 설치해야 합니다.

이 패키지는 주로 MCP 서버를 AI 도구로 사용할 수 있는 애플리케이션에 통합되도록 설계되었습니다. 예를 들어, Claude 데스크톱의 MCP 구성 파일에 Pulumi MCP 서버를 포함하는 방법은 다음과 같습니다.

지엑스피1

또는 stdio 대신 SSE(Server-Sent Events)를 사용한 HTTP를 선호하는 경우:

{ "mcpServers": { "pulumi": { "command": "npx", "args": ["@pulumi/mcp-server@latest","sse"] } } }

Related MCP server: mcp-perplexity

도커 컨테이너

Pulumi MCP 서버를 Docker 컨테이너로 실행할 수도 있습니다. 이 방법을 사용하면 Node.js와 패키지 종속성을 호스트 머신에 직접 설치할 필요가 없습니다.

컨테이너 만들기

컨테이너를 만들려면:

docker build -t pulumi/mcp-server:latest .

MCP 클라이언트와 함께 사용

MCP 클라이언트에서 컨테이너화된 서버를 사용하려면 Docker 컨테이너를 사용하도록 클라이언트를 구성해야 합니다. 예를 들어 Claude 데스크톱의 MCP 구성은 다음과 같습니다.

{ "mcpServers": { "pulumi": { "command": "docker", "args": ["run", "-i", "--rm", "pulumi/mcp-server:latest", "stdio"] } } }

HTTP(SSE)를 통한 MCP 클라이언트 사용

HTTP(SSE)를 통해 MCP 클라이언트와 함께 컨테이너화된 서버를 사용하려면 다음 명령을 사용하여 컨테이너를 실행할 수 있습니다.

{ "mcpServers": { "pulumi": { "command": "docker", "args": ["run", "-i", "--rm", "-p", "3000:3000", "pulumi/mcp-server:latest", "sse"] } } }

로컬 Pulumi 프로젝트에 액세스해야 하는 Pulumi 작업의 경우, 적절한 디렉터리를 마운트해야 합니다. 예를 들어, Pulumi 프로젝트가 ~/projects/my-pulumi-app 에 있는 경우:

{ "mcpServers": { "pulumi": { "command": "docker", "args": ["run", "-i", "--rm", "-v", "~/projects/my-pulumi-app:/app/project", "pulumi/mcp-server:latest"] } } }

그런 다음 MCP 도구를 사용할 때 요청에서 프로젝트 디렉토리를 /app/project 로 참조합니다.

사용 가능한 명령

서버는 MCP 요청을 통해 호출 가능한 다음 Pulumi 작업에 대한 핸들러를 제공합니다.

  • preview : 지정된 스택에서 pulumi preview 실행합니다.

    • workDir (문자열, 필수): Pulumi.yaml 프로젝트 파일이 포함된 작업 디렉토리입니다.

    • stackName (문자열, 선택 사항): 작업할 스택 이름(기본값은 'dev')

  • up : 지정된 스택에 대한 변경 사항을 배포하기 위해 pulumi up 실행합니다.

    • workDir (문자열, 필수): Pulumi.yaml 프로젝트 파일이 포함된 작업 디렉토리입니다.

    • stackName (문자열, 선택 사항): 작업할 스택 이름(기본값은 'dev')

  • stack-output : 배포가 성공적으로 완료된 후 지정된 스택에서 출력을 검색합니다.

    • workDir (문자열, 필수): Pulumi.yaml 프로젝트 파일이 포함된 작업 디렉토리입니다.

    • stackName (문자열, 선택 사항): 출력을 검색할 스택 이름(기본값은 'dev')

    • outputName (문자열, 선택 사항): 검색할 특정 스택 출력 이름입니다. 생략하면 스택의 모든 출력이 반환됩니다.

  • get-resource : 입력 및 출력을 포함하여 특정 Pulumi Registry 리소스에 대한 정보를 반환합니다.

    • provider (문자열, 필수): 클라우드 공급자(예: 'aws', 'azure', 'gcp', 'random') 또는 Git 호스팅 구성 요소의 경우 github.com/org/repo .

    • module (문자열, 선택 사항): 쿼리할 모듈(예: 's3', 'ec2', 'lambda').

    • resource (문자열, 필수): 리소스 유형 이름(예: '버킷', '함수', '인스턴스').

  • list-resources : Pulumi 공급자 패키지 내에서 사용 가능한 리소스를 나열하며, 선택적으로 모듈별로 필터링합니다.

    • provider (문자열, 필수): 클라우드 공급자(예: 'aws', 'azure', 'gcp', 'random') 또는 Git 호스팅 구성 요소의 경우 github.com/org/repo .

    • module (문자열, 선택 사항): 필터링할 모듈(예: 's3', 'ec2', 'lambda').

개발

  1. 저장소를 복제합니다.

  2. 종속성 설치: make ensure

  3. 프로젝트 빌드: make build

  4. 프로젝트 테스트: make test

특허

이 프로젝트는 Apache-2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.

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/pulumi/mcp-server'

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