Skip to main content

Model Context Protocol (MCP) server for automated Outlook Calendar meeting scheduling

Project description

Swapnil MCP Server

PyPI version Python Versions License: MIT

A Model Context Protocol (MCP) server that provides automated Outlook Calendar scheduling.

Features

  • Create and schedule meetings in Microsoft Outlook calendar
  • Retrieve project repositories from Azure DevOps
  • Retrieve current weather information for a specified city using OpenWeatherMap

Installation

pip install swapnil-mcp-server

Requirements

  • Python 3.9 or higher
  • Windows OS (requires Microsoft Outlook and optionally Microsoft Teams)
  • pywin32 package
  • mcp package version 1.2.0 or higher

Usage

Starting the Server

# Run as a command
swapnil-mcp-server

# Or import in your Python code
from mcp_tools.server import mcp
mcp.run()

Using with MCP Clients

This package implements the Model Context Protocol (MCP), allowing AI assistants and other MCP-compatible clients to interact with your Outlook calendar.

Example of how an MCP client might use this tool:

from mcp.client import Client

client = Client()
result = await client.Set_Meeting(
    subject="Team Meeting",
    start_date="2023-10-01T10:00:00",
    end_date="2023-10-01T11:00:00"
)
print(result)  # Meeting with subject 'Team Meeting' set from 2023-10-01T10:00:00 to 2023-10-01T11:00:00.

API Reference

Set_Meeting

Creates and schedules a meeting in Microsoft Outlook.

Parameters:

  • subject (string, required): Meeting subject
  • start_date (string, required): Start date and time in ISO format (e.g., "2023-10-01T10:00:00")
  • end_date (string, required): End date and time in ISO format (e.g., "2023-10-01T11:00:00")

Returns:

  • A confirmation message with the meeting details

Get_Project_Repositories

Retrieves repositories from a specified Azure DevOps project.

Parameters:

  • project_name (string, required): Name of the Azure DevOps project

Returns:

  • List of repository names in the specified project, or an error message if the operation fails

get_weather

Retrieves current weather information for a specified city using OpenWeatherMap.

Parameters:

  • city (string, required): Name of the city (any global city)

Returns:

  • Dictionary containing:
    • location: City name and country
    • temperature: Current, feels like, min, and max temperatures
    • humidity: Current humidity percentage
    • wind: Speed and direction
    • description: Weather description
    • timestamp: Time of the weather reading

Available Tools

Tool Description
Set_Meeting Create and schedule meetings in Outlook
Get_Project_Repositories Retrieve repositories from Azure DevOps
get_weather Get weather information for a city

Development

Project Structure

swapnil-mcp-server/
├── src/
│   └── mcp_tools/
│       ├── __init__.py
│       ├── __main__.py
│       └── server.py
├── LICENSE
├── README.md
└── pyproject.toml

Building and Publishing

python -m build
python -m twine upload dist/*

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

swapnil_mcp_server-6.2.6.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

swapnil_mcp_server-6.2.6-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file swapnil_mcp_server-6.2.6.tar.gz.

File metadata

  • Download URL: swapnil_mcp_server-6.2.6.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for swapnil_mcp_server-6.2.6.tar.gz
Algorithm Hash digest
SHA256 60cb0570194d510c85eb28a17146650470f05ebfda5798e5eb6693ee5d524431
MD5 84a225f0b547ea79b640b4076ab65acb
BLAKE2b-256 bb593aa6dc6df4a9ea9f88af287612b77740610a87687e3ba5ae6025f801e288

See more details on using hashes here.

File details

Details for the file swapnil_mcp_server-6.2.6-py3-none-any.whl.

File metadata

File hashes

Hashes for swapnil_mcp_server-6.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 d97f2c41c5aaebb76edca2fd8cd8677f28ef8746879f29328f678fcbff791936
MD5 f021a9d58f7f1000fd0de13be6877e05
BLAKE2b-256 28896073f0265d6f90ad4c11e4feda1d570b41b4d1e2f88717d9431ef793c022

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page