Pulumi MCP 服务器是一个实现 模型上下文协议 (MCP) 的服务器,可通过 Pulumi 自动化 API 和 Pulumi 云 API 与 Pulumi CLI 进行交互。它允许 MCP 客户端在不直接安装 Pulumi CLI 的情况下,执行诸如检索包信息、预览更改、部署更新和检索堆栈输出等操作。
⚠️ 重要提示
当前正在积极开发此 MCP 服务器。其 API(包括可用命令及其参数)处于实验阶段,可能会在没有通知的情况下引入破坏性更改。如果您遇到问题或需要支持其他 Pulumi 命令,请在 GitHub 上报告问题。
使用 Pulumi MCP 服务器前,必须在您的机器上安装 Pulumi CLI。此包主要用于将 MCP 服务器集成到可以使用 MCP 的应用程序中。
以下是如何在 Claude 桌面的 MCP 配置文件中包含 Pulumi MCP 服务器:
{
"mcpServers": {
"pulumi": {
"command": "npx",
"args": ["@pulumi/mcp-server@latest"]
}
}
}
您还可以将 Pulumi MCP 服务器作为 Docker 容器运行,此方法可消除在主机机器上直接安装 Node.js 和包依赖项的需要。
要构建容器,可使用以下命令:
docker build -t pulumi/mcp-server:latest .
要将容器化服务器与 MCP 客户端一起使用,您需要配置客户端以使用 Docker 容器。
在 Claude 桌面的 MCP 配置中:
{
"mcpServers": {
"pulumi": {
"command": "docker",
"args": ["run", "-i", "--rm", "pulumi/mcp-server:latest"]
}
}
}
对于需要访问本地 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,显示新基础设施操作的结果。up:运行 pulumi up,部署新的和修改的资源。down:运行 pulumi down,拆除所有资源。destroy:运行 pulumi destroy,销毁所有资源。introspect:运行 pulumi introspect,显示当前堆栈的状态。validate:运行 pulumi validate,验证配置是否有效且可以使用。若要进行开发,可按照以下步骤操作:
make ensuremake buildmake test此项目根据 Apache - 2.0 许可证发布。有关详细信息,请参阅 LICENSE 文件。