Receber por email
← Voltar para o catálogo

cipp-licenses

Utilize esta skill para gerenciar atribuições de licenças M365 e inventário de licenças CSP via CIPP, listando o uso por tenant, identificando licenças não utilizadas e exibindo SKUs disponíveis. Ela também gera relatórios de otimização de licenças para faturamento de MSP.

31estrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: Apache-2.0

Como adicionar

/plugin marketplace add wyre-technology/msp-claude-plugins

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/cipp-licenses/svg)](https://www.skillteca.com.br/skills/cipp-licenses)
#ai

Skills relacionadas

Ver todas de Documentos →

Alerta por categoria

Receba novas skills de Documentos toda segunda

1 email curto, só com as skills novas de Documentos. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

CIPP Licenses

License visibility across managed tenants. Two tools cover the read surface: per-tenant assignment + usage, and portfolio CSP inventory. License changes (assigning, removing) flow through cipp_create_user, cipp_offboard_user, or the M365 plugin — this skill is read-only.

Tools

cipp_list_licenses

cipp_list_licenses(tenantFilter='contoso.onmicrosoft.com')

Returns every SKU in the tenant with skuPartNumber, friendly name, prepaidUnits.enabled (purchased), consumedUnits (assigned), and per-SKU service plan detail. The gap between purchased and consumed is your unused-license inventory.

cipp_list_csp_licenses

cipp_list_csp_licenses()

Portfolio-wide view of CSP (Cloud Solution Provider) license commitments — what the MSP owns across all tenants. Use to reconcile what's deployed against what's billed.

Common SKU reference

| Part number | Friendly | Notes | |-------------|----------|-------| | O365_BUSINESS_PREMIUM | M365 Business Premium | SMB sweet spot — Exchange + EMS basics | | SPB | M365 Business Premium (legacy code) | Same as above on older tenants | | SPE_E3 | M365 E3 | Mid-market, includes Intune + EMS | | SPE_E5 | M365 E5 | E3 + Defender + advanced compliance | | ENTERPRISEPACK | Office 365 E3 | Apps + Exchange + SharePoint, no EMS | | EMS / EMSPREMIUM | EMS E3 / E5 | Identity + device management add-on | | AAD_PREMIUM / AAD_PREMIUM_P2 | Entra ID P1 / P2 | Conditional access requires P1+ | | EXCHANGESTANDARD | Exchange Online Plan 1 | Mail-only, no Office apps | | MCOMEETADV | Teams Audio Conferencing | Per-user PSTN dial-in |

Workflow patterns

Unused-license report (single tenant)

licenses = cipp_list_licenses(tenantFilter='contoso.onmicrosoft.com')
unused = [
    {
        'sku': sku['skuPartNumber'],
        'purchased': sku['prepaidUnits']['enabled'],
        'consumed': sku['consumedUnits'],
        'unused': sku['prepaidUnits']['enabled'] - sku['consumedUnits']
    }
    for sku in licenses
    if sku['prepaidUnits']['enabled'] - sku['consumedUnits'] > 0
]

Anything with > 3 unused licenses or > 10% unused is worth flagging in the next QBR.

Portfolio license-mix audit

For each tenant in cipp_list_tenants, call cipp_list_licenses and tally SKUs. Cross-reference against cipp_list_csp_licenses. Mismatches signal:

  • Tenants on direct-billing where the MSP isn't earning CSP margin
  • CSP licenses purchased but not yet assigned to any tenant
  • Licenses assigned in a tenant without a corresponding CSP reservation (overage billing risk)

License-mix red flags

| Pattern | Concern | |---------|---------| | Tenant has E3 + EMS E3 separately | Should be on M365 E3 — bundle is cheaper | | Multiple Business Premium tenants > 300 users | Above 300, E3 typically wins on TCO | | Entra ID P1 absent but conditional access deployed | CA requires P1; tenant is using a feature not licensed | | Defender for Office not assigned but standards expect it | Standards will report failures until licensing is fixed |

Caveats

  • License write operations (assign/remove SKU) aren't in the MCP surface — use cipp_create_user (assigns at create time), cipp_offboard_user with removeLicenses=true, or fall back to the M365 plugin / Graph for runtime changes.
  • consumedUnits can lag the live tenant by minutes; trust the tenant UI for time-sensitive decisions.
Compartilhar X LinkedIn