ms-outlook-teams-assistant

0
0
Source

Track and nag about Microsoft Outlook email and (optionally) Microsoft Teams messages on a Windows machine, without relying on web versions. Use when the user asks to: (1) monitor inbox/mentions and remind them on Telegram/Teams until dismissed, (2) draft short, personable, low-jargon email replies from an existing Outlook thread, (3) surface action items from the last N days (default 7). Works via Outlook Desktop automation (COM) and optionally Microsoft Graph for Teams if configured.

Install

mkdir -p .claude/skills/ms-outlook-teams-assistant && curl -L -o skill.zip "https://mcp.directory/api/skills/download/8689" && unzip -o skill.zip -d .claude/skills/ms-outlook-teams-assistant && rm skill.zip

Installs to .claude/skills/ms-outlook-teams-assistant

About this skill

MS Outlook + Teams Assistant (Desktop-first)

What this skill does

  • Inbox nagging (Outlook Desktop): find messages from the last 7 days that likely need a reply, then send reminders until dismissed.
  • Email reply drafting: produce concise drafts that match the user’s tone rules (conversational, spartan, polite; simple English; short; reduce redundancy; avoid em dashes).
  • Teams tracking (optional): if Microsoft Graph is configured and permitted by tenant policy, track recent Teams chat messages that likely need a reply and nag similarly.

Safety defaults

  • Do not auto-send emails or Teams messages.
  • Create drafts in Outlook, or paste drafts into Telegram for approval.
  • For reminders: send to Telegram by default; only send to Teams if explicitly enabled.

Setup (one time)

A) Outlook Desktop automation (recommended)

  1. Ensure Outlook Desktop is installed and signed in.
  2. Install the Python dependency (ask before doing this on the machine):
    • pip install pywin32
  3. Create a config file:
    • Copy references/config.example.jsonreferences/config.json and fill it.
    • IMPORTANT: Do not commit references/config.json if it contains personal IDs.

B) Teams via Graph (optional)

Only if you can create an Entra ID app registration and grant permissions.

  • Copy references/config.example.jsonreferences/config.json and fill teams.tenantId, teams.clientId, and teams.scopes.
  • Then run scripts/teams_scan.py once to complete Device Code sign-in.

See references/teams-graph-setup.md.

Core workflows

1) Scan and remind (Outlook)

Use scripts/scan_outlook.py.

1b) Scan Teams (Graph)

Use scripts/teams_scan.py.

Parameters:

  • --days 7 (default)

First run will print a device code sign-in message (follow it once).

Parameters:

  • --days 7 (default)
  • --mode report|telegram (default: report)
  • --max-items 200

Heuristics (editable in config):

  • Within last N days
  • Not from obvious broadcast sources
  • Prefer threads where user is To: (not only CC) OR subject/body contains direct asks
  • Prefer messages not replied by user (best-effort)

Output:

  • A list of actionable items with: subject, sender, received time, why it was flagged.

Then:

  • If --mode telegram, send a single concise reminder message with bullet items.

2) Dismiss / snooze an item

This skill uses a local state file to avoid nag loops.

  • Dismiss: add the message’s internetMessageId (or subject+timestamp fallback) to the dismissed list.
  • Snooze: store a snoozeUntil timestamp.

Use scripts/state.py helpers (or edit JSON directly if needed).

3) Draft an email reply (Outlook)

Use scripts/draft_reply.py.

4) Generate reminders (no send)

Use scripts/scan_all.py to update cached scan results, then scripts/remind.py to generate a Telegram-ready reminder message (it does not send). It applies:

  • 1:1 Teams → remind when needsReply=true
  • Group Teams → remind when mentionedMe=true AND needsReply=true
  • Outlook → remind for flagged items

The agent should send the output to Telegram if non-empty.

Inputs:

  • Either a message EntryID (preferred) or search by subject + recent window.

Behavior:

  • Extract the thread (best-effort) + key metadata.
  • Generate 2 drafts:
    • Short (2–5 sentences)
    • Normal (5–10 sentences)
  • Apply tone rules from references/writing-style.md.

Outputs:

  • Print drafts to stdout.
  • Optionally create an Outlook draft reply (no sending) if --create-draft is set.

When you need more context from the user

Ask only what you cannot infer:

  • Which email to reply to (subject / sender / when)
  • The user’s intent (agree/decline/ask for info/confirm timeline)
  • Any constraints (deadlines, attachments, names)

Keep questions minimal (max 3 at a time).

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

1,4071,302

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

1,2201,024

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

9001,013

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

958658

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

970608

pdf-to-markdown

aliceisjustplaying

Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.

1,033496

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.