MCP server · Engineering and operations

Pulumi MCP server

Pulumi in any MCP client, through Memtro: Pulumi does not publish this server. Memtro's Pulumi connector reads Pulumi through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.

What the model can do

Pulumi Cloud infrastructure as code: stacks by organisation, project and tag, a stack's tags and current operation, its update history (who ran what, when, with what result and how many resources changed), and the organisation audit log. Can add, change and remove stack tags, create or delete an empty stack, start a Pulumi Deployments run (update, preview, refresh, destroy, drift detection), cancel one, and pause or resume a stack's deployments.

Reads

  • pulumi_list_stacksPulumi stacks the token can see: organisation, project, stack, when it was last updated and how many resources it manages.
  • pulumi_get_stackOne Pulumi stack: its tags, current version, the id of its latest update, any operation running on it now (kind, who, since when)…
  • pulumi_stack_updatesA Pulumi stack's update history, newest first: version, kind (update, preview, refresh, destroy, import), result, message, start and end time…
  • pulumi_audit_logThe Pulumi organisation's audit log, newest first: when, the event type (e.g. stack.update, member.added), its description, who did it…

Acts, when you ask

These change something in Pulumi. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.

  • pulumi_add_stack_tagAdds a tag (name and value) to a Pulumi stack.
  • pulumi_update_stack_tagChanges the value of a tag a Pulumi stack already has.
  • pulumi_delete_stack_tagRemoves a tag from a Pulumi stack.
  • pulumi_create_stackCreates a new, empty Pulumi stack in a project, creating the project too if it does not exist, optionally with tags.
  • pulumi_delete_stackDeletes a Pulumi stack, with its update history, from Pulumi Cloud.
  • pulumi_run_deploymentStarts a Pulumi Deployments run on a stack using the stack's saved deployment settings.
  • pulumi_cancel_deploymentCancels a queued or running Pulumi Deployments run.
  • pulumi_pause_stack_deploymentsPauses Pulumi Deployments on a stack: runs already executing finish, new ones can still be queued, but none start until resumed.
  • pulumi_resume_stack_deploymentsResumes Pulumi Deployments on a paused stack.

Connect it

First connect Pulumi on Dashboard → Connections, then add Memtro to your client once. The Pulumi tools appear alongside the tools of everything else you have connected; nothing is configured per connector.

Claude Code

The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.

claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...

Cursor

Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.

{
  "mcpServers": {
    "memtro": {
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Claude Desktop

Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…

OpenCode

A remote server in opencode.json.

{
  "mcp": {
    "memtro": {
      "type": "remote",
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Pi

One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.

Any other client

Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.

Who may use it

The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Pulumi connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.

Ask it like this

  • › Who last updated the production stack, and did it succeed?
  • › When was the payments stack last deployed?
  • › Which stack updates failed this week?
  • › Run a drift check on the acme-api production stack
  • › Add a tag owner with value platform-team to the acme-api production stack

Questions

Is this an official Pulumi MCP server?
No. It is Memtro's MCP server with Memtro's Pulumi connector behind it: the connector reads Pulumi through its API with the credentials you connect on Dashboard → Connections, and Pulumi publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
What does it cost?
Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
Can it change anything in Pulumi?
Only when you ask, and only what it has been granted: add a tag (name and value) to a stack; change the value of an existing stack tag; remove a tag from a stack; create a new empty stack in a project (and the project if absent); delete a stack that no longer manages any resources; start a Pulumi Deployments run on a stack: update, preview, refresh, destroy, drift detection or remediation; cancel a queued or running deployment; pause a stack's deployments so queued runs wait; resume a stack's paused deployments so queued runs start. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
Which clients work?
Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.

Other MCP servers · Engineering and operations

Where agents remember your company

Sign in, add a provider key, create an API key and point your tools at Memtro. It takes about five minutes.

7-day free trial · card on file, nothing charged until it ends · cancel any time