Swapnil MCP Server
A Model Context Protocol (MCP) server that provides automated utilities for Outlook Calendar scheduling, Microsoft Visual Studio Team Foundation Server repository management, and weather information retrieval.
Features
- Create and schedule meetings in Microsoft Outlook calendar with automated settings for reminders and status
- Retrieve project repositories from Microsoft Visual Studio Team Foundation Server
- Get current weather information for any city worldwide through OpenWeatherMap API
Installation
pip install swapnil-mcp-server
Requirements
- Python 3.9 or higher
- Windows OS (requires Microsoft Outlook and optionally Microsoft Teams)
pywin32packagemcppackage 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 with automated configuration for reminders, status, and sending.
Parameters:
subject(string, required): Meeting subjectstart_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")
Features:
- Automatically sets a 15-minute reminder
- Sets busy status
- Configures as an all-day event
- Automatically sends the meeting invitation
Returns:
- A confirmation message with the meeting details
Get_Project_Repositories
Retrieves repositories from a specified Microsoft Visual Studio Team Foundation Server project.
Parameters:
project_name(string, required): Name of the Microsoft Visual Studio Team Foundation Server project
Returns:
- List of repository names in the specified project, or an error message if the operation fails
Get_Repository_Checkins
Retrieves commit history from a specified repository in Microsoft Visual Studio Team Foundation Server.
Parameters:
project_name(string, required): Name of the project in Microsoft Visual Studio Team Foundation Serverrepository_name(string, required): Name of the repository to checkuserupn(string, required): User UPN to filter commits by author
Features:
- Filters commits by specific user
- Returns detailed commit information including IDs, authors, dates, and messages
- Requires TFS_PAT environment variable for authentication
- Supports secure HTTPS connections
Returns:
- List of commit details or appropriate error message
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 countrytemperature: Current, feels like, min, and max temperatureshumidity: Current humidity percentagewind: Speed and directiondescription: Weather descriptiontimestamp: Time of the weather reading
Available Tools
| Tool | Description |
|---|---|
| Set_Meeting | Create and schedule meetings in Outlook with automated features including reminders, busy status, and all-day event settings |
| Get_Project_Repositories | Retrieve repositories from Microsoft Visual Studio Team Foundation Server using PAT authentication |
| Get_Repository_Checkins | Retrieve detailed commit history from TFS repositories with user filtering |
| get_weather | Get detailed weather information for any global city including temperature, humidity, and wind conditions |
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
- Swapnil Dagade (swapnildagade@gmail.com)
Links
Metadata
Release files for swapnil-mcp-server 6.2.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| swapnil_mcp_server-6.2.8.tar.gz | 9.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| swapnil_mcp_server-6.2.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 20.1 kB
Release files / swapnil_mcp_server-6.2.8.tar.gz
| Download URL | swapnil_mcp_server-6.2.8.tar.gz |
|---|---|
| Size | 9.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
eb6036b53df90ac3e8cb56eb5865ed1879e3ed15cffad57d78947cea7b0e5181
|
|
BLAKE2b-256 checksum How to use checksums |
2dc2b4bda79ab2ebe150f1fa0ca52b67c13a57981ba76cde83a8cdde3ed0ff03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Release files / swapnil_mcp_server-6.2.8-py3-none-any.whl
| Download URL | swapnil_mcp_server-6.2.8-py3-none-any.whl |
|---|---|
| Size | 10.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
14cacbe8491b7e14140d04ab2b5599e14a0d500595fa80e41aa04f0c7c82dbdc
|
|
BLAKE2b-256 checksum How to use checksums |
9ca7d1f15f702d438697614ce7b35ec1aa54b48d4922e6404907ebcc49647ba7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|