Skip to main content
Glama

Download the Teams / Microsoft 365 app package

cs_download_channel_manifest

Download the Microsoft 365/Teams app package ZIP (manifest.json plus icons) for an agent already published to that channel, for sideloading or Teams admin centre.

Instructions

Answer 'give me the Teams app package for this agent': download the channel manifest zip (manifest.json plus icons) for an agent published to the Microsoft 365 and Teams channel, the same file the portal offers as 'Download .zip', for sideloading or the Teams admin centre. Writes only the zip file; nothing in the environment changes. The agent must already be published to that channel. Follows the published Power Platform API reference; not yet verified against a live tenant.

Input Schema

NameRequiredDescriptionDefault
botIdNoAgent (bot) id. Defaults to workspace sync metadata or CPS_AGENT_ID.
channelNoChannel name; M365 is the only one the API supports today
clientIdNoEntra app (client) id for MSAL. Defaults to CPS_CLIENT_ID, then the first-party VS Code id.
tenantIdNoEntra tenant id. Defaults to the workspace sync metadata, then CPS_TENANT_ID.
workspaceNoPath to (or inside) the agent workspace. Defaults to CPS_WORKSPACE or the current directory.
outputPathNoWhere to write the zip. Default: beside the workspace, else the temp folder
environmentIdNoPower Platform environment id (GUID). Defaults to workspace sync metadata or CPS_ENVIRONMENT_ID.
includeAgentSchemaNoAlso put the agent schema in the package

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.8

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does so well: it discloses the write scope ('Writes only the zip file; nothing in the environment changes'), the exact artifact contents ('manifest.json plus icons'), and a candid reliability caveat ('not yet verified against a live tenant'). It does not mention the MSAL sign-in/auth state the clientId/tenantId parameters imply, which is the remaining gap.

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?

One front-loaded paragraph that opens with the user intent, then narrows to scope, side effects and the verification caveat. Dense but every clause carries information; the only mild redundancy is restating the portal's 'Download .zip' label alongside the artifact contents.

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 an 8-parameter, all-optional, no-output-schema tool, it covers the essential unknowns: prerequisite publishing state, non-destructive side effects, artifact contents, and provenance of the API contract. It could additionally state the auth/login requirement implied by the MSAL parameters, but otherwise an agent has what it needs to invoke it correctly.

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

Parameters3/5

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

Schema description coverage is 100% across all 8 parameters, so defaults, the M365 enum and environment fallbacks are already documented in the schema. The description adds only the artifact-level detail (manifest.json plus icons) and does not clarify parameter interactions or syntax beyond that, so the baseline 3 applies.

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?

States a concrete verb and resource ('download the channel manifest zip ... for an agent published to the Microsoft 365 and Teams channel') and equates it to a user-facing artifact ('the same file the portal offers as Download .zip'). This clearly separates it from packaging siblings such as cs_pack_solution or cs_pack.

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 an explicit trigger phrase ('give me the Teams app package for this agent'), the use cases (sideloading, Teams admin centre) and the hard prerequisite that the agent must already be published to that channel. It stops short of naming a sibling alternative for the non-M365 case, so it is not a full when/when-not routing statement.

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