Outlook Assistant
Let your AI assistant manage your Outlook email, calendar, and contacts from the conversation.
22 tools for Outlook email, calendar, and contacts, with read-only mode, dry-run previews, a recipient allowlist, and 64% fewer tokens.
What it does
Everything you'd normally do in Outlook, but from Claude
Email management
Read, search, draft, send, and organise emails, with a dry-run preview before anything goes out. Export full threads as Markdown, EML, MBOX, JSON, HTML, or CSV.
Calendar and scheduling
View upcoming or past events, create meetings, update, decline, or cancel them, and find meeting rooms — all through conversation.
Contact and people search
Full CRUD for contacts plus relevance-based people search across your organisation.
Mailbox automation
Create inbox rules, manage categories, configure Focused Inbox overrides, set automatic replies.
What Outlook Assistant includes
Email search and filtering
Search by sender, date, keyword, and attachment type. Filter by folder, read/unread status, and importance.
Read and compose
Read emails and compose new messages with to, cc, and bcc support. Plain text or HTML.
Draft management
Create, edit, and send email drafts through conversation. Reply and forward drafts auto-populate recipients and threading headers. Preview with dry-run mode and validate recipients before sending.
Thread export in 6 formats
Export conversations as Markdown, EML, MBOX, JSON, HTML, or CSV. Full MIME with headers for forensics and archival.
Calendar management
View upcoming events or look back at past ones, find events by date range and subject, create meetings with attendees, and update, decline, or cancel them. A retried create can't book the same meeting twice.
Contact management
Full CRUD for personal contacts plus relevance-based people search across your organisation.
Inbox rules
Create, update, reorder, and delete rules with 12 condition types (sender, subject, body, importance, sensitivity, boolean routing), 9 action types (move, copy, mark read, mark importance, forward, redirect, categorise, stop processing, delete), exception handling, and dry-run preview. Describe what you want in natural language.
Categories and Focused Inbox
Create categories with custom colours, apply to messages, and configure Focused Inbox overrides.
Automatic replies and settings
Set up out-of-office messages, configure working hours, timezone, and mailbox preferences.
Shared mailbox access
Opt-in on work/school accounts: read and organise team inboxes and service accounts, including custom subfolders and nested folder paths. Sending from a shared mailbox isn't supported.
Folder management
Create nested folders addressable by path (Parent/Child), move emails between folders, and view folder statistics and hierarchy.
Follow-up flags and meeting rooms
Set follow-up flags on messages with due dates, and search available meeting rooms in your organisation.
OAuth2 authentication
Device code flow (default) works headless and remote — no auth server, port forwarding, or client secret needed. State persists across MCP server restarts (v3.7.2+), so remote bridges like Telegram work reliably. Browser-based OAuth available as alternative. Automatic token refresh handles both public and confidential clients. Scoped to your account, revocable any time.
MCP safety annotations
Every tool sets all four annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) explicitly, so AI clients can auto-approve safe reads and prompt before sends or deletes. Claude asks before every send-email and create-event call.
Read-only mode
Set OUTLOOK_READ_ONLY=true and every call that isn't a read is refused before it runs: no sends, drafts, moves, deletes, rule or settings changes, exports, or dry runs. Searching, reading, and signing in still work.
Send limits and recipient allowlist
Cap sends, drafts, rule changes, and new events per session, and restrict recipients to approved domains or addresses. The allowlist covers sends, drafts, rule forwards, and calendar invitations.
Dry-run previews
See what a call would do without changing or sending anything: sends, drafts, new events (who would be invited, and how many are external), event updates and cancellations (who would be emailed), automatic replies, and rules.
Plugin with a safety hook
A plugin for Claude Code, GitHub Copilot CLI, and Cursor bundles the server, a skill that teaches the model who each send, reply-all, or cancellation reaches, and a hook that asks before risky calls. The server also tells every client to treat email content as data, not instructions.
Progressive search
Falls back through up to four search strategies on personal accounts (server $search → contains-subject → client-side body/subject/from scan). Every response carries _meta.searchMetadata so agents can detect when filters are dropped or which strategy actually returned the matches.
Email header forensics
DKIM, SPF, DMARC authentication checks, delivery chain tracing, and spam score analysis — built in for phishing investigation and compliance.
Delta sync
Incremental inbox monitoring — returns only new, modified, and deleted emails since your last check, with tokens for continuous polling.
Batch operations
Flag, move, export, or categorise multiple emails in a single call. Up to 20 Graph API requests per $batch. Search-driven export lets you batch-export results without collecting IDs.
Pre-send mail tips
Check recipients before sending — detects out-of-office, mailbox full, delivery restrictions, moderation, and external recipients. If anything is flagged, the send is refused with the warnings listed until you acknowledge them.
Immutable IDs
Opt-in immutable IDs — message and event IDs persist through folder moves for more reliable cross-tool workflows.
How it works
Your AI agent talks directly to Microsoft Graph. I'm not in the middle.
What exactly does it access?
What it accesses
- Your Outlook mailbox via Microsoft Graph API (delegated permissions)
- Email, calendar, contacts, and settings you explicitly grant access to
Where it stores
- OAuth tokens: ~/.outlook-assistant-tokens.json
- Azure client ID (not a secret): ~/.outlook-assistant-config.json
Delete ~/.outlook-assistant-tokens.json and ~/.outlook-assistant-config.json to remove local tokens and settings
Network calls
- Microsoft Graph API (graph.microsoft.com)
- Microsoft sign-in (login.microsoftonline.com)
- No Little Bear Apps servers involved
Remove from MCP config to disable
Requires a Microsoft account
Get started in 60 seconds
Copy this prompt and paste it into any AI assistant:
Or configure it yourself
Pick your AI agent and add the config manually
Requires an Azure app registration — see the Azure Setup Guide first
Try these prompts now
Copy one of these into your AI agent to see it in action
"Show me my unread emails from today"
Great first test — reads your inbox
"What meetings do I have this week?"
Checks your Outlook calendar
"Search my emails for invoices from last month"
Uses email search with date filtering
"Draft a reply to that last email from Sarah"
Creates a draft reply without sending
"I was tired of copying emails into Claude conversations just to get help drafting replies or summarising threads."
Questions about Outlook Assistant
Does Outlook Assistant store or send my emails to Little Bear Apps?
Does this work with personal Outlook.com and work/school Microsoft 365?
Is the Azure app registration free?
What permissions does it need?
Does this work with Claude.ai or mobile apps?
Can I access shared mailboxes?
What export formats are supported?
How do I revoke access?
Can I stop it sending or changing anything?
Do I need an Azure client secret?
Is there a plugin?
What changes
- • Instead of copying emails into Claude to draft replies, let Claude read and write directly from your mailbox.
- • Instead of switching to Outlook to check your calendar before scheduling, ask Claude to check your upcoming events and create the meeting.
- • Instead of manually exporting emails for documentation, ask Claude to export a thread as Markdown or EML in one step.
- • Instead of navigating Outlook settings to set up rules, describe the rule in natural language and Claude creates it.
- • Instead of searching through your contacts app, ask Claude to find the person by name, role, or department.
v3.14.2 — Fix queue
Next patch after v3.14.1: user-facing bug fixes that are small and safe to ship alone. Search and export query bugs (#261, #263), find-meeting-rooms classification (#240), the broken Docker image, the critical proxy-addr advisory, delta minimal output, calendar preview counts, the Mail-Advanced.ReadWrite check before 31 Dec 2026 (#131) and auto-reply docs (#305). Repo-only items (#319 release workflow, #119 citation) land before this release so it exercises them.
v3.15.0 — Structured outputs, paging & Hermes
Machine-readable results and real paging: outputSchema + structuredContent on every tool, with the structured and text halves each standing alone (#285); opaque cursors for search-emails, list-events and access-shared-mailbox (#286), after list-events moves to calendarView (#239); runtime validation of nested objects, formats and ranges (#288); consistent parameter names with deprecated aliases kept until v4 (#289); descriptions that match behaviour, with a description/schema test (#243, #93); bounded parallel MIME export (#264). Also Hermes Agent support (#309, #310), the v3.14.0 follow-ups (#299), skill-eval grading fixes and supply-chain hardening (#290). Verified across the cross-client matrix.
v3.16.0 — Calendar, tasks & contacts
Next feature minor after v3.15.0. Recurring events with a series guard (#125), contact email fields and folders (#127, #250), Microsoft To Do behind an opt-in scope (#89), a Sent Items search hint (#117), and real $batch for bulk updates (#245). New scopes are opt-in and reported by auth action=about; nothing changes for existing sign-ins.
v4.0.0 — MCP 2026-07-28 & server-side confirmation
Breaking. Migrate to MCP TypeScript SDK v2 (@modelcontextprotocol/server) and protocol 2026-07-28: stateless requests, server/discover, multi-round-trip requests and URL-mode elicitation for device-code sign-in (#291). Requires Node 22+ (Node 18 and 20 are end of life). Progress notifications and cancellation on the new handler context (#287). Server-side confirmation for outward, destructive and persistent actions, driven by the risk-class map (#269). Split mixed read/write tools, trim the tool count and remove the aliases deprecated in v3.15.0 (#292). SDK v1.x gets fixes until at least late January 2027.
Changelog
- •docs: roadmap for v3.14.0 safety skill/hooks, v3.15.0 structured outputs, v4.0.0
- •v3.14.0 PR A: protocol and correctness (risk classes, JSON-RPC errors, isError, registry)
- •v3.14.0 PR B: safety fixes (mail tips, rules, dry-run previews, read-only mode, log privacy)
- •v3.14.0 PR C: plugin skill, safety hook and prompt-injection evals
Also by Little Bear Apps