Skip to main content
Glama
pulumi

@pulumi/mcp-server

Official
by pulumi

Пулуми MCP Сервер

Примечание: Этот сервер MCP в настоящее время находится в стадии активной разработки. Его API (включая доступные команды и их аргументы) является экспериментальным и может вносить критические изменения без уведомления. Пожалуйста, отправьте запрос на GitHub , если вы столкнулись с ошибками или вам нужна поддержка для дополнительных команд Pulumi.

Сервер, реализующий протокол контекста модели (MCP) для взаимодействия с Pulumi CLI с использованием Pulumi Automation API и Pulumi Cloud API.

Этот пакет позволяет клиентам MCP выполнять операции Pulumi, такие как получение информации о пакете, предварительный просмотр изменений, развертывание обновлений и получение выходных данных стека программным способом, без необходимости установки Pulumi CLI непосредственно в клиентской среде.

Использование

На вашем компьютере должен быть установлен Pulumi CLI.

Этот пакет в первую очередь предназначен для интеграции в приложения, которые могут использовать серверы MCP в качестве инструментов AI. Например, вот как можно включить сервер Pulumi MCP в файл конфигурации MCP рабочего стола Claude:

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

Или, если вы предпочитаете HTTP с событиями, отправленными сервером (SSE), вместо stdio :

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

Related MCP server: mcp-perplexity

Контейнер Docker

Вы также можете запустить Pulumi MCP Server как контейнер Docker. Такой подход устраняет необходимость установки Node.js и зависимостей пакетов непосредственно на хост-машине.

Строительство контейнера

Чтобы построить контейнер:

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

Использование с клиентами MCP

Чтобы использовать контейнерный сервер с клиентами MCP, вам нужно настроить клиент на использование контейнера Docker. Например, в конфигурации MCP рабочего стола Claude:

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

Использование с клиентами MCP по HTTP (SSE)

Чтобы использовать контейнерный сервер с клиентами MCP по HTTP (SSE), вы можете запустить контейнер с помощью следующей команды:

{
  "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 .

Доступные команды

Сервер предоставляет обработчики для следующих операций Pulumi, вызываемых через запросы MCP:

  • 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, включая его входные и выходные данные.

    • provider (строка, обязательно): поставщик облачных услуг (например, «aws», «azure», «gcp», «random») или github.com/org/repo для компонентов, размещенных на Git.

    • module (строка, необязательно): модуль для запроса (например, «s3», «ec2», «lambda»).

    • resource (строка, обязательно): Имя типа ресурса (например, «Корзина», «Функция», «Экземпляр»).

  • list-resources : список доступных ресурсов в пакете поставщика Pulumi, опционально отфильтрованный по модулю.

    • provider (строка, обязательно): поставщик облачных услуг (например, «aws», «azure», «gcp», «random») или github.com/org/repo для компонентов, размещенных на Git.

    • module (строка, необязательно): модуль для фильтрации (например, «s3», «ec2», «lambda»).

Разработка

  1. Клонируйте репозиторий.

  2. Установите зависимости: make ensure

  3. Собрать проект: make build

  4. Протестируйте проект: make test

Лицензия

Этот проект лицензирован по лицензии Apache-2.0. Подробности смотрите в файле LICENSE .

Install Server
-
license - not tested
B
quality
-
maintenance - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform

  • A MCP server built for developers enabling Git based project management with project and personal…

  • MCP server for Blockscout

View all MCP Connectors

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