AISecretary
AISecretary is a collection of MCP servers designed to automate the tasks of a virtual secretary insede the Outlook suite. Each server handles a specific tool, such as:
Outlook Mail
Outlook Calendar
Outlook Contacts
Outlook To Do
Outlook Mailbox Settings
Categories
Features
Modular: Each tool runs as an independent server, so you can start only the ones you need.
Easy integration: Compatible with OpenWebUI and other platforms supporting MCP.
Extensible: Easily add new servers for additional tools or services.
Automation: Handles repetitive tasks like checking emails, managing calendars, and more.
Prerequisites
uv installed (Python environment and dependency manager).
Python 3.11 or higher.
Getting Started
Follow the instructions below to configure and run the server:
Service Setup
To configure the necessary Microsoft Graph API settings, follow this setup guide:
Running the Server
Run the following command to start the server (replace server.py with your actual server file):
Recommended: Using Claude Desktop
If you have Claude Desktop installed:
Other option to install your server in Claude Desktop is to edit the configuration file at:
C:\Users\YOUR_USER\AppData\Roaming\Claude\claude_desktop_config.json
If you want all the MCP servers you can just also run the script claude_setup.py wity uv.
Alternative: Running with OpenWebUI
If you're using platforms like OpenWebUI:
Then open OpenWebUI, go to:
Add the following URL:
You can now interact with AISecretary through the OpenWebUI interface.
Functionalities
These are the available functionalities for each of the MCP servers:
Email Management
Advanced email search
Retrieve conversations
Mark as read/unread
Retrieve full emails with attachments
Delete emails
Move or copy emails
Manage flags
Email Creation and Sending
Create or edit drafts
Handle attachments
Send drafts
Reply to emails
Forward emails
Folder Organization
View folder structure
Create or edit folders
Delete folders
Navigate folder hierarchy
Mail Rules
View existing rules
Create or edit rules
Delete rules
🏷️ Categories
View existing categories
Create or edit categories
Delete categories
Assign categories to emails
Assign categories to events
Use predefined colors
📅 Calendar
Event Management
Retrieve events
Create events
Update events
Delete events
Retrieve detailed event information
Invitation Handling
Accept invitations
Decline invitations
Respond tentatively
Cancel events
Attachment Management
Add attachments
Remove attachments
Calendar Management
List calendars
Retrieve specific calendars
Create calendars
Update calendars
Delete calendars
Calendar Group Management
List groups
Create groups
Update groups
Delete groups
Availability Lookup
Retrieve free/busy schedule
✅ Task Management
Task List Management
Retrieve lists
Create lists
Delete lists
Task Management
Retrieve tasks
Retrieve specific task
Create tasks
Update tasks
Delete tasks
👥 Contacts
Contact Folder Management
Create folders
Delete folders
Search folders
Contact Management
Search contacts
Retrieve detailed contact information
Create contacts
Update contacts
Delete contacts
⚙️ Mailbox Settings
General Settings Management
Retrieve settings
Update settings
Supported Settings
Automatic replies
Time zone
Working hours
Adding New Servers
To add support for new tools, create a new Python file following the structure of the existing servers and register the functions you want to expose as MCP tools.
More Information
Python original sdk: Explains how to use MCP with different models and tools.
OpenWebUI: Detailed guide on integrating MCP servers with OpenWebUI.
Anthropic: Detailed guide on integrating MCP servers with Claude Desktop.
License
This project is licensed under the MIT License. See the LICENSE file for details.