Skip to main content
Glama

Deploy a solution to another environment (1:1)

cs_deploy_solution

Imports a Power Platform solution into a target environment using deployment settings, then publishes every Copilot Studio agent from that solution.

Instructions

pac solution import into the target environment using the deployment settings file, then publish every Copilot Studio agent from the solution. Source: a zip, or a solutionDir from cs_pull_solution (managed zip preferred when present unless unmanaged: true), or an unpacked srcFolder (packed first). Blocks when connection references or environment variables are unmapped unless allowUnmapped. Requires confirm: true.

Input Schema

NameRequiredDescriptionDefault
zipNo
confirmNoRequired to actually perform a change in a live environment. Without it the tool returns a dry run.
srcFolderNoUnpacked solution folder to pack and deploy
unmanagedNoWith solutionDir: deploy the unmanaged zip instead of the managed one
solutionDirNo
settingsFileNo
allowUnmappedNo
publishAgentsNoDefault true: pac copilot publish for each agent after import
forceOverwriteNo
stageAndUpgradeNo
skipLowerVersionNo
targetEnvironmentYesEnvironment id or URL to deploy into
maxAsyncWaitMinutesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.1.8
    • removedInput schema / additionalProperties
      Removed value: -false
  2. First observedv0.1.5

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden and does disclose real traits: it blocks on unmapped references, requires confirm:true to mutate (otherwise a dry run) and publishes agents by default. It stops short of auth/permission prerequisites, error semantics, or async/job behavior, so the disclosure is solid but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense paragraph, front-loaded with the core action, followed by source selection and blocking/confirm conditions. Nearly every clause carries information, though the packed sentence structure makes it slightly heavy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 13-param deployment tool with no output schema and no annotations, the description covers the main flow, source selection, blocking conditions and the confirm gate well. It omits the four undocumented flags and any indication of what the call returns, leaving modest gaps against the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 38%, so the description must compensate, and it does for most params: zip, solutionDir (from cs_pull_solution), unmanaged (true), srcFolder (packed first), settingsFile, allowUnmapped, confirm, and publishAgents. It leaves forceOverwrite, stageAndUpgrade, skipLowerVersion and maxAsyncWaitMinutes unexplained, so compensation is substantial but incomplete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource+target: 'pac solution import into the target environment ... then publish every Copilot Studio agent'. It also enumerates the accepted sources (zip, solutionDir, srcFolder) and names the sibling cs_pull_solution as the producer, so an agent can distinguish it from cs_import_solution/cs_pack_solution without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear conditional guidance: managed zip is preferred unless unmanaged:true, srcFolder is packed first, and it blocks on unmapped connection references/env vars unless allowUnmapped. It does not, however, state when to choose this over cs_import_solution or cs_deploy_pipeline, so the when-not side is left implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools