Skip to main content
Glama

AI-powered HR automation using the Model Context Protocol (MCP) and Claude Desktop.

HR-Assist is an Agentic AI application that enables Claude Desktop to autonomously perform HR operations through MCP tool calling. The system demonstrates multi-step workflow orchestration by automating employee onboarding, leave management, meeting scheduling, ticket creation, and email notifications using natural language commands.

Python MCP Claude Desktop Agentic AI License


🌟 Key Highlights

  • 🤖 Agentic AI workflow powered by MCP

  • 🛠️ Modular MCP tool ecosystem for Claude Desktop

  • 🔄 Multi-step autonomous task orchestration

  • 📧 Automated email notifications

  • 🎫 IT/Admin ticket automation

  • 📅 Meeting scheduling

  • 🌴 Leave management

  • 🧩 Modular service-oriented architecture

Portfolio Project: This repository was built to demonstrate practical Agentic AI development, MCP server implementation, workflow automation, and tool-calling capabilities for GenAI and AI/ML Engineering roles.

Related MCP server: HR-Assist

📑 Table of Contents


🏗️ System Architecture

flowchart LR

    U[User] --> C[Claude Desktop]

    C --> M[MCP Server]

    M --> E[Employee Manager]
    M --> L[Leave Manager]
    M --> T[Ticket Manager]
    M --> ME[Meeting Manager]
    M --> EM[Email Service]

    E --> D[(In-Memory Data)]
    L --> D
    T --> D
    ME --> D

    EM --> SMTP[SMTP Email Server]

Architecture Overview

The project follows a modular service-oriented architecture where Claude Desktop communicates with the MCP server through the Model Context Protocol (MCP). The server exposes multiple HR tools that operate on independent service modules responsible for employee management, leave tracking, meetings, ticketing, and email notifications.

For simplicity and portability, the application uses in-memory data storage seeded with sample employee records at startup. This allows the entire onboarding workflow to be demonstrated without requiring external databases or infrastructure.

🤖 Agent Workflow

The onboarding process is executed as a multi-step AI workflow, where Claude Desktop interprets the user's request, selects the appropriate MCP tools, and coordinates them to complete the entire onboarding process autonomously.

flowchart TD

A[Natural Language Request]
--> B[Claude Desktop]

B --> C[MCP Server]

C --> D{Task Planning}

D --> E[Add Employee]

E --> F[Generate Employee Credentials]

F --> G[Send Welcome Email]

G --> H[Notify Manager]

H --> I[Create IT & Admin Tickets]

I --> J[Schedule Introductory Meeting]

J --> K[Return Final Summary]

Workflow Explanation

Unlike traditional automation scripts that execute predefined functions, the AI agent dynamically determines which MCP tools to invoke based on the user's natural language request.

For a single onboarding request, the agent autonomously:

  1. Understands the user's intent.

  2. Plans the sequence of required actions.

  3. Invokes the appropriate MCP tools.

  4. Passes relevant context between tool calls.

  5. Executes the onboarding workflow.

  6. Returns a consolidated summary after all tasks are completed.

This demonstrates tool calling, workflow orchestration, context propagation, and Agentic AI reasoning using the Model Context Protocol (MCP).

✨ Features

🤖 AI-Powered Employee Onboarding

Automate the complete onboarding process using a single natural language request.

  • Add new employees to the HRMS

  • Generate employee credentials

  • Send personalized welcome emails

  • Notify the reporting manager

  • Create onboarding tickets (Laptop, ID Card, etc.)

  • Schedule introductory meetings


🧑‍💼 Employee Management

Manage employee information through MCP tools.

  • Retrieve employee details

  • View employee profiles

  • Access manager and contact information


🌴 Leave Management

Simplify leave tracking and requests.

  • Check available leave balance

  • View leave history

  • Apply for leave


📅 Meeting Management

Coordinate employee meetings directly from Claude Desktop.

  • Schedule meetings

  • View upcoming meetings

  • Cancel existing meetings


🎫 Ticket Management

Automate IT and administrative requests.

  • Create onboarding tickets

  • Track existing tickets

  • Update ticket status


📧 Email Automation

Keep employees and managers informed automatically.

  • Welcome emails

  • Manager notifications

  • General email communication


⚡ Natural Language Interface

Interact with the HR system using plain English instead of manually invoking individual tools.

Example:

"Onboard Karan Mehta under Vikram Singh."

"Schedule a meeting for Rahul Sharma."

"How many leaves does Priya Verma have remaining?"

🧠 AI Concepts Demonstrated

This project showcases several core concepts used in modern Generative AI and Agentic AI applications.

Concept

Implementation

Model Context Protocol (MCP)

Exposes HR operations as MCP tools that Claude Desktop can discover and invoke.

Agentic AI

Executes complete HR workflows from a single natural language request.

Tool Calling

Enables the LLM to invoke structured backend tools instead of generating text alone.

Workflow Orchestration

Coordinates multiple dependent tasks such as employee creation, email notifications, ticket generation, and meeting scheduling.

Context Propagation

Passes employee information between successive tool calls during workflow execution.

Natural Language Interface

Allows users to interact with the HR system using conversational prompts instead of traditional UI forms.

Function-Based Tool Design

Each HR operation is exposed as an independent, reusable MCP tool.

Service-Oriented Architecture

Business logic is separated into modular services for maintainability and scalability.

Prompt-Driven Automation

Complex workflows are initiated through a single user prompt interpreted by Claude Desktop.

Email Automation

Integrates automated notifications into the onboarding workflow.

Why MCP?

Instead of building custom APIs or tightly coupling the AI model with backend services, this project leverages the Model Context Protocol (MCP) to expose HR functionality as standardized tools.

This enables Claude Desktop to:

  • Discover available tools automatically

  • Invoke tools securely through a standardized interface

  • Chain multiple tool calls into autonomous workflows

  • Extend the system with new capabilities without modifying the AI client

This design demonstrates how MCP simplifies the development of modular, extensible, and interoperable AI applications.

🛠️ Available MCP Tools

The MCP server exposes a collection of specialized tools that Claude Desktop can invoke to perform HR operations. Each tool is designed to handle a single responsibility, making the system modular, reusable, and easy to extend.

Category

Tool

Description

👤 Employee Management

get_employee_details

Retrieve an employee's ID, email, manager, and profile information.

👤 Employee Management

add_employee

Register a new employee in the HRMS.

🌴 Leave Management

get_employee_leaves

Check an employee's remaining leave balance.

🌴 Leave Management

get_leave_history

View an employee's historical leave records.

🌴 Leave Management

apply_leaves

Submit a leave request for specified dates.

📅 Meeting Management

schedule_meeting

Schedule a meeting between employees.

📅 Meeting Management

cancel_meetings

Cancel an existing meeting.

📅 Meeting Management

get_meetings

Retrieve all scheduled meetings for an employee.

🎫 Ticket Management

create_ticket

Raise IT or administrative requests such as laptops or ID cards.

🎫 Ticket Management

list_ticket

Retrieve all tickets associated with an employee.

🎫 Ticket Management

update_ticket_status

Update the status of an existing ticket.

📧 Communication

send_email

Send automated email notifications.


Example Tool Chain

A single onboarding request triggers multiple MCP tools behind the scenes.

User Prompt
      │
      ▼
add_employee
      │
      ▼
send_email
      │
      ▼
create_ticket
      │
      ▼
create_ticket
      │
      ▼
schedule_meeting
      │
      ▼
Return Final Summary

This demonstrates how Claude Desktop can orchestrate multiple independent MCP tools to complete a complex HR workflow from a single natural language request.

🛠️ Tech Stack

Category

Technologies

Programming Language

Python 3.11+

AI Framework

Model Context Protocol (MCP)

AI Client

Claude Desktop

Package Manager

uv

Communication

SMTP (Email Notifications)

Data Storage

In-Memory Data Structures

Configuration

JSON

Architecture

Modular Service-Oriented Design

⚙️ Installation

Prerequisites

Before getting started, ensure you have the following installed:

  • Python 3.11+

  • uv package manager

  • Claude Desktop

  • A valid email account with an App Password (required for sending automated emails)


1. Clone the Repository

git clone <repository-url>
cd hr-assist

2. Install Dependencies

Initialize the project:

uv init

Install the required MCP packages:

uv add "mcp[cli]"

3. Configure Claude Desktop

Locate your claude_desktop_config.json file and add the following MCP server configuration:

{
  "mcpServers": {
    "hr-assist": {
      "command": "<YOUR_UV_EXECUTABLE_PATH>",
      "args": [
        "--directory",
        "<YOUR_PROJECT_DIRECTORY_PATH>",
        "run",
        "server.py"
      ],
      "env": {
        "EMAIL": "<YOUR_HOST_EMAIL>",
        "EMAIL_PASS": "<YOUR_APP_PASSWORD>"
      }
    }
  }
}

Configuration Variables

Variable

Description

<YOUR_UV_EXECUTABLE_PATH>

Absolute path to the uv executable

<YOUR_PROJECT_DIRECTORY_PATH>

Absolute path to this project

EMAIL

Email address used to send automated notifications

EMAIL_PASS

App Password for your email account (recommended instead of your account password)


4. Restart Claude Desktop

After saving the configuration:

  1. Close Claude Desktop.

  2. Reopen Claude Desktop.

  3. Verify that the HR-Assist MCP Server appears in the available connectors.

💡 Note: Claude Desktop may continue running in the background even after closing the application. If your MCP server doesn't appear after updating the configuration, open Task Manager, end all Claude processes, and then launch Claude Desktop again. This ensures Claude reloads the updated MCP configuration.

🚀 Usage

Once the MCP server is configured and Claude Desktop is running, you can interact with the HR system using natural language.

Example Prompts

Onboard a New Employee

Add Karan Mehta who will report to Vikram Singh.

Check Leave Balance

How many leaves does Rahul Sharma have remaining?

Apply for Leave

Apply leave for Priya Verma from August 5 to August 7.

Schedule a Meeting

Schedule a one-on-one meeting between Rahul Sharma and Vikram Singh tomorrow at 10 AM.

Create an IT Ticket

Create a laptop replacement ticket for Karan Mehta.

The AI agent automatically selects the appropriate MCP tools and executes the requested workflow without requiring users to manually invoke individual tools.

👨‍💻 About Me

Hi, I'm Keshav Sharma 👋

I'm an aspiring Generative AI & AI/ML Engineer passionate about building intelligent systems using LLMs, Agentic AI, Model Context Protocol (MCP), Machine Learning, and Deep Learning.

I enjoy transforming AI concepts into practical applications by developing projects focused on workflow automation, intelligent agents, computer vision, and natural language processing.

This repository is part of my portfolio, showcasing my approach to designing modular, production-inspired AI systems that combine software engineering best practices with modern AI technologies.

🔗 Connect With Me

If you have feedback, collaboration ideas, or opportunities related to AI/ML or Generative AI, I'd love to connect!

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.

A
license - permissive license
-
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.

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/yash-s27/HR-assist-MCP-server'

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