使用说明
项目简介
Pulumi MCP 服务器是一个使用 Model Context Protocol (MCP) 构建的后端服务,旨在为大型语言模型 (LLM) 提供与 Pulumi 基础设施交互的能力。通过此服务器,LLM 可以获取 Pulumi 组织和 Stack 的信息,并能调用工具创建新的 Pulumi Stack。
主要功能点
- 资源管理: 将 Pulumi Stacks 作为资源暴露给 LLM 客户端,客户端可以读取指定 Pulumi 组织下的 Stacks 列表。
- 工具执行: 提供 'create-stack' 工具,允许 LLM 客户端在指定的 Pulumi 组织和项目中创建新的 Stack。
- 标准 MCP 协议: 遵循 MCP 协议标准,使用 JSON-RPC 通信,并支持 Stdio 传输协议。
安装步骤
-
克隆仓库
git clone https://github.com/dogukanakkaya/pulumi-mcp-server.git cd pulumi-mcp-server -
安装依赖 确保已安装 Node.js 和 npm,然后运行:
npm install -
配置环境变量 在项目根目录下创建 '.env' 文件,并添加 Pulumi 访问令牌。您需要从您的 Pulumi 账户获取访问令牌。
PULUMI_ACCESS_TOKEN=YOUR_PULUMI_ACCESS_TOKEN请替换 'YOUR_PULUMI_ACCESS_TOKEN' 为您的 Pulumi 访问令牌。
-
构建项目 运行以下命令编译 TypeScript 代码到 'dist' 目录:
npm run build
服务器配置
以下 JSON 配置信息用于 MCP 客户端连接 Pulumi MCP 服务器。客户端需要配置 'command' 和 'args' 以启动服务器。
{ "serverName": "Pulumi MCP Server", "command": "node", "args": ["dist/index.js"] }
- 'serverName': MCP 服务器的名称,可以自定义。
- 'command': 启动服务器的命令,这里使用 'node' 运行 JavaScript 代码。
- 'args': 命令参数,'dist/index.js' 是编译后的服务器入口文件路径。
基本使用方法
-
启动服务器 在项目根目录下,运行以下命令启动服务器:
npm run start或者直接使用 Node.js 运行编译后的文件:
node dist/index.js服务器将通过 Stdio 等待 MCP 客户端的连接和请求。
-
配置 MCP 客户端 在您的 MCP 客户端应用中,配置服务器连接信息,使用上面提供的 JSON 配置。确保客户端能够通过 Stdio 与服务器进行通信。
-
使用客户端与 Pulumi 交互 客户端连接成功后,即可向 Pulumi MCP 服务器发送 MCP 请求,例如:
- 列出 Pulumi Stacks 资源: 客户端可以请求读取 'pulumi://<organization>' 格式的资源 URI,服务器将返回指定 Pulumi 组织下的 Stacks 列表。
- 调用 'create-stack' 工具: 客户端可以调用 'create-stack' 工具,并提供 'organization', 'project', 'stackName' 等参数,以在 Pulumi 中创建新的 Stack。
请参考 Model Context Protocol (MCP) 协议文档和您的 MCP 客户端的具体使用方法,进行更详细的操作和功能探索。
信息
分类
开发者工具