Aspose.Email Cloud MCP Server
Convert and read e-mail messages, contacts and calendars, and work with a mailbox (folders, messages and threads), through Aspose.Email Cloud's REST API, from any MCP-compatible AI client.
Install Aspose.Email Cloud
You need Python 3.11 or later. Install the server into a virtual environment; the first package is the shared file-tool library that every Aspose Cloud MCP server depends on.
python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate pip install \ git+https://github.com/aspose-cloud/aspose-storage-cloud-python-mcp.git@v1.0.5 \ git+https://github.com/aspose-cloud/aspose-email-cloud-python-mcp.git@v1.4.0
This puts the aspose-email-mcp command into the virtual environment.
Configure Aspose.Email Cloud in your AI client
Create an application on your Aspose Cloud dashboard to get a Client ID and Client Secret (a free evaluation tier is available). The server reads them from its environment when it starts; they are never passed as a tool argument. ASPOSE_FILES_PATH is the folder on your computer that the server may read files from and write results to.
{
"mcpServers": {
"email": {
"command": "C:\\path\\to\\.venv\\Scripts\\aspose-email-mcp.exe",
"env": {
"ASPOSE_CLIENT_ID": "your-client-id",
"ASPOSE_CLIENT_SECRET": "your-client-secret",
"ASPOSE_FILES_PATH": "C:\\Users\\you\\Documents\\aspose-files"
}
}
}
}
// macOS / Linux: "command": "/path/to/.venv/bin/aspose-email-mcp"{
"servers": {
"email": {
"type": "stdio",
"command": "/path/to/.venv/bin/aspose-email-mcp",
"env": {
"ASPOSE_CLIENT_ID": "your-client-id",
"ASPOSE_CLIENT_SECRET": "your-client-secret",
"ASPOSE_FILES_PATH": "/home/you/aspose-files"
}
}
}
}// Same JSON shape as VS Code above — use the config path for your tool: // ~/.cursor/mcp.json · Cline settings · Windsurf mcp_config.json
Example prompts
- Convert message.msg to EML.
- List the e-mail files in the inbox folder of my storage.
- Is someone@mailinator.com a disposable e-mail address?
Available tools (53)
Every tool this server exposes, straight from its own tool manifest.
| Tool | Description | Parameters |
|---|---|---|
email_get_calendar |
Retrieves the specified iCalendar file from cloud storage. Read-only |
file_name: str (required), folder: str | None, storage: str | None
|
| prompt: show the events in team-meeting.ics using aspose email cloud mcp | ||
| prompt: show the events in team-meeting.ics from the calendars folder of my MyStorage storage using aspose email cloud mcp | ||
email_get_calendar_list |
Retrieves a paginated list of iCalendar files stored in a specified folder. Read-only |
folder: str (required), items_per_page: str | None, page_number: str | None, storage: str | None
|
| prompt: list the calendar files in the calendars folder using aspose email cloud mcp | ||
| prompt: list the calendar files in the calendars folder, 20 per page, page 2, using aspose email cloud mcp | ||
email_get_calendar_as_alternate |
Retrieves an iCalendar file from Aspose Cloud storage and returns its AlternateView representation based on the specified calendar action. Read-only |
file_name: str (required), calendar_action: str (required), sequence_id: str | None, folder: str | None, storage: str | None
|
| prompt: get the alternate view of invite.ics for a 'create' calendar action using aspose email cloud mcp | ||
| prompt: get the alternate view of invite.ics for a 'cancel' calendar action with sequence id 2 using aspose email cloud mcp | ||
email_get_calendar_as_file |
This tool fetches a calendar document from Aspose Cloud storage, converts it to the specified format, and returns the resulting file. Read-only |
file_name: str (required), format: str (required), storage: str | None, folder: str | None
|
| prompt: convert team-meeting.ics to msg format using aspose email cloud mcp | ||
| prompt: convert team-meeting.ics from the calendars folder of my MyStorage storage to msg format using aspose email cloud mcp | ||
email_run_calendar_from_file |
The tool converts an uploaded calendar file into a structured calendar model representation. Dry run |
file: str (required), content_base64: str | None, dry_run: bool
|
| prompt: parse the calendar file offsite.ics into a structured calendar using aspose email cloud mcp | ||
| prompt: do a dry run of parsing this base64 content as the calendar file offsite.ics using aspose email cloud mcp | ||
email_get_contact |
The tool retrieves a contact document from the specified storage location. Read-only |
format: str (required), file_name: str (required), folder: str | None, storage: str | None
|
| prompt: show the contact details in john-smith.vcf, which is in vcard format, using aspose email cloud mcp | ||
email_get_contact_list |
Retrieves a list of email contacts from a specified folder and storage using the given contact document format. Read-only |
format: str (required), folder: str | None, storage: str | None, items_per_page: str | None, page_number: str | None
|
| prompt: list the vcard contacts using aspose email cloud mcp | ||
| prompt: list the vcard contacts in the contacts folder of my MyStorage storage, 50 per page, page 3, using aspose email cloud mcp | ||
email_get_contact_as_file |
Converts a contact document stored in Aspose Cloud from one format to another and returns the resulting file as binary data. Read-only |
file_name: str (required), to_format: str (required), from_format: str (required), storage: str | None, folder: str | None
|
| prompt: convert john-smith.vcf from vcard to msg format using aspose email cloud mcp | ||
| prompt: convert john-smith.msg from msg to vcard format, from the contacts folder of my MyStorage storage, using aspose email cloud mcp | ||
email_run_contact_from_file |
Converts a contact document file (VCard, WebDav, or Msg) into its Aspose.Email model representation. Dry run |
format: str (required), file: str (required), content_base64: str | None, dry_run: bool
|
| prompt: parse the vcard file partners.vcf into structured contacts using aspose email cloud mcp | ||
| prompt: do a dry run of parsing this base64 content as the vcard file partners.vcf using aspose email cloud mcp | ||
email_get_list |
The tool retrieves a list of email files stored in a specified folder of Aspose Cloud storage. Read-only |
format: str (required), folder: str | None, storage: str | None, items_per_page: str | None, page_number: str | None
|
| prompt: list the eml emails using aspose email cloud mcp | ||
| prompt: list the eml emails in the inbox-export folder, 25 per page, page 2, using aspose email cloud mcp | ||
email_get_as_file |
The tool fetches an email document from Aspose Cloud storage, converts it to a specified format, and returns the result as a downloadable file. Read-only |
file_name: str (required), format: str (required), storage: str | None, folder: str | None
|
| prompt: convert message.eml to msg format using aspose email cloud mcp | ||
| prompt: convert message.eml from the inbox-export folder of my MyStorage storage to msg format using aspose email cloud mcp | ||
email_extract_properties |
This tool converts an email document file into a structured email model representation. Dry run |
content_filename: str (required), source_format: str (required), content_base64: str | None, dry_run: bool
|
| prompt: extract the sender, recipients and subject from message.eml, which is in eml format, using aspose email cloud mcp | ||
| prompt: extract the sender, recipients and subject from this base64 content, which is an eml file named message.eml, using aspose email cloud mcp | ||
email_convert_file |
It converts an uploaded email document from a given source format to a specified target format and returns the resulting file. Read-only |
content_filename: str (required), source_format: str (required), target_format: str (required), content_base64: str | None, output_filename: str | None, return_base64: bool
|
| prompt: convert message.eml from eml to msg and save as message.msg using aspose email cloud mcp | ||
| prompt: convert newsletter.msg from msg to eml and return it as base64 text using aspose email cloud mcp | ||
| prompt: convert this base64 content, an eml file named invoice.eml, to msg using aspose email cloud mcp | ||
email_get_mapi_calendar |
This tool retrieves a MAPI calendar file from Aspose Cloud storage. Read-only |
file_name: str (required), folder: str | None, storage: str | None
|
| prompt: show the MAPI calendar appointment in meeting.msg using aspose email cloud mcp | ||
email_get_mapi_contact |
Retrieves a MAPI contact document from Aspose Cloud storage in the format you specify. Read-only |
format: str (required), file_name: str (required), folder: str | None, storage: str | None
|
| prompt: show the MAPI contact in colleague.msg, in msg format, using aspose email cloud mcp | ||
email_get_mapi_message |
This tool retrieves a specific email document stored as a MAPI message from Aspose Cloud. Read-only |
format: str (required), file_name: str (required), folder: str | None, storage: str | None
|
| prompt: show the MAPI message in support-ticket.msg, in msg format, using aspose email cloud mcp | ||
email_get_disposable_is_disposable |
This tool determines whether a given email address is a disposable (temporary) address. Read-only |
address: str (required)
|
| prompt: is user@mailinator.com a disposable email address? use aspose email cloud mcp | ||
email_get_config_discover |
The tool discovers email server configuration settings for a given email address without validating the discovered accounts. Read-only |
address: str (required), fast_processing: bool | None
|
| prompt: discover the mail server settings for jane@example.com using aspose email cloud mcp | ||
| prompt: quickly discover the mail server settings for jane@example.com using fast processing, using aspose email cloud mcp | ||
email_save_client_account |
The tool creates or updates an email client account file (*.account) in the specified storage location using the supplied credentials. Dry run |
request: dict[str, Any] (required), dry_run: bool
|
| prompt: save an email client account file named work.account for jane@example.com using aspose email cloud mcp | ||
| prompt: do a dry run of saving an email client account file named personal.account for jane@example.com using aspose email cloud mcp | ||
email_get_client_account |
Retrieves the email client account configuration stored in a specified file on Aspose Cloud storage. Read-only |
file_name: str (required), folder: str | None, storage: str | None
|
| prompt: show the settings stored in work.account using aspose email cloud mcp | ||
| prompt: show the settings stored in work.account from the accounts folder of my MyStorage storage using aspose email cloud mcp | ||
email_get_client_account_multi |
Retrieves a multi‑account email client file (must have the “.multi.account” extension) from Aspose Cloud storage. Read-only |
file_name: str (required), folder: str | None, storage: str | None
|
| prompt: show the accounts stored in team.multi.account using aspose email cloud mcp | ||
email_create_client_folder |
The tool creates a new mail folder in a specified email account. Dry run |
request: dict[str, Any] (required), dry_run: bool
|
| prompt: create a folder called Invoices in the work.account mailbox using aspose email cloud mcp | ||
| prompt: do a dry run of creating a folder called Receipts in the work.account mailbox using aspose email cloud mcp | ||
email_delete_client_folder |
Deletes a specified folder from a user's email account. Dry run |
request: dict[str, Any] (required), dry_run: bool
|
| prompt: delete the Old Newsletters folder from the work.account mailbox using aspose email cloud mcp | ||
| prompt: do a dry run of deleting the Spam Archive folder from the work.account mailbox using aspose email cloud mcp | ||
email_get_client_folder_list |
The tool retrieves the list of folders (or sub‑folders) for a specified email account. Read-only |
account: str (required), storage: str | None, account_storage_folder: str | None, parent_folder: str | None
|
| prompt: list the folders in the work.account mailbox using aspose email cloud mcp | ||
| prompt: list the subfolders of Projects in the work.account mailbox, with the account file in the accounts folder of my MyStorage storage, using aspose email cloud mcp | ||
email_get_client_message |
Retrieves a single email message from a specified email account (and optional folder) and returns it in the requested representation. Read-only |
message_id: str (required), account: str (required), folder: str | None, storage: str | None, account_storage_folder: str | None, type: str | None, format: str | None
|
| prompt: get message 42 from the work.account mailbox using aspose email cloud mcp | ||
| prompt: get message 42 from the Archive folder of the work.account mailbox as base64 data in eml format using aspose email cloud mcp | ||
| prompt: get message 42 from the work.account mailbox as a MAPI message using aspose email cloud mcp | ||
email_delete_client_message |
Deletes a specific email message from the user's mailbox. Dry run |
request: dict[str, Any] (required), dry_run: bool
|
| prompt: delete message 42 from the Inbox in the work.account mailbox using aspose email cloud mcp | ||
| prompt: do a dry run of deleting message 57 from the Inbox in the work.account mailbox using aspose email cloud mcp | ||
email_get_client_message_file |
Fetches a single email message from a specified account and returns it as a downloadable file in the chosen format. Read-only |
message_id: str (required), account: str (required), folder: str | None, storage: str | None, account_storage_folder: str | None, format: str | None
|
| prompt: download message 42 from work.account as a file using aspose email cloud mcp | ||
| prompt: download message 42 from the Archive folder of work.account as an eml file using aspose email cloud mcp | ||
email_append_client_message_file |
Adds an email message from a supplied file into a specified folder of a given email account. Dry run |
account: str (required), file: str (required), storage: str | None, account_storage_folder: str | None, format: str | None, folder: str | None, mark_as_sent: bool | None, content_base64: str | None, dry_run: bool
|
| prompt: add message.eml to the work.account mailbox using aspose email cloud mcp | ||
| prompt: add message.eml to the Sent folder of the work.account mailbox as an eml file and mark it as sent, using aspose email cloud mcp | ||
| prompt: do a dry run of adding this base64 content as message.eml to the work.account mailbox using aspose email cloud mcp | ||
email_get_client_message_list |
Retrieves a list of email messages from a specified folder in a given email account, optionally filtered by a query string and returned in a chosen representation. Read-only |
folder: str (required), account: str (required), query_string: str | None, storage: str | None, account_storage_folder: str | None, recursive: bool | None, type: str | None, format: str | None
|
| prompt: list the messages in the Inbox of the work.account mailbox using aspose email cloud mcp | ||
| prompt: search the Inbox of the work.account mailbox, including subfolders, for messages matching 'invoice' using aspose email cloud mcp | ||
| prompt: list the messages in the Inbox of the work.account mailbox as base64-encoded msg files using aspose email cloud mcp | ||
email_get_client_thread_list |
Get message threads from folder. All messages are partly fetched (without email body and some other fields). Read-only |
folder: str (required), account: str (required), storage: str | None, account_storage_folder: str | None, update_folder_cache: bool | None, messages_cache_limit: str | None
|
| prompt: list the conversation threads in the Inbox of work.account using aspose email cloud mcp | ||
| prompt: list the conversation threads in the Inbox of work.account, refreshing the folder cache and caching up to 500 messages, using aspose email cloud mcp | ||
email_get_client_thread_messages |
Retrieves all messages that belong to a given email thread, optionally scoped to a specific folder or storage location. Read-only |
thread_id: str (required), account: str (required), folder: str | None, storage: str | None, account_storage_folder: str | None
|
| prompt: show every message in thread 17 of the work.account mailbox using aspose email cloud mcp | ||
| prompt: show every message in thread 17 of the Inbox of the work.account mailbox using aspose email cloud mcp | ||
email_delete_client_thread |
Deletes an email thread identified by its ID, removing all messages contained in that thread. Dry run |
request: dict[str, Any] (required), dry_run: bool
|
| prompt: delete thread 17 from the work.account mailbox using aspose email cloud mcp | ||
| prompt: do a dry run of deleting thread 21 from the work.account mailbox using aspose email cloud mcp | ||
email_run_ai_bcr_parse_storage |
The tool parses one or more email image files stored in Aspose Cloud storage and creates corresponding vCard files in a specified output folder. Dry run |
request: dict[str, Any] (required), dry_run: bool
|
| prompt: parse the business card images card1.jpg and card2.jpg in cloud storage into contacts using aspose email cloud mcp | ||
| prompt: do a dry run of parsing the business card image card3.jpg in cloud storage into a contact using aspose email cloud mcp | ||
email_run_ai_bcr_parse |
The tool extracts contact information from an uploaded image and returns it as structured vCard document models. Dry run |
file: str (required), countries: str | None, languages: str | None, is_single: bool | None, content_base64: str | None, dry_run: bool
|
| prompt: extract the contact from the business card image card.jpg as a vcard using aspose email cloud mcp | ||
| prompt: extract the contact from the single business card in card.jpg, expecting US cards in English, using aspose email cloud mcp | ||
| prompt: do a dry run of extracting the contact from this base64 content, a business card image named card.jpg, using aspose email cloud mcp | ||
email_get_ai_name_parse |
Parse a personal name into its constituent components (e.g., given name, middle name, surname, title, etc.) using the Aspose Cloud AiName service. Read-only |
name: str (required), language: str | None, location: str | None, encoding: str | None, script: str | None, style: str | None
|
| prompt: split 'Dr. Maria Elena Garcia' into title, given name and surname using aspose email cloud mcp | ||
| prompt: split 'Jose Maria Garcia' into its parts, as a Spanish name from Spain, using aspose email cloud mcp | ||
| prompt: split 'Мария Иванова' into its parts, in Cyrillic script, utf-8 encoded, in a formal style, using aspose email cloud mcp | ||
email_get_ai_name_genderize |
This tool invokes the Aspose Cloud AI Name genderize endpoint to infer the most likely gender for a given personal name. Read-only |
name: str (required), language: str | None, location: str | None, encoding: str | None, script: str | None, style: str | None
|
| prompt: what is the most likely gender for the name Andrea? use aspose email cloud mcp | ||
| prompt: what is the most likely gender for the name Andrea as an Italian name from Italy? use aspose email cloud mcp | ||
email_get_ai_name_complete |
This tool returns up to k suggested full names that best complete the supplied name prefix. Read-only |
name: str (required), language: str | None, location: str | None, encoding: str | None, script: str | None, style: str | None
|
| prompt: suggest full names that complete 'Joh' using aspose email cloud mcp | ||
| prompt: suggest English full names from the United States that complete 'Joh' using aspose email cloud mcp | ||
email_get_ai_name_format |
Formats a given person’s name into the correct case and order using optional language, region, script, style, and formatting settings, and returns the formatted name. Read-only |
name: str (required), language: str | None, location: str | None, encoding: str | None, script: str | None, format: str | None, style: str | None
|
| prompt: format the name 'garcia, MARIA' with correct case and order using aspose email cloud mcp | ||
| prompt: format the name 'garcia, MARIA' as a Spanish name from Spain in the 'first last' format using aspose email cloud mcp | ||
email_get_ai_name_expand |
This tool expands a given personal name into a list of possible alternative spellings or forms based on optional language, location, encoding, script, and style settings. Read-only |
name: str (required), language: str | None, location: str | None, encoding: str | None, script: str | None, style: str | None
|
| prompt: give alternative forms and spellings of the name 'Bob' using aspose email cloud mcp | ||
| prompt: give alternative English forms of the name 'Bob' used in the United States using aspose email cloud mcp | ||
email_get_ai_name_match |
This tool compares two personal names and returns a similarity assessment. Read-only |
name: str (required), other_name: str (required), language: str | None, location: str | None, encoding: str | None, script: str | None, style: str | None
|
| prompt: how similar are the names 'Jon Smith' and 'John Smyth'? use aspose email cloud mcp | ||
| prompt: how similar are the English names 'Jon Smith' and 'John Smyth' for the United States? use aspose email cloud mcp | ||
email_get_ai_name_parse_email_address |
This tool extracts a person’s name from a given email address using Aspose Cloud’s AiName parsing service. Read-only |
email_address: str (required), language: str | None, location: str | None, encoding: str | None, script: str | None, style: str | None
|
| prompt: extract the person's name from john.smith@example.com using aspose email cloud mcp | ||
| prompt: extract the person's English name from jsmith.maria@example.es, assuming it is from Spain, using aspose email cloud mcp | ||
email_get_storage_file |
The tool downloads a file from Aspose Cloud Email storage and returns the file’s binary contents. Read-only |
path: str (required), storage_name: str | None, version_id: str | None
|
| prompt: download message.eml from email storage using aspose email cloud mcp | ||
| prompt: download version 3f2a of archive/message.eml from my MyStorage storage using aspose email cloud mcp | ||
email_delete_storage_file |
Deletes a file stored in Aspose Cloud at the specified path. Dry run |
path: str (required), storage_name: str | None, version_id: str | None, dry_run: bool
|
| prompt: delete old-message.eml from email storage using aspose email cloud mcp | ||
| prompt: do a dry run of deleting version 3f2a of archive/old-message.eml from my MyStorage storage using aspose email cloud mcp | ||
email_update_storage_file_copy |
Copy file Dry run |
src_path: str (required), dest_path: str (required), src_storage_name: str | None, dest_storage_name: str | None, version_id: str | None, dry_run: bool
|
| prompt: copy message.eml to backup/message.eml using aspose email cloud mcp | ||
| prompt: copy message.eml from my SourceStorage storage to backup/message.eml in my BackupStorage storage using aspose email cloud mcp | ||
| prompt: do a dry run of copying version 3f2a of message.eml to backup/message.eml using aspose email cloud mcp | ||
email_update_storage_file_move |
Moves a file from a source location to a destination location within Aspose Cloud storage, optionally specifying different storage names or a file version. Dry run |
src_path: str (required), dest_path: str (required), src_storage_name: str | None, dest_storage_name: str | None, version_id: str | None, dry_run: bool
|
| prompt: move message.eml to archive/message.eml using aspose email cloud mcp | ||
| prompt: do a dry run of moving message.eml from my SourceStorage storage to archive/message.eml in my ArchiveStorage storage using aspose email cloud mcp | ||
email_get_storage_folder |
Retrieves a list of all files and sub‑folders that exist inside a given email storage folder. Read-only |
path: str (required), storage_name: str | None
|
| prompt: list the files and subfolders in the inbox-export folder using aspose email cloud mcp | ||
| prompt: list the files and subfolders in the inbox-export folder of my MyStorage storage using aspose email cloud mcp | ||
email_update_storage_folder |
Creates a new folder in the specified Aspose Cloud email storage at the given path. Dry run |
path: str (required), storage_name: str | None, dry_run: bool
|
| prompt: create a folder called archive-2026 in email storage using aspose email cloud mcp | ||
| prompt: do a dry run of creating the folder archive-2027 in my MyStorage storage using aspose email cloud mcp | ||
email_delete_storage_folder |
Deletes a specified folder from Aspose Cloud email storage. Dry run |
path: str (required), storage_name: str | None, recursive: bool | None, dry_run: bool
|
| prompt: delete the temp folder from email storage using aspose email cloud mcp | ||
| prompt: do a dry run of deleting the temp folder and everything in it from my MyStorage storage using aspose email cloud mcp | ||
email_update_storage_folder_copy |
Copies a folder from a source path to a destination path in Aspose Email Cloud storage. Dry run |
src_path: str (required), dest_path: str (required), src_storage_name: str | None, dest_storage_name: str | None, dry_run: bool
|
| prompt: copy the inbox-export folder to inbox-backup using aspose email cloud mcp | ||
| prompt: do a dry run of copying the inbox-export folder from my SourceStorage storage to inbox-backup in my BackupStorage storage using aspose email cloud mcp | ||
email_update_storage_folder_move |
Moves an existing folder from one location to another within Aspose Cloud storage. Dry run |
src_path: str (required), dest_path: str (required), src_storage_name: str | None, dest_storage_name: str | None, dry_run: bool
|
| prompt: move the inbox-export folder into the archive folder using aspose email cloud mcp | ||
| prompt: do a dry run of moving the inbox-export folder from my SourceStorage storage into archive in my ArchiveStorage storage using aspose email cloud mcp | ||
email_get_storage_exist |
The tool checks whether a specified Aspose Cloud storage container exists. Read-only |
storage_name: str (required)
|
| prompt: does the storage named MyStorage exist? use aspose email cloud mcp | ||
email_get_storage_disc |
The tool returns the current disc usage statistics for Aspose.Email cloud storage. Read-only |
storage_name: str | None
|
| prompt: how much disc space is used in email storage? use aspose email cloud mcp | ||
| prompt: how much disc space is used in my MyStorage storage? use aspose email cloud mcp | ||
email_get_storage_version |
Retrieves the complete version history for a specified file stored in Aspose Email Cloud. Read-only |
path: str (required), storage_name: str | None
|
| prompt: show the version history of message.eml using aspose email cloud mcp | ||
| prompt: show the version history of archive/message.eml in my MyStorage storage using aspose email cloud mcp | ||
Every server also includes four shared file tools (upload, download, list and delete), so a single server is enough for a complete upload, process, download workflow.