# Proliant MCP connector

The Proliant connector brings employees, dependents, pay rates and accrual balances into Claude, ChatGPT, Cursor and the Elaichi Agent, so each person can look up and update Proliant records inside their own access, with every change logged.

Source: https://elaichi.ai/connectors/proliant/

## Facts

| | |
| --- | --- |
| Application | Proliant |
| Category | HRIS |
| AI tools | 233 |
| Authentication | Connects with an API key |
| Bring your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. Connected tools are never listed one by one, however few there are. The endpoint advertises `search_tools` and `execute_tool` instead |

## What you can ask once Proliant is connected

- Show Maria Lopez's current pay rates and accrual balance
- List every employee added to Acme Holdings this month
- Add a dependent for James Park, spouse, born 1988

## Connect Proliant in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Proliant.
2. Optionally set Share with, then press Connect.
3. Paste a Proliant API key. One person generates a token in Proliant and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Proliant tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Proliant MCP connector for Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Proliant MCP connector for ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Proliant MCP connector for Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Proliant to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Proliant tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Proliant through Elaichi

### Set up a new hire in Proliant

HR. Create the employee record from the offer details, then attach dependents and a starting pay rate without leaving the conversation.

### Fix a pay rate before the run closes

Payroll. Pull up an employee's current rates, correct the one that is wrong, and read it back to confirm before payroll locks.

### Apply an annual raise across a whole team

Payroll. Update rates in bulk for everyone on a list, then check the new figures to make sure nobody was missed.

### Update dependents after a life event

Benefits. When someone marries or has a child, add or update the dependent in Proliant from the details they sent over.

### Check accrual balances before approving leave

Finance. Ask how much paid time off an employee has accrued and see which company accrual plan it comes from.

### Answer headcount questions across every company

Operations. List employees for any Proliant company you manage and get a plain answer on who is active where.

## Frequently asked questions

### How do I connect Proliant to Claude?

Connect Proliant in Elaichi first: Proliant connects with an API key, so you paste the key from your Proliant account into Elaichi and the connection is live. Then open Claude, go to Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp. There is no OAuth application to register and no client ID or secret to generate, and the whole thing takes a few minutes.

### Does Proliant work with ChatGPT and Cursor as well as Claude?

Yes. Once Proliant is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client and the Elaichi Agent. You connect Proliant once and every client picks it up.

### What can an AI agent actually do with my Proliant data?

It can look up companies, employees, dependents, pay rates and accrual balances in Proliant, and answer questions about them in plain language. It can also create a new employee, add a dependent, change or bulk update pay rates, and adjust accruals when you ask. Short, concrete asks such as "show Maria's current pay rates" work better than long paragraphs.

### Does connecting Proliant give the AI access to every employee and company?

No. Every call runs as the person who signed in, so the AI sees only the Proliant companies and employee records that person's access already allows. Elaichi can narrow that further for a team, but it never widens what someone could see in Proliant on their own.

### Can my team share one Proliant connection?

Yes. One administrator connects Proliant with the API key and shares the connection with a team in Elaichi, and nobody else ever handles the key. Each teammate still signs in as themselves, so the audit log names the person who looked up or changed a Proliant record, not a shared account.

### Can I stop an agent from deleting or changing things in Proliant?

Yes. Restrictions in Elaichi work per action, so you can allow reading employees and rates while blocking the actions that delete an employee or change a pay rate in Proliant. A restricted action is never advertised to Claude, ChatGPT or any other client, so no prompt can reach it.

### What happens to a Proliant connection when someone leaves?

Offboarding a person in Elaichi ends their access to Proliant through every client at once. A shared Proliant connection keeps working for everyone else on the team. If you disconnect Proliant in Elaichi, it disappears from Claude, ChatGPT, Cursor and the Elaichi Agent in one step.

### Does the Proliant MCP connector work with Gemini, Codex, Claude Code or other MCP clients?

Yes. Proliant is reached over the same MCP endpoint every client uses, so anything that speaks MCP can call it — Gemini, Codex, Claude Code, Windsurf, Cline, Zed and OpenCode among them — alongside Claude, ChatGPT, Cursor, and the Elaichi Agent. The tools on offer and the access behind them are identical whichever client asks. Only the setup screen differs.

## All 233 Proliant tools

Every tool below is callable through https://api.elaichi.ai/mcp once Proliant is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all Proliant companies** (List). List Proliant companies available to the current client as a lookup list. Returns: value, description.
- **Get single Proliant company by ID** (Get). Get detailed information about a specific Proliant company by id. Returns: address1, address2, adminHold, aggregateFilings, aggregateLimits, allowBackDate, allowSameDate, autoPayEmployees, autoPostRecurring, batchByPaygroup, calendarId, costCenter1Description, costCenter2Description, costCenter3Description, costCenter4Description, costCenter5Description, checkCalcSettings, checkCalcWarnings,…. Required: id.
- **List all Proliant employees** (List). List employees for a Proliant company with optional search criteria including cost centers, name, SSN, email, and change date range. Returns: directDeposits, taxes, emergencyContacts, rates, i9ExpirationDate, i9FormsReceived, i9Verified, visaExpirationDate, visaType, lastChangeDate, overrideSupervisorCostCenter1, overrideSupervisorCostCenter2, overrideSupervisorCostCenter3,…. Required: company_id.
- **Create a Proliant employee** (Create). Create a new employee for a Proliant company. Returns the created employee identifier as a string. Required: company_id, employee.
- **Get single Proliant employee by ID** (Get). Get a single employee by id from a Proliant company. Returns: employee, directDeposits, emergencyContacts, taxes, rates. Required: id, company_id.
- **Update a Proliant employee by ID** (Update). Update an employee by id in a Proliant company. Returns the updated employee identifier as a string. Required: id, company_id, employee.
- **Delete a Proliant employee by ID** (Delete). Delete an employee by id from a Proliant company. Returns an empty 202 response on success. Required: id, company_id.
- **List all Proliant dependents** (List). List dependents for an employee in a Proliant company. Returns the dependent record including its id. Required: company_id, employee_id.
- **Create a Proliant dependent** (Create). Create a dependent for an employee in a Proliant company. Returns a success message string. Required: company_id, employee_id, beneficiary, isDependent, dependentId, isHandicapped, smoker.
- **Get single Proliant dependent by ID** (Get). Get a single dependent for an employee in a Proliant company by id. Returns the dependent record including its id. Required: id, company_id, employee_id.
- **Update a Proliant dependent by ID** (Update). Update a dependent for an employee in a Proliant company by id. Returns a success message string. Required: id, company_id, employee_id, beneficiary, isDependent, dependentId, isHandicapped, smoker.
- **List all Proliant rates** (List). List all rates for an employee in a Proliant company. Returns: code, salary, rate, ratePer, costCenter1, costCenter2, costCenter3, costCenter4, costCenter5, jobCode, startDate, endDate, payGrade, id, changeRateReasonCode, raisePercentage, lastChangeUserName, lastChangeDateTime. Required: company_id, employee_id.
- **Create a Proliant rate** (Create). Create a new rate for an employee in a Proliant company. Returns a success string. Required: company_id, employee_id, code.
- **Update a Proliant rate by ID** (Update). Update an existing rate for an employee in a Proliant company. Returns a success string. Required: id, company_id, employee_id, code.
- **Delete a Proliant rate by ID** (Delete). Delete a rate for an employee in a Proliant company by id. Returns an empty 202 response on success. Required: id, company_id, employee_id.
- **Proliant rates bulk update** (Update). Bulk update rates for an employee in a Proliant company. Returns a success string. Required: company_id, employee_id.
- **List all Proliant employee accruals** (List). List all accrual records for an employee in a Proliant company. Returns: code, startDate, endDate, lengthOfService, rate, amount, hours, maximum, carryOverMaximum, overrideRate, overrideHours, overrideAmount, usedHours, usedAmount, availableHours, availableAmount, lastAccrueDate, lastChangeDateTime, lastChangeUser, probationHours, probationDollars, accruedHours, accruedDollars, grantedHours,…. Required: company_id, employee_id.
- **Create a Proliant employee accrual** (Create). Create an accrual record for an employee in a Proliant company. Returns: code. Required: company_id, employee_id, code, startDate, lengthOfService, lastAccrueDate.
- **Get single Proliant employee accrual by ID** (Get). Get a single accrual record for an employee in a Proliant company by id. Returns: code, startDate, endDate, lengthOfService, rate, amount, hours, maximum, carryOverMaximum, overrideRate, overrideHours, overrideAmount, usedHours, usedAmount, availableHours, availableAmount, lastAccrueDate, lastChangeDateTime, lastChangeUser, probationHours, probationDollars, accruedHours, accruedDollars,…. Required: id, company_id, employee_id.
- **Update a Proliant employee accrual by ID** (Update). Update an accrual record for an employee in a Proliant company by id. Returns: code. Required: id, company_id, employee_id, code, startDate, lengthOfService, lastAccrueDate.
- **Delete a Proliant employee accrual by ID** (Delete). Delete an accrual record for an employee in a Proliant company by id. Returns an empty 202 response on success. Required: id, company_id, employee_id.
- **List all Proliant company accruals** (List). List all accrual records associated with a Proliant company. Returns each accrual record including its code. Required: company_id.
- **Create a Proliant company accrual** (Create). Create a new accrual record for a Proliant company. Returns the created accrual record including its code. Required: company_id, code, probationDays, hoursBased, hoursOrDollars, divisor, decimals, applyRulesESTA, allowRequests, allowNegativeRequests.
- **Get single Proliant company accrual by ID** (Get). Get a single accrual record for a Proliant company by id. Returns the accrual record including its code. Required: id, company_id.
- **Update a Proliant company accrual by ID** (Update). Update an existing accrual record for a company in Proliant. Returns: id, attributes. Required: id, company_id, code, probationDays, hoursBased, hoursOrDollars, divisor, decimals, applyRulesESTA, allowRequests, allowNegativeRequests.
- **Delete a Proliant company accrual by ID** (Delete). Delete an accrual record for a company in Proliant by id. Returns an empty 202 response on success. Required: id, company_id.
- **List all Proliant certifications** (List). List certifications for an employee in Proliant. Returns: id, code, description, number, effectiveDate, expirationDate, companyPaid, employeePaid, reimbursed, notes. Required: company_id, employee_id.
- **Create a Proliant certification** (Create). Create a certification for an employee in Proliant by submitting an EmployeeCertificationViewModel request body. Returns a string message confirming the certification was created. Required: company_id, employee_id, code.
- **Update a Proliant certification by ID** (Update). Update a certification for an employee in Proliant by id, submitting an EmployeeCertificationViewModel request body. Returns a string message confirming the certification was updated. Required: id, company_id, employee_id, code.
- **Delete a Proliant certification by ID** (Delete). Delete a certification for an employee in Proliant by id. Returns an empty 202 response on success. Required: id, company_id, employee_id.
- **List all Proliant educations** (List). List education records for an employee in a Proliant company. Returns: id, school, years, gpa, graduated, major, degree, classes, awards, notes. Required: company_id, employee_id.
- **Create a Proliant education** (Create). Create a new education record for an employee in a Proliant company. Returns the created education record identifier as a string. Required: company_id, employee_id, school.
- **Update a Proliant education by ID** (Update). Update an education record for a specific employee in Proliant. Returns a string value (typically a success message or record identifier). Required: id, company_id, employee_id, school.
- **Delete a Proliant education by ID** (Delete). Delete an education record for a specific employee in Proliant. Returns an empty 202 response on success. Required: id, company_id, employee_id.
- **List all Proliant deduction codes** (List). List all deduction code records for a Proliant company. Returns: code, description, shortDescription, dedType, priority, w2Field, printOnCheckStub, minimum, maximum, annualMaximum, rate, autoDrop, dropPartial, autoMakeup, frequency, calculationCode, agency, taxExempt, grossCheck, disallowOverrideCalcCode, disallowOverrideRate, disallowOverrideFrequency, disallowOverrideAgency,…. Required: company_id.
- **Create a Proliant deduction code** (Create). Create a new deduction code record for a Proliant company. Returns the created deduction code record. Required: company_id.
- **Get single Proliant deduction code by ID** (Get). Get a single deduction code record by id in Proliant. Returns: code, description, shortDescription, dedType, priority, w2Field, printOnCheckStub, minimum, maximum, annualMaximum, rate, autoDrop, dropPartial, autoMakeup, frequency, calculationCode, agency, taxExempt, grossCheck, disallowOverrideCalcCode, disallowOverrideRate, disallowOverrideFrequency, disallowOverrideAgency,…. Required: id, company_id.
- **Update a Proliant deduction code by ID** (Update). Update a deduction code record by id for a Proliant company. Returns the updated deduction code record. Required: id, company_id.
- **Delete a Proliant deduction code by ID** (Delete). Delete a deduction code record by id in Proliant. Returns an empty 202 response on success. Required: id, company_id.
- **List all Proliant employee deduction codes** (List). List all employee deduction code records for a specific employee in a Proliant company. Returns the employee deduction code records including code, calculationCode, rate, amount, startDate, endDate and the remaining deduction configuration fields. Required: company_id, employee_id.
- **Create a Proliant employee deduction code** (Create). Create a new employee deduction code record in Proliant. Returns the created deduction code object including code, activeDate, and deduction configuration fields. Required: company_id, employee_id.
- **Get single Proliant employee deduction code by ID** (Get). Get a single employee deduction code record from Proliant by code and active date. Returns the employee deduction code record including code, calculationCode, rate, amount, startDate, endDate and the remaining deduction configuration fields. Required: id, company_id, employee_id, code.
- **Update a Proliant employee deduction code by ID** (Update). Update an existing employee deduction code record in Proliant by code and active date. Returns the updated deduction code object including code, activeDate, and deduction configuration fields. Required: id, company_id, employee_id, code.
- **Delete a Proliant employee deduction code by ID** (Delete). Delete an employee deduction code record from Proliant by code and active date. Returns an empty 202 response on success. Required: id, company_id, employee_id, code.
- **List all Proliant earning codes** (List). List all earning code records for a company in Proliant. Returns: code, description, shortDescription, earnType, minimum, maximum, annualMaximum, overrideRate, addToRate, rateMultiplier, overrideShift, unitDescription, autoDrop, calculationCode, rateCode, amount, frequency, units, rate, agency, dCode, reduceAutoPay, taxExempt, worked, disallowOverrideCalcCode, disallowOverrideRate,…. Required: company_id.
- **Create a Proliant earning code** (Create). Create a new earning code record for a company in Proliant. Returns the created earning code object whose properties are defined by Proliant's EarningCodeViewModel schema. Required: company_id, code.
- **Get single Proliant earning code by ID** (Get). Get a single earning code record by id for a company in Proliant. Returns: code, description, shortDescription, earnType, minimum, maximum, annualMaximum, overrideRate, addToRate, rateMultiplier, overrideShift, unitDescription, autoDrop, calculationCode, rateCode, amount, frequency, units, rate, agency, dCode, reduceAutoPay, taxExempt, worked, disallowOverrideCalcCode, disallowOverrideRate,…. Required: id, company_id.
- **Update a Proliant earning code by ID** (Update). Update an earning code record by id for a company in Proliant. Returns the updated earning code object whose properties are defined by Proliant's EarningCodeViewModel schema. Required: id, company_id, code.
- **Delete a Proliant earning code by ID** (Delete). Delete an earning code record by id for a company in Proliant. Returns an empty 202 response on success. Required: id, company_id.
- **List all Proliant employee earning codes** (List). List all earning code records associated with an employee in Proliant. Returns: agency, amount, annualMaximum, calcCode, description, costCenter1, costCenter2, costCenter3, costCenter4, costCenter5, code, jobCode, endDate, frequency, goal, lastDate, maximum, minimum, miscInfo, otc1, otc2, otc3, paidTowardsGoal, rate, rateCode, ratePer, startDate, tabled, thirdPartyId, units. Required: company_id, employee_id.
- ...and 183 more tools. Call `tools/list` via the MCP endpoint, or see the full catalog via the API, for the complete set.
