Productivity & TasksDocumentedScanned

mogcli

Microsoft 365 CLI: Mail, Calendar, Drive, Word, Excel, OneNote.

Share:

Installation

npx clawhub@latest install mogcli

View the full skill documentation and source below.

Documentation

mog — Microsoft Ops Gadget

CLI for Microsoft 365: Mail, Calendar, OneDrive, Contacts, Tasks, Word, PowerPoint, Excel, OneNote.

The Microsoft counterpart to gog (Google Ops Gadget). Same patterns, different cloud.

Quick Reference

For comprehensive usage, run:

mog --ai-help

This outputs the full dashdash-compliant documentation including:

  • Setup/Prerequisites

  • All commands and options

  • Date/time formats

  • Examples (positive and negative)

  • Troubleshooting

  • Slug system explanation

  • gog compatibility notes


Modules

ModuleCommands
mailsearch, get, send, folders, drafts, attachment
calendarlist, create, get, update, delete, calendars, respond, freebusy, acl
drivels, search, download, upload, mkdir, move, rename, copy, rm
contactslist, search, get, create, update, delete, directory
taskslists, list, add, done, undo, delete, clear
wordlist, export, copy
pptlist, export, copy
excellist, get, update, append, create, metadata, tables, add-sheet, clear, copy, export
onenotenotebooks, sections, pages, get, create-notebook, create-section, create-page, delete, search

Quick Start

# Mail
mog mail search "from:someone" --max 10
mog mail send --to a@b.com --subject "Hi" --body "Hello"
mog mail send --to a@b.com --subject "Report" --body-file report.md
mog mail send --to a@b.com --subject "Newsletter" --body-html "<h1>Hello</h1>"
cat draft.txt | mog mail send --to a@b.com --subject "Hi" --body-file -

# Calendar
mog calendar list
mog calendar create --summary "Meeting" --from 2025-01-15T10:00:00 --to 2025-01-15T11:00:00
mog calendar freebusy alice@example.com bob@example.com

# Drive
mog drive ls
mog drive upload ./file.pdf
mog drive download <slug> --out ./file.pdf

# Tasks
mog tasks list
mog tasks add "Buy milk" --due tomorrow
mog tasks clear

# Contacts
mog contacts list
mog contacts directory "john"

# Excel
mog excel list
mog excel get <id> Sheet1 A1:D10
mog excel update <id> Sheet1 A1:B2 val1 val2 val3 val4
mog excel append <id> TableName col1 col2 col3

# OneNote
mog onenote notebooks
mog onenote search "meeting notes"

Slugs

mog generates 8-character slugs for Microsoft's long GUIDs:

  • a3f2c891 instead of AQMkADAwATMzAGZmAS04MDViLTRiNzgt...

  • All commands accept slugs or full IDs

  • Use --verbose to see full IDs


Aliases

  • mog calmog calendar
  • mog todomog tasks

Credential Storage

OAuth tokens stored in config directory (0600 permissions):

PlatformLocation
macOS~/.config/mog/
Linux~/.config/mog/
Windows%USERPROFILE%\.config\mog\
Files:
  • tokens.json - OAuth tokens (encrypted at rest by OS)
  • settings.json - Client ID
  • slugs.json - Slug cache

See Also

  • mog --ai-help - Full documentation
  • mog --help - Command-specific help