Leave Management MCP Server
About
This is my attempt at creating a leave management mcp server to retrieve details of employees stored in a workbook.
Explore
- Integrates with Excel workbooks for leave data storage
- Enables natural-language queries about employee leave
- Supports queries by employee name, ID, month, or date
- Built with Python and uses Pandas for data processing
- Can be run locally or installed in MCP clients
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Leave Management MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
- Python 3.9+
- UV package manager
- Claude Desktop (or another MCP client)
- Excel workbook with leave data
uv run mcp install src/leave_server.py --name "Leave Management"
```
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"leave management mcp server": {
"itsmistahji-leave-management-mcp": {
"command": "uv",
"args": [
"init",
"."
]
}
}
}
}
McpServers
{
"itsmistahji-leave-management-mcp": {
"command": "uv",
"args": [
"init",
"."
]
}
}
Table of Contents
- Prerequisites - Project Structure - Installation - Configuration - Running the Server - Troubleshooting - Example QueriesPrerequisites
- Python 3.9+ - UV package manager - Claude Desktop (or another MCP client) - Excel workbook with leave dataProject Structure
``
leave-management-mcp/
├── src/
│ ├── __init__.py
│ ├── config.py # Configuration settings
│ ├── leave_server.py # Main MCP server
│ ├── data_manager.py # Data processing module
│ └── models/
│ ├── __init__.py
│ └── employee.py # Employee data models
├── data/
│ └── leave_tracker.xlsx # Excel workbook with leave data
├── main.py # Entry point wrapper
├── __init__.py # Root package marker
├── requirements.txt # Dependencies
└── README.md # Project documentation
`
Installation
1. Clone this repository:
`bash
git clone https://github.com/ItsMistahJi/itsmistahji-leave-management-mcp.git
cd leave-management-mcp
`
2. Set up the Python environment with UV:
`bash
pip install uv
uv init .
`
3. Install dependencies:
`bash
uv add "mcp[cli]" pandas openpyxl python-dotenv PyPDF2
`
Configuration
1. Create a .env file in the project root:
`
DATA_DIR=/path/to/your/data/directory
EXCEL_FILE=/path/to/your/data/directory/leave_tracker.xlsx
SERVER_NAME=LeaveManagement
DEBUG_MODE=True
`
2. Ensure your Excel workbook has the correct structure:
- A sheet named "Leaves-2025" (or modify data_manager.py to use your sheet name)
- Columns for "Sl No", "Name", "EMP ID", "Location", and month names ("Jan", "Feb", etc.)
Running the Server
Local Development Testing
``bashSign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



