m365-pnp-cli

CLI for Microsoft 365 - Manage Microsoft 365 tenant, SharePoint Online, Teams, OneDrive, and more. Official PnP (Patterns and Practices) CLI.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "m365-pnp-cli" with this command: npx skills add thomyg/m365-pnp-cli

m365-pnp-cli Skill

This skill provides access to the CLI for Microsoft 365 – the official PnP (Patterns and Practices) tool for Microsoft 365 management.

⚠️ IMPORTANT FOR AGENTS

When in doubt, ALWAYS call m365 --help first to see all possibilities!

# Always call help when unsure!
m365 --help

# For specific commands:
m365 login --help
m365 spo --help
m365 teams --help

Installation

The CLI must be installed:

npm install -g @pnp/cli-microsoft365

Or use npx (sandbox):

npx @pnp/cli-microsoft365 --help

Source & Verification

What can the CLI do?

Supported Workloads

  • Microsoft Teams
  • SharePoint Online
  • OneDrive
  • Outlook
  • Microsoft To Do
  • Microsoft Planner
  • Power Automate
  • Power Apps
  • Microsoft Entra ID
  • Microsoft Purview
  • Bookings
  • And more...

Authentication

  • Device Code (default)
  • Username/Password
  • Client Certificate
  • Client Secret
  • Azure Managed Identity
  • Federated Identity

Commands (Overview)

Login/Logout

m365 login                    # Device Code Login
m365 logout                  # Logout
m365 status                  # Check login status

SharePoint Online (spo)

m365 spo site list           # List all sites
m365 spo site get --url <url>  # Get site details
m365 spo list list --webUrl <url>  # Lists in a site
m365 spo file list           # List files
m365 spo folder add          # Create folder

Teams

m365 teams channel list       # List channels
m365 teams channel get       # Get channel details
m365 teams user list         # List team members
m365 teams chat list         # List chats
m365 teams meeting list      # List meetings

OneDrive

m365 onedrive drive list    # OneDrive Drives
m365 onedrive file list     # List files
m365 onedrive file get      # Get file content

Outlook

m365 outlook mail list       # List emails
m365 outlook calendar list   # List calendar events

Planner

m365 planner task list       # Planner Tasks
m365 planner plan get        # Get plan details

Azure AD / Entra ID

m365 entra user list         # List users
m365 entra group list        # List groups
m365 entra app list          # List apps

Usage as Assistant - IMPORTANT

⚡ First Step: ALWAYS call help!

# When in doubt - call help first!
m365 --help

# For specific commands:
m365 spo --help
m365 teams --help
m365 login --help

Basic Usage

# Login (Device Code Flow)
m365 login

# Check status
m365 status

# SharePoint: List sites
m365 spo site list

# SharePoint: Get specific site
m365 spo site get --url "https://contoso.sharepoint.com/sites/test"

# Teams: List channels
m365 teams channel list --teamId <team-id>

# OneDrive: Files
m365 onedrive file list

# Outlook: Emails
m365 outlook mail list --folder Inbox

# Planner: Tasks
m365 planner task list

Output Options

# As JSON (default)
m365 spo site list

# As text
m365 spo site list --output text

# Filter with JMESPath
m365 spo site list --query "[?Template==\`GROUP#0\`].{Title:Title, Url:Url}"

Authentication

The CLI uses Device Code Flow by default:

m365 login
# → You'll receive a code on another device
# → Use that code to authenticate with Microsoft

For automated scripts, you can also use:

  • Certificate (recommended for production)
  • Client Secret (less secure)
  • Username/Password (testing only)

Important

  • WHEN IN DOUBT: call m365 --help!
  • Login required for most commands
  • JSON output is easiest to parse
  • JMESPath for efficient filtering
  • CLI requires Node.js >= 20

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Deno A Secure Runtime For Javascript And Typescript

Deno integration. Manage data, records, and automate workflows. Use when the user wants to interact with Deno data.

Registry SourceRecently Updated
Coding

Dialmycalls

DialMyCalls integration. Manage Accounts, Contacts, Recordings, Shortcodes, Keywords, Broadcasts. Use when the user wants to interact with DialMyCalls data.

Registry SourceRecently Updated
Coding

Agentskill

Analyze a code repository and synthesize an AGENTS.md.

Registry SourceRecently Updated
Coding

Credit Repair Cloud

Credit Repair Cloud integration. Manage Users, Clients, Affiliates, Providers, Disputes, Products and more. Use when the user wants to interact with Credit R...

Registry SourceRecently Updated
1700Profile unavailable