# Send Microsoft 365 Integration to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "ms365",
    "name": "Microsoft 365 Integration",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/cvsloane/ms365",
    "canonicalUrl": "https://clawhub.ai/cvsloane/ms365",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/ms365",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=ms365",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "ms365_cli.py",
      "README.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "ms365",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T09:19:57.811Z",
      "expiresAt": "2026-05-07T09:19:57.811Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=ms365",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=ms365",
        "contentDisposition": "attachment; filename=\"ms365-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "ms365"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/ms365"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/ms365",
    "downloadUrl": "https://openagent3.xyz/downloads/ms365",
    "agentUrl": "https://openagent3.xyz/skills/ms365/agent",
    "manifestUrl": "https://openagent3.xyz/skills/ms365/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/ms365/agent.md"
  }
}
```
## Documentation

### Description

Access Microsoft 365 services - Email (Outlook), Calendar, OneDrive, To Do tasks, and Contacts via MS Graph API.

### Activation

Activated when user mentions: outlook, email, calendar, onedrive, microsoft, office 365, o365, ms365, my meetings, my emails, schedule meeting, send email, check calendar, to do, microsoft tasks

### Configuration

Authentication is cached after first login. No environment variables required for device code flow.

For headless/automated operation, set these environment variables:

MS365_MCP_CLIENT_ID - Azure AD app client ID
MS365_MCP_CLIENT_SECRET - Azure AD app secret
MS365_MCP_TENANT_ID - Tenant ID (use "consumers" for personal accounts)

### Authentication

# Login via device code (interactive)
python3 /root/clawd/skills/ms365/ms365_cli.py login

# Check authentication status
python3 /root/clawd/skills/ms365/ms365_cli.py status

# List cached accounts
python3 /root/clawd/skills/ms365/ms365_cli.py accounts

# Get current user info
python3 /root/clawd/skills/ms365/ms365_cli.py user

### Email (Outlook)

# List recent emails
python3 /root/clawd/skills/ms365/ms365_cli.py mail list [--top N]

# Read specific email
python3 /root/clawd/skills/ms365/ms365_cli.py mail read MESSAGE_ID

# Send email
python3 /root/clawd/skills/ms365/ms365_cli.py mail send --to "recipient@example.com" --subject "Subject" --body "Message body"

### Calendar

# List upcoming events
python3 /root/clawd/skills/ms365/ms365_cli.py calendar list [--top N]

# Create event
python3 /root/clawd/skills/ms365/ms365_cli.py calendar create --subject "Meeting" --start "2026-01-15T10:00:00" --end "2026-01-15T11:00:00" [--body "Description"] [--timezone "America/Chicago"]

### OneDrive Files

# List files in root
python3 /root/clawd/skills/ms365/ms365_cli.py files list

# List files in folder
python3 /root/clawd/skills/ms365/ms365_cli.py files list --path "Documents"

### To Do Tasks

# List task lists
python3 /root/clawd/skills/ms365/ms365_cli.py tasks lists

# Get tasks from a list
python3 /root/clawd/skills/ms365/ms365_cli.py tasks get LIST_ID

# Create task
python3 /root/clawd/skills/ms365/ms365_cli.py tasks create LIST_ID --title "Task title" [--due "2026-01-20"]

### Contacts

# List contacts
python3 /root/clawd/skills/ms365/ms365_cli.py contacts list [--top N]

# Search contacts
python3 /root/clawd/skills/ms365/ms365_cli.py contacts search "John"

### Usage Examples

User: "Check my outlook email"
Agent: Runs mail list --top 10 command

User: "What meetings do I have today?"
Agent: Runs calendar list command

User: "Send an email to john@company.com about the project update"
Agent: Runs mail send with appropriate parameters

User: "Show my OneDrive files"
Agent: Runs files list command

User: "Add a task to review the budget"
Agent: Lists task lists first, then creates task in appropriate list

### Prompts

When helping with Microsoft 365:

Use the ms365_cli.py script for all operations
Check authentication status first if commands fail
If not logged in, guide user through device code login
For calendar events, use ISO 8601 datetime format
Default timezone is America/Chicago
When sending email, confirm recipient and content before sending
For tasks, list available task lists first so user can choose

### Attribution

This skill uses the ms-365-mcp-server by Softeria.

NPM Package: @softeria/ms-365-mcp-server
GitHub: https://github.com/Softeria/ms-365-mcp-server
License: MIT
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: cvsloane
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T09:19:57.811Z
- Expires at: 2026-05-07T09:19:57.811Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/ms365)
- [Send to Agent page](https://openagent3.xyz/skills/ms365/agent)
- [JSON manifest](https://openagent3.xyz/skills/ms365/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/ms365/agent.md)
- [Download page](https://openagent3.xyz/downloads/ms365)