Skip to main content
Glama
TharushiDinushika

Employee Leave Manager MCP

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

Related MCP server: MCP Leave Manager Server

Setup

Clone the repo:

git clone https://github.com/TharushiDinushika/Employee-Leave-Manager-MCP.git
cd Employee-Leave-Manager-MCP

Create the project and install dependencies:

uv sync

Activate 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.py

Options:

python init_db.py --reset      # drop all tables and reseed from scratch
python init_db.py --no-seed    # create schema only, skip sample data

Run the server

uv run mcp dev server.py

This 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.

Demo screenshot

If it doesn't show up, add it manually:

  1. Go to File → Settings → Developer → Edit Config

  2. 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"
      ]
    }
  }
}
  1. Restart Claude Desktop.

  2. 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

get_leave_balance(employee_id, leave_type)

Check remaining leave balance for an employee. Returns balance for a specific leave type, or all types if omitted.

apply_leave(employee_id, leave_dates, leave_type="annual", reason)

Apply for leave on one or more specific dates. Validates date format, rejects past or duplicate dates, and checks balance before deducting.

cancel_leave(employee_id, leave_dates)

Cancel previously approved leave and refund the balance.

get_leave_history(employee_id, leave_type)

View an employee's leave history, optionally filtered by leave type.

get_leave_types()

List all available leave types (annual, sick, casual, unpaid) and their default annual allotment.

list_employees(department)

List all employees, optionally filtered by department.

add_employee(employee_id, name, department, email, manager_id)

Onboard a new employee with default leave balances.

get_employee_details(employee_id)

Get an employee's profile (name, department, email, manager).

It also exposes two resources:

  • greeting://{name} — a personalized greeting

  • employee://{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)
F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Manage projects, tasks, time tracking, and team collaboration through natural language.

  • Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.

  • Connects ChatGPT to your Apple Calendar via a local Mac agent + Vercel relay

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TharushiDinushika/Employee-Leave-Manager-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server