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:
uv run mcp install server.py
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
{
"mcpServers": {
"Server_name": {
"command": "/Your/path/to/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with",
"msal",
"mcp",
"run",
"/your/path/to/server.py"
]
},
}
}
If you want all the MCP servers you can just also run the script claude_setup.py
wity uv
.
uv run python claude_setup.py
Alternative: Running with OpenWebUI
If you're using platforms like OpenWebUI:
uvx mcpo --port 9000 -- uv run mcp run server.py
Then open OpenWebUI, go to:
Settings > Tools > [+]
Add the following URL:
http://127.0.0.1:9000
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.