Microsoft 365 Integration

## Description

7 stars

Best use case

Microsoft 365 Integration is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

## Description

Teams using Microsoft 365 Integration should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/ms365/SKILL.md --create-dirs "https://raw.githubusercontent.com/Demerzels-lab/elsamultiskillagent/main/public/skills/cvsloane/ms365/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/ms365/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How Microsoft 365 Integration Compares

Feature / AgentMicrosoft 365 IntegrationStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

## Description

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Microsoft 365 Integration

## 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)

## Available Commands

### Authentication

```bash
# 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)

```bash
# 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

```bash
# 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

```bash
# 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

```bash
# 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

```bash
# 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](https://www.npmjs.com/package/@softeria/ms-365-mcp-server)
- **GitHub**: https://github.com/Softeria/ms-365-mcp-server
- **License**: MIT

Related Skills

sap-integration

7
from Demerzels-lab/elsamultiskillagent

SAP system integration, data extraction, and automation for ABAP, HANA, S/4HANA environments.

kimi-integration

7
from Demerzels-lab/elsamultiskillagent

Step-by-step guide for integrating Moonshot AI (Kimi) and Kimi Code models into Clawdbot. Use when someone asks how to add Kimi models, configure Moonshot AI, or set up Kimi for Coding in Clawdbot.

ydc-openai-agent-sdk-integration

7
from Demerzels-lab/elsamultiskillagent

Integrate OpenAI Agents SDK with You.com MCP server - Hosted and Streamable HTTP support for Python and TypeScript. Use when developer mentions OpenAI Agents SDK, OpenAI agents, or integrating OpenAI with MCP.

ydc-claude-agent-sdk-integration

7
from Demerzels-lab/elsamultiskillagent

Integrate Claude Agent SDK with You.com HTTP MCP server for Python and TypeScript. Use when developer mentions Claude Agent SDK, Anthropic Agent SDK, or integrating Claude with MCP tools.

ydc-ai-sdk-integration

7
from Demerzels-lab/elsamultiskillagent

Integrate Vercel AI SDK applications with You.com tools (web search, AI agent, content extraction). Use when developer mentions AI SDK, Vercel AI SDK, generateText, streamText, or You.com integration with AI SDK.

teams-anthropic-integration

7
from Demerzels-lab/elsamultiskillagent

Use @youdotcom-oss/teams-anthropic to add Anthropic Claude models (Opus, Sonnet, Haiku) to Microsoft Teams.ai applications. Optionally integrate You.com MCP server for web search and content extraction.

microsoft-ads-mcp

7
from Demerzels-lab/elsamultiskillagent

Create and manage Microsoft Advertising campaigns (Bing Ads / DuckDuckGo Ads) via MCP server - campaigns, ad groups, keywords, ads, and reporting

self-integration

7
from Demerzels-lab/elsamultiskillagent

Connect to any external app and perform actions on it.

lark-integration

7
from Demerzels-lab/elsamultiskillagent

Connect Lark (Feishu) messaging to OpenClaw via webhook bridge. Supports text, rich text (post), and image messages bidirectionally. Use when setting up Lark/Feishu as a messaging channel, receiving messages with images, sending replies back to Lark, reading Lark documents/wikis/bitables, or troubleshooting Lark integration issues. Covers both Lark International (larksuite.com) and China Feishu (feishu.cn).

Craft.do Integration Skill

7
from Demerzels-lab/elsamultiskillagent

Complete REST API integration for Craft.do - the beautiful note-taking and document app.

paylock

7
from Demerzels-lab/elsamultiskillagent

Non-custodial SOL escrow for AI agent deals.

agent-reputation

7
from Demerzels-lab/elsamultiskillagent

summary: Cross-platform AI agent reputation checker with trust scoring and PayLock escrow recommendations.