Employee Leave Management MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SUPABASE_KEY | Yes | Your Supabase API key (anon or service_role) | |
| SUPABASE_URL | Yes | Your Supabase project URL |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_leave_typesA | Return all available leave categories with their yearly default allocation. Call this to know valid leave_type values before applying for leave. |
| list_employeesA | List all active employees, optionally filtered by department. Args: department: Filter by department name (partial match, case-insensitive). Leave empty to return all employees. |
| get_employee_infoB | Fetch details for a single employee. Args: identifier: Employee code (e.g. "EMP001") or email address. |
| get_leave_balanceA | Return the leave balance (total / used / remaining) for all leave types for the specified employee and year. Args: identifier: Employee code or email. year: Calendar year (e.g. 2025). Defaults to the current year. |
| apply_for_leaveA | Submit a leave request on behalf of an employee. Args: identifier: Employee code (e.g. "EMP001") or email. leave_type: Type of leave — use list_leave_types() for valid values (e.g. "Annual", "Sick", "Casual"). start_date: First day of leave in YYYY-MM-DD format. end_date: Last day of leave in YYYY-MM-DD format. reason: Optional reason for the leave request. |
| get_leave_historyA | Retrieve all leave requests for an employee, optionally filtered by year or status. Args: identifier: Employee code or email. year: Filter by calendar year. 0 = all years. status: Filter by status: "pending", "approved", "rejected", "cancelled". Leave empty to return all statuses. |
| get_leave_requestA | Fetch full details of a single leave request by its ID. Args: request_id: The numeric ID of the leave request (returned by apply_for_leave or get_leave_history). |
| cancel_leave_requestA | Cancel a pending leave request. Only the employee who applied can cancel. Args: request_id: Numeric ID of the leave request to cancel. identifier: Employee code or email of the requester (for authorisation). |
| approve_leave_requestA | Approve a pending leave request and deduct days from the employee's balance. Call this only when acting as an HR manager or team lead. Args: request_id: Numeric ID of the leave request to approve. manager_note: Optional note from the manager (visible to the employee). |
| reject_leave_requestA | Reject a pending leave request. Call this only when acting as an HR manager or team lead. Args: request_id: Numeric ID of the leave request to reject. manager_note: Reason for rejection (recommended — visible to employee). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| leave_assistant | Structured conversation starter for the leave management assistant. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| schema_overview | Full schema overview of the leave management system. |
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/adityapatel143/GenAi_Employee_Leave_Management-MCP_Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server