1. Conduid
  2. RAG
  3. Manger Leave System Lpmr
MCP server · RAG

Manger Leave System Lpmr

A simple yet powerful leave management system built with FastMCP (Model Context Protocol). This system allows organizations to manage employee leave requests, approvals, and balances through an AI-powered interface.

Unclaimed last commit 9 months ago rag
34Low

Scored 6 months ago · breakdown

About Manger Leave System Lpmr

Manger Leave System Lpmr is an MCP server published by noor848 in the RAG category: a simple yet powerful leave management system built with FastMCP (Model Context Protocol). This system allows organizations to manage employee leave requests, approvals, and balances through an AI-powered interface.

The repository has 2 stars and 0 forks, with the last commit 9 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/noor848/Manger-leave-system-lpmr

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (2)

register_employeeRegister a new employee

Parameters not published.

view_employeeView employee details

Parameters not published.

Ask AI

✦

Ask AI about Manger Leave System Lpmr

Powered by Claude · Grounded in docs

I know everything about Manger Leave System Lpmr. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

🏢 Leave Management System with FastMCP

A simple yet powerful leave management system built with FastMCP (Model Context Protocol). This system allows organizations to manage employee leave requests, approvals, and balances through an AI-powered interface.

📋 Table of Contents


✨ Features

Employee Management

  • ✅ Register new employees with ID, name, email, and department
  • ✅ View employee details and leave balances
  • ✅ Track employee join dates

Leave Request Management

  • ✅ Submit leave requests with date ranges
  • ✅ Support multiple leave types (Annual, Sick, etc.)
  • ✅ Automatic leave balance validation
  • ✅ Request approval/rejection workflow
  • ✅ Track request status (Pending, Approved, Rejected)

Leave Balance Tracking

  • ✅ Automatic balance deduction on approval
  • ✅ Real-time balance checking
  • ✅ Admin tools to adjust balances

Reporting & Analytics

  • ✅ View all requests with status filtering
  • ✅ Employee-specific request history
  • ✅ Department-level summaries
  • ✅ System-wide statistics

🔧 Prerequisites

  • Python 3.8 or higher
  • FastMCP library
  • MCP-compatible AI client (Claude Desktop, etc.)

📦 Installation

1. Install Dependencies

pip install fastmcp

2. Clone or Download the Code

Save the leave management system code as leave_manager.py

3. Run the Server

python leave_manager.py

4. Connect to MCP Client

Add the following configuration to your MCP client settings (e.g., Claude Desktop):

{
  "mcpServers": {
    "leave-manager": {
      "command": "python",
      "args": ["/path/to/leave_manager.py"]
    }
  }
}

⚙️ Configuration

Default Settings

  • Default Leave Balance: 20 days per employee
  • Date Format: YYYY-MM-DD (ISO 8601)
  • Storage: In-memory (resets on restart)

Customization

To modify default settings, edit the following in leave_manager.py:

# Change default leave balance
leave_balance[employee_id] = 20  # Modify this value

# Add custom leave types
leave_type: str = "Annual"  # Can be "Annual", "Sick", "Personal", etc.

🚀 Usage

Basic Workflow

1. Register an Employee

register_employee(
    employee_id="EMP004",
    name="Alice Johnson",
    email="alice@company.com",
    department="Marketing"
)

2. Submit a Leave Request

request_leave(
    employee_id="EMP004",
    start_date="2024-12-25",
    end_date="2024-12-27",
    leave_type="Annual",
    reason="Holiday vacation"
)

3. Check Leave Balance

check_balance(employee_id="EMP004")

4. Approve/Reject Request

# Approve
approve_leave(request_id="REQ001", approver_id="MANAGER")

# Reject
reject_leave(request_id="REQ002", reason="Insufficient coverage", approver_id="MANAGER")

5. View Requests

# View all requests
view_all_requests(status="All")

# View only pending requests
view_all_requests(status="Pending")

# View employee-specific requests
view_my_requests(employee_id="EMP004")

🛠️ Available Tools

Employee Management

Tool Description Parameters
register_employee Register a new employee employee_id, name, email, department
view_employee View employee details employee_id

Leave Operations

Tool Description Parameters
request_leave Submit a leave request employee_id, start_date, end_date, leave_type, reason
approve_leave Approve a leave request request_id, approver_id
reject_leave Reject a leave request request_id, reason, approver_id
check_balance Check employee leave balance employee_id

Viewing & Reporting

Tool Description Parameters
view_all_requests View all leave requests status (All/Pending/Approved/Rejected)
view_my_requests View employee's requests employee_id
department_summary Get department statistics department

Administration

Tool Description Parameters
add_leave_balance Add leave days to employee employee_id, days

📚 API Reference

Employee Registration

register_employee(
    employee_id: str,      # Unique employee identifier
    name: str,             # Full name
    email: str,            # Email address
    department: str = "General"  # Department (optional)
) -> str

Returns: Success message with employee ID

Leave Request Submission

request_leave(
    employee_id: str,      # Employee ID
    start_date: str,       # Start date (YYYY-MM-DD)
    end_date: str,         # End date (YYYY-MM-DD)
    leave_type: str = "Annual",  # Leave type (optional)
    reason: str = ""       # Reason (optional)
) -> dict

Returns: Dictionary with request details and request ID

Leave Approval

approve_leave(
    request_id: str,           # Request ID to approve
    approver_id: str = "MANAGER"  # Approver ID (optional)
) -> dict

Returns: Dictionary with approval confirmation

Balance Check

check_balance(employee_id: str) -> dict

Returns: Dictionary with employee name, balance, and total requests


🎭 Demo Data

The system comes with pre-loaded demo data:

Demo Employees

ID Name Email Department Leave Balance
EMP001 John Doe john@company.com Engineering 17 days
EMP002 Jane Smith jane@company.com HR 20 days
EMP003 Bob Wilson bob@company.com Sales 20 days

Demo Requests

  • REQ001: John Doe - Dec 20-22, 2024 (Approved)
  • REQ002: Jane Smith - Dec 25-27, 2024 (Pending)

🏗️ Architecture

Data Structure

employees = {
    "EMP001": {
        "name": "John Doe",
        "email": "john@company.com",
        "department": "Engineering",
        "join_date": "2024-12-19"
    }
}

leave_balance = {
    "EMP001": 17  # Days remaining
}

leave_requests = [
    {
        "request_id": "REQ001",
        "employee_id": "EMP001",
        "employee_name": "John Doe",
        "start_date": "2024-12-20",
        "end_date": "2024-12-22",
        "days": 3,
        "leave_type": "Annual",
        "reason": "Family vacation",
        "status": "Approved",
        "submitted_date": "2024-12-19",
        "approved_by": "Admin",
        "approved_date": "2024-12-19"
    }
]

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Manger Leave System Lpmr

How do I install Manger Leave System Lpmr?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Manger Leave System Lpmr safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Manger Leave System Lpmr still maintained?

The last commit was 9 months ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.