Employee Leave Manager MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Employee Leave Manager MCPWhat's the leave balance for employee E001?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Employee Leave Manager — MCP
An MCP server that exposes employee leave management (balances, applying for leave, history, etc.) as tools that Claude Desktop (or any MCP client) can call. Data is stored in a local SQLite database.
Prerequisites
uv — Python dependency manager
Related MCP server: Employee Leave Management MCP Server
Setup
Clone the repo:
git clone https://github.com/TharushiDinushika/Employee-Leave-Manager-MCP.git
cd Employee-Leave-Manager-MCPCreate the project and install dependencies:
uv syncActivate Virtual Environment
.venv\Scripts\activate Initialize the database
Creates the SQLite schema and seeds it with sample employees, leave types, and balances:
python init_db.pyOptions:
python init_db.py --reset # drop all tables and reseed from scratch
python init_db.py --no-seed # create schema only, skip sample dataRun the server
uv run mcp dev server.pyThis opens the MCP Inspector, where you can list and test the available tools directly before connecting a client.
Connect to Claude Desktop
Open Claude Desktop and check whether the connector appears automatically.

If it doesn't show up, add it manually:
Go to File → Settings → Developer → Edit Config
Add the following block to the config file (update the path to match where you cloned the project):
{
"mcpServers": {
"EmployeeLeaveManager": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\Employee-Leave-Manager-MCP",
"run",
"server.py"
]
}
}
}Restart Claude Desktop.
Open a new chat and try asking Claude about employee leave — e.g. "What's E001's leave balance?"
Functionality
The server exposes the following tools:
Tool | Description |
| Check remaining leave balance for an employee. Returns balance for a specific leave type, or all types if omitted. |
| Apply for leave on one or more specific dates. Validates date format, rejects past or duplicate dates, and checks balance before deducting. |
| Cancel previously approved leave and refund the balance. |
| View an employee's leave history, optionally filtered by leave type. |
| List all available leave types (annual, sick, casual, unpaid) and their default annual allotment. |
| List all employees, optionally filtered by department. |
| Onboard a new employee with default leave balances. |
| Get an employee's profile (name, department, email, manager). |
It also exposes two resources:
greeting://{name}— a personalized greetingemployee://{employee_id}/summary— a quick profile + balance summary for an employee
Data model
Data lives in a local SQLite database (leave_manager.db), with four tables:
employees, leave_types, leave_balances, and leave_requests. Schema
creation and seeding are handled separately by init_db.py, so the server
itself never modifies the schema — it just reads/writes data.
Project structure
mcp-server/
├── server.py # MCP server: tools, resources, DB queries
├── init_db.py # Database schema creation + seeding (run once)
├── leave_manager.db # SQLite database (created after running init_db.py)This server cannot be deployed
Maintenance
Related MCP Connectors
Employee leave and PTO requests: balances, approvals, calendars, and who-is-out summaries.
Track and manage employee time off with quick balance lookups and streamlined applications. Find t…
Read Breathe HR employees, absences, sickness and leave; create and review leave requests.
Connects AI assistants to TrackingTime for querying time entries, projects, tasks, customers, and team data using natural language.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables managing employee leave requests, balances, and approvals through natural language with Claude Desktop, using SQLite for persistence and fuzzy name matching.-
- AlicenseAqualityDmaintenanceManages employee leave with Claude Desktop via natural language. Enables checking balances, applying, approving, and reviewing leave requests through a Supabase-backed MCP server.10MIT
- FlicenseBqualityDmaintenanceEnables LLMs to manage employee leave by checking balances, applying for leave, and viewing history.3-
- FlicenseAqualityDmaintenanceEnables managing employee leave through natural language, including applying, approving, rejecting, and canceling leave, checking balances, and listing requests, using an in-memory data model.6-