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.5.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.5-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: swapnil_mcp_server-6.2.5.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.5.tar.gz
Algorithm Hash digest
SHA256 74745b105afc2eb409ec2d6424bed05118531da4ad70b6fc65d5919b86f8c792
MD5 3ec72d25e911de8b5c8320acef52ce45
BLAKE2b-256 8f486239e806a4e04a0e3467748446f861720d26a393082941cc0e5544992b83

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for swapnil_mcp_server-6.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e54ec139c63d93f9aca1c21a1faa68598d23f65250d4d30415b27573725f7520
MD5 04020f8766eb42f11898cd6a8bbf2e33
BLAKE2b-256 1a3d8b7ab4011ad1ac4e32730f416bad5a74d237d4bffbb25dd32c283413c2a6

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