# Buk MCP MCP

> Buk connects your AI client to HR and Payroll data for Latin American companies. Use it to query employee records, list departmental structures, get payroll snapshots, or approve leave requests via natural conversation.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** payroll, vacation-tracking, employee-directory, organizational-charts, latin-america

## Description

Connect Buk to any AI agent and manage your HR operations without logging into multiple web portals. This MCP lets you talk to your company's core employee data—from department charts to active payroll numbers. You don't have to pull reports manually; just ask your agent what you need, and it retrieves the details for you. Need to know who's on vacation next month? Just ask. Want a snapshot of how many employees are in Engineering versus Sales? It tells you instantly. If your current AI client doesn't support this level of integration, check out Vinkius; they host Buk right alongside thousands of other industry tools, making it easy to get everything you need in one place.

## Tools

### approve_leave
Allows you to formally approve pending requests for employee leave.

### create_employee
Onboards a brand new person, setting up their identity in the system.

### delete_employee
Removes an employee's record when they leave the company.

### get_attendance
Fetches a daily report showing who was present or absent from work.

### get_company_stats
Pulls high-level, aggregate statistics about the entire company's workforce and HR metrics.

### get_department
Retrieves detailed information about a specific internal department or cost center.

### get_employee
Gets all the personal and professional details for one particular staff member.

### get_payroll
Generates a detailed snapshot of an employee's pay information.

### list_benefits
Shows all the company-provided extras, like insurance or other perks available to staff.

### list_departments
Lists every defined organizational department (cost center) within Buk.

### list_employees
Retrieves a list of all active employee accounts in the platform.

### list_jobs
Pulls the official, registered taxonomy of job titles used inside the company.

### list_leaves
Shows a list of all recorded absences or leaves taken by employees.

### list_vacations
Lists all scheduled vacation time that has been booked or approved.

## Prompt Examples

**Prompt:** 
```
Fetch the organizational structure and show me our standard list of Departments.
```

**Response:** 
```
Departments retrieved! You currently have 'Engineering' (ID: 102), 'Commercial & Sales' (ID: 104), and 'HR Ops' (ID: 105). Do you need me to query employees inside Engineering?
```

**Prompt:** 
```
Can you check the current scheduled vacations for the employee named Fernando Silva?
```

**Response:** 
```
Searching... Fernando Silva (ID: 9812) has a pending vacation schedule approved. He will be out from March 12th to March 25th (13 days). No other leaves detected.
```

**Prompt:** 
```
Pull a high priority company overview from our Buk metrics.
```

**Response:** 
```
The overview shows you currently support 143 active employees traversing across 15 formalized departments. Your corporate footprint indicates solid scaling numbers.
```

## Capabilities

### Look up employee details
Get the complete record for a specific staff member, including IDs and roles.

### Check team availability
Review historical or upcoming leaves to see who is out of the office.

### Map organizational structure
Extract detailed department lists and cross-reference cost centers across the company.

### Run HR metrics
Pull aggregate statistics, like total active employees or payroll summaries for reporting.

### Manage staff lifecycle
Perform core actions like onboarding new hires or officially removing employee records.

## Use Cases

### Planning a cross-functional project launch
The Ops Lead needs to know who is available. They ask the agent, 'Who on the Engineering team isn't on leave?' The agent runs `list_vacations` and filters by department using `get_department`, giving the lead an accurate list of working staff.

### Processing a new hire
The HR Manager needs to onboard someone. Instead of filling out multiple forms, they tell the agent to run `create_employee` and provide the necessary details, updating the system identity in one go.

### Auditing payroll discrepancies
A manager suspects an error. They ask the agent for a paycheck snapshot using `get_payroll` and compare it against the daily attendance report generated by `get_attendance`. This pinpoints exactly where the data mismatch occurred.

### Mapping organizational changes
The Director needs to know about new departments. They ask the agent for a list of cost centers using `list_departments` and then use `get_company_stats` to see how those new departments impact overall headcount.

## Benefits

- Stop jumping between systems. You can query staff directories, list vacations using `list_vacations`, and check company stats—all from your single AI client chat window.
- Automate the employee lifecycle. Use tools like `create_employee` for onboarding or `delete_employee` for offboarding without manual form submission.
- Get accurate workforce data instantly. Need to know how many people are in Sales? Run `get_company_stats` and get a real-time number, not an estimate from an old spreadsheet.
- Streamline leave management. Instead of emailing managers, ask your agent about team capacity by using `list_leaves` or checking pending time with `approve_leave`.
- Understand company structure instantly. You can call `list_departments` to see every cost center and then use `get_department` to drill down into its details.

## How It Works

The bottom line is you get full access to Buk's HR database through conversation, without needing to touch any dashboards or forms.

1. Subscribe to this MCP and provide your Buk API Key and company domain.
2. Your AI agent connects to the service, validating your credentials against your corporate environment.
3. You ask a natural language question (e.g., 'Who reports to Department X?'), and the tool runs the query and returns structured data.

## Frequently Asked Questions

**How do I list all available job titles using Buk?**
You call `list_jobs`. This function pulls the official, standard list of every job role defined in your company's internal taxonomy. It’s helpful for ensuring consistency when creating new employee records.

**Can I approve a leave using Buk? What is the process?**
Yes, you use `approve_leave`. You tell the agent which pending leave request needs approval, and it executes the action directly in your Buk system. This saves going through the manual approval workflow.

**What information does get_employee provide?**
`get_employee` provides a full profile of one person, pulling together their personal details, department affiliation, and current role into one data block for you to review.

**Do I need to know the Cost Center ID to check departments?**
No. You can use `list_departments` first to see all available cost centers, or simply ask the agent by name, and it will help you find the correct department details using `get_department`.

**When I use `create_employee`, what mandatory details must I provide?**
The tool requires core identifiers like the employee's full name, associated department ID, and start date. If any of these fields are missing or malformed, the API call will fail immediately, telling you exactly which piece of information needs fixing.

**How does `get_payroll` handle different types of compensation data?**
It pulls a snapshot covering current pay rates, accrued hours, and recorded deductions. Since this is sensitive HR data, make sure your agent client only runs the query when absolutely necessary.

**What are the consequences or security considerations for running `delete_employee`?**
Running this tool permanently removes an employee's identity from the system. This action is irreversible, so confirm with your HR leadership before executing any offboarding command.

**How should I manage large data sets when calling `get_attendance`?**
The tool fetches the daily attendance matrix for a specified date range. To maintain performance and avoid timeouts, it's best practice to request data in smaller batches, ideally 30 days or less at a time.