M365 Calendar (Graph)
Microsoft 365 calendar automation via Microsoft Graph for both M365 Business (work/school) and M365 Home/Consumer (hotmail.com/outlook.com). Use when listing... Skill: M365 Calendar (Graph) Owner: tradmangh Summary: Microsoft 365 calendar automation via Microsoft Graph for both M365 Business (work/school) and M365 Home/Consumer (hotmail.com/outlook.com). Use when listing... Tags: latest:0.1.9 Version history: v0.1.9 | 2026-02-18T13:31:25.467Z | user Security scan coherence: document Node.js + npm install requirements; package.json already included. v0.1.8 | 2026-02-18T13:06:
Rank
62
Safety
84
Downloads
992
Updated
Oct 11, 2026
Version
0.1.9
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 992 downloads reported by the source. Last updated 10/11/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 11, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 11, 2026
- Adoption signal
- 992 downloadsadoption · observed Oct 11, 2026
- Latest release
- 0.1.9release · observed Feb 18, 2026
- Handshake status
- UNKNOWNsecurity
What changed
Newest first. Only changes that point at a source are listed.
Release 0.1.9release
Security scan coherence: document Node.js + npm install requirements; package.json already included.
Observed Feb 18, 2026 · source
Install and run
Setup complexity: low.
clawhub skill install s17aaegq3rafytyraeyc72bkjx83twpg:m365-calendar- Node.js workspace detected. Install dependencies securely: run `npm ci --ignore-scripts` to prevent post-install lifecycle triggers from running arbitrary code, then selectively audit the dependency tree.
- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-tradmangh-m365-calendar/snapshot"
Run-check
$0.02 USD1 measured facts are behind this paywall: success rate and latency, uptime and estimated cost, when not to use it, how to call it, benchmark scores.
Agents pay $0.02 in USDC. A card payment is $0.50, the smallest a card allows.
Documentation
CLAWHUB
45,060 characters of source documentation, loaded on request.
Extracted files
4 files captured from the source.
SKILL.md
--- name: m365-calendar description: MS365 / Microsoft365 calendar automation via Microsoft Graph for Microsoft 365 (M365) Business (work/school, Exchange Online) and M365 Home/Consumer (hotmail.com, outlook.com, live.com). Use when listing upcoming events, searching calendar entries (e.g. “Lunch”), checking attendee response status (accepted/declined/tentative), creating or updating meetings, moving events to a new time, or troubleshooting Graph/MSAL auth/token cache for calendar access. Related keywords: OneDrive, SharePoint, Exchange Online (calendar). Privacy note: no third-party API key is required; authentication is via your own Microsoft login (device code) and tokens are stored locally per profile. **Token cost:** ~600-1.5k tokens per use (skill body ~2-3k tokens, Graph calls + light parsing). --- # M365 Calendar (Microsoft Graph) Keep this skill lean: do the heavy lifting with the bundled scripts. ## Installation / runtime requirements - Requires **Node.js** (the scripts are Node ESM). - This skill declares its npm dependency in `package.json`. - After installing/updating the skill, install deps in the skill folder: ```bash cd skills/m365-calendar npm install ``` ## Security / boundaries - Never commit or share token caches or client secrets. - Default secret location (per machine): `~/.openclaw/secrets/m365-calendar/` ## Quick start ### 0) First question: do you want to connect **M365 Business** or **M365 Home/Consumer**? - **M365 Home/Consumer** = `hotmail.com`, `outlook.com`, `live.com` - **M365 Business** = Work/School account (Exchange Online) ### 1) Privacy / keys (important) - **No third-party API key required.** - Auth is done via **your own Microsoft login** (device code flow). - Tokens are stored **locally per profile** on the machine running OpenClaw. - By default, the setup flow does **NOT** request `offline_access` (to avoid long-lived refresh tokens on disk). Use `--offline` only if you explicitly want background refresh. ### 2) You need an **App (client) ID** You must pass `--clientId`. - **Home/Consumer:** create an app registration that allows **Personal Microsoft accounts**, and enable **public client flows**. - **Business (users without IT admin rights):** ask IT for a `clientId` + consent (see “Business note” below). ### 3) One-command setup (recommended) ```bash # Consumer / home accounts (hotmail.com / outlook.com) node skills/m365-calendar/scripts/setup.mjs \ --profile home \ --tenant consumers \ --email [email protected] \ --clientId <YOUR_APP_CLIENT_ID> \ --tz Europe/Vienna # Business / work accounts node skills/m365-calendar/scripts/setup.mjs \ --profile business \ --tenant organizations \ --email [email protected] \ --clientId <IT_PROVIDED_CLIENT_ID> \ --tz Europe/Vienna ``` ### 2) Use ```bash node skills/m365-calendar/scripts/list.mjs --profile home --when today --tz Europe/Vienna node skills/m365-calendar/scripts/list.mjs --profile home --when tomorrow --tz Europe/Vienna node
_meta.json
{
"ownerId": "kn7bazdw4mjc5hdf98zgrvcp2x808pwp",
"slug": "m365-calendar",
"version": "0.1.9",
"publishedAt": 1771421485467
}references/config.md
# Config + storage This skill keeps secrets out of git by default. ## Files For each `--profile <name>` it stores: - `~/.openclaw/secrets/m365-calendar/<profile>.json` - `clientId` (public client) - `tenant` (`organizations|consumers|common` or explicit tenantId) - `email` (optional; informational) - `scopes` (calendar delegated scopes) - `~/.openclaw/secrets/m365-calendar/<profile>-token-cache.json` - MSAL token cache (refresh token, access token, etc.) ## Why not workspace/secrets? - Skills should be shareable (e.g. Stefan) without sharing Tom’s tokens. - Storing under `~/.openclaw/secrets/` makes it per-machine. ## Tenant values - `organizations` → work/school tenants - `consumers` → personal Microsoft accounts (hotmail.com, outlook.com) - `common` → both (interactive login decides) Graph supports `Prefer: outlook.timezone="Europe/Vienna"` so returned times match local expectations.
package.json
{
"name": "m365-calendar",
"version": "0.1.0",
"private": true,
"type": "module",
"description": "OpenClaw skill: Microsoft Graph calendar automation (M365 business + consumer).",
"dependencies": {
"@azure/msal-node": "^5.0.4"
}
}AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
- Card JSON
- Facts JSON
- Snapshot JSON
- Contract JSON
- Trust JSON
- Changes JSON
- Warnings JSON
- Seen by JSON
- Disagreements JSON
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/tradmangh/skills/m365-calendar",
"sourceUrl": "https://clawhub.ai/tradmangh/skills/m365-calendar",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T21:14:05.681Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-tradmangh-m365-calendar/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-tradmangh-m365-calendar/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-11T21:14:05.681Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "992 downloads",
"href": "https://clawhub.ai/tradmangh/m365-calendar",
"sourceUrl": "https://clawhub.ai/tradmangh/m365-calendar",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T21:14:05.681Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "0.1.9",
"href": "https://clawhub.ai/tradmangh/m365-calendar",
"sourceUrl": "https://clawhub.ai/tradmangh/m365-calendar",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-02-18T13:31:25.467Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-tradmangh-m365-calendar/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-tradmangh-m365-calendar/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 0.1.9",
"description": "Security scan coherence: document Node.js + npm install requirements; package.json already included.",
"href": "https://clawhub.ai/tradmangh/m365-calendar",
"sourceUrl": "https://clawhub.ai/tradmangh/m365-calendar",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-02-18T13:31:25.467Z",
"isPublic": true
}
]
}Record generated Oct 12, 2026.
For crawlers
This page is free to read. The run-check above is the only paid part, and it answers HTTP 402 until it is paid. Everything else here is public.
- One record, as JSON: card, facts, snapshot, contract, trust, changes, warnings, seen by, disagreements.
- Every agent, one feed: /.well-known/ai-catalog.json
- What this site sells, and the price: /.well-known/x402
- Paid run-check: /api/v1/agents/clawhub-tradmangh-m365-calendar/run-check
