mcpPaylocity
Allows loading configuration variables from a .env file to connect to the Paylocity API, supporting secure credential management.
Mentions GitHub in the context of security and avoiding accidental credential commits in version control.
Provides specific installation path instructions for Claude Desktop on macOS systems.
Supports publishing the MCP server package to PyPI for distribution and installation.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcpPaylocityshow me all employees for company 12345"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcpPaylocity MCP Server
A Model Context Protocol (MCP) server to fetch data from Paylocity API endpoints.
Components
Resources
The server implements Paylocity API resources with:
Custom
paylocity://URI scheme for accessing Paylocity dataThe following resources are available:
paylocity://employees/{company_id}- List all employees for a companypaylocity://employees/{company_id}/{employee_id}- Get details for a specific employeepaylocity://earnings/{company_id}/{employee_id}- Get earnings data for a specific employeepaylocity://codes/{company_id}/{code_resource}- Get company codes for a specific resourcepaylocity://localtaxes/{company_id}/{employee_id}- Get local taxes for a specific employeepaylocity://paystatement/{company_id}/{employee_id}/{year}/{check_date}- Get pay statement details for a specific date
Tools
The server implements the following tools:
fetch_employees- Fetches all employees for a companyTakes optional
company_idparameter
fetch_employee_details- Fetches details for a specific employeeTakes required
employee_idand optionalcompany_idparameters
fetch_employee_earnings- Fetches earnings data for a specific employeeTakes required
employee_idand optionalcompany_idparameters
fetch_company_codes- Fetches company codes for a specific resourceTakes required
code_resourceand optionalcompany_idparameters
fetch_employee_local_taxes- Fetches local taxes for a specific employeeTakes required
employee_idand optionalcompany_idparameters
fetch_employee_paystatement_details- Fetches pay statement details for a specific dateTakes required
employee_id,year,check_dateand optionalcompany_idparameters
Related MCP server: Paylocity MCP Server by CData
Future Implementations
The following endpoints will be implemented in future updates:
Higher level insights (e.g. turnover rate, headcount by department, rate comparison etc.)
Configuration
The server requires the following environment variables to be set:
PAYLOCITY_CLIENT_ID- Your Paylocity API client IDPAYLOCITY_CLIENT_SECRET- Your Paylocity API client secretPAYLOCITY_COMPANY_IDS- Comma-separated list of company IDs to usePAYLOCITY_ENVIRONMENT- API environment to use (productionortesting)MODEL_COST_PRIORITY- Optional cost priority for model selectionMODEL_SPEED_PRIORITY- Optional speed priority for model selectionMODEL_INTELLIGENCE_PRIORITY- Optional intelligence priority for model selectionMODEL_HINTS- Optional comma-separated model name hints
These can be set in a .env file in the project root directory.
MCP Handshake
On startup the server responds to the MCP initialize request with handshake data
containing its capabilities, instructions, protocol version and server info. The
instructions field describes how to use the Paylocity resources and tools.
Security
⚠️ IMPORTANT: This application caches authentication tokens in the src/mcppaylocity/access_token/ directory. These files contain sensitive credentials and should never be committed to version control.
The repository includes these paths in .gitignore, but please verify that token files are not accidentally committed when pushing changes.
If you've accidentally committed token files, follow these steps:
Remove the files from the repository:
git rm --cached src/mcppaylocity/access_token/token.json src/mcppaylocity/access_token/token_info.txtCommit the removal:
git commit -m "Remove accidentally committed token files"Consider rotating your Paylocity API credentials as they may have been compromised
Quickstart
Install
Claude Desktop
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
"mcpServers": {
"mcpPaylocity": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcpPaylocity",
"run",
"mcppaylocity"
]
}
}"mcpServers": {
"mcpPaylocity": {
"command": "uvx",
"args": [
"mcppaylocity"
]
}
}Development
Building and Publishing
To prepare the package for distribution:
Sync dependencies and update lockfile:
uv syncBuild package distributions:
uv buildThis will create source and wheel distributions in the dist/ directory.
Publish to PyPI:
uv publishNote: You'll need to set PyPI credentials via environment variables or command flags:
Token:
--tokenorUV_PUBLISH_TOKENOr username/password:
--username/UV_PUBLISH_USERNAMEand--password/UV_PUBLISH_PASSWORD
Debugging
Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.
You can launch the MCP Inspector via npm with this command:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcpPaylocity run mcppaylocityUpon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
Architecture
The server is built with the following components:
PaylocityClient - Handles communication with the Paylocity API
TokenManager - Manages authentication tokens, including caching and renewal
FastMCP Server - Exposes Paylocity data through MCP resources and tools
License
MIT License
Copyright (c) 2024 MJ Zou (@mjzou)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Available Tools
6 toolsfetch_company_codesB
Fetch company codes for a specific resource.
Args: company_id: Optional company ID (string or integer). If not provided, uses the first company ID from configuration. code_resource: Code resource to fetch (e.g., 'earnings', 'deductions', 'costcenter1', etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | No | ||
| code_resource | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that company_id defaults to the first company ID from configuration if not provided, which adds some context. However, it fails to describe critical behaviors such as authentication needs, rate limits, error handling, or what the output looks like, leaving significant gaps for a tool with parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded with the core purpose. The 'Args' section is structured for clarity, though it could be more integrated into the main text. No wasted sentences, but minor improvements in flow could enhance readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 2 parameters with 0% schema coverage and an output schema present, the description adds some parameter semantics but lacks behavioral context like authentication or error handling. The output schema reduces the need to explain return values, but overall completeness is moderate due to missing operational details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It provides meaningful semantics for both parameters: company_id is optional with a default behavior, and code_resource includes examples like 'earnings' and 'deductions'. This adds value beyond the bare schema, though it could elaborate on code_resource constraints or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'fetch' and the resource 'company codes', making the purpose understandable. It distinguishes from sibling tools like 'fetch_employee_details' by focusing on company-level codes rather than employee data. However, it doesn't explicitly contrast with all siblings, missing a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the 'Args' section, suggesting when to provide company_id and code_resource, but lacks explicit guidance on when to use this tool versus alternatives like 'fetch_employee_earnings'. No when-not-to-use scenarios or prerequisites are mentioned, leaving room for ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetch_employee_detailsB
Fetch details for a specific employee.
Args: company_id: Optional company ID (string or integer). If not provided, uses the first company ID from configuration. employee_id: Employee ID (string or integer) to get details for.
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | No | ||
| employee_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states it 'fetches details' without disclosing behavioral traits like authentication requirements, rate limits, error conditions, or what 'details' specifically includes. It mentions default behavior for company_id but lacks broader operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise with zero wasted words. The purpose is stated in one clear sentence, followed by a structured parameter explanation. Every sentence earns its place by providing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 2 parameters with 0% schema coverage and an output schema exists, the description adequately covers parameter semantics but lacks behavioral context for a read operation. The output schema reduces need to explain return values, but more operational guidance would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It provides meaningful context for both parameters: company_id is optional with default behavior explained, and employee_id is required for targeting. This adds substantial value beyond the bare schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'fetch' and resource 'details for a specific employee', making the purpose unambiguous. It distinguishes from siblings like 'fetch_employees' (plural) and 'fetch_employee_earnings' (specific data), but doesn't explicitly contrast them in the description text.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives like 'fetch_employees' (list) or 'fetch_employee_paystatement_details' (specific financial data). The description only states what it does, not when it's appropriate relative to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetch_employee_earningsB
Fetch earnings data for a specific employee.
Args: company_id: Optional company ID (string or integer). If not provided, uses the first company ID from configuration. employee_id: Employee ID (string or integer) to get earnings for.
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | No | ||
| employee_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The description states it 'fetches' data, implying a read-only operation, but doesn't specify authentication requirements, rate limits, error conditions, or what format the earnings data returns. With an output schema present, some behavioral aspects might be covered there, but the description itself lacks critical operational context for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and well-structured. The first sentence clearly states the tool's purpose, followed by a bullet-point style 'Args' section that efficiently explains each parameter. Every sentence earns its place with no wasted words, making it easy to scan and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there's an output schema (which should document return values), no annotations, and 2 parameters with good semantic coverage in the description, the description is moderately complete. However, for a data-fetching tool with sibling alternatives, it should ideally clarify what 'earnings data' includes versus other employee financial tools. The presence of an output schema raises the baseline, but the lack of usage differentiation keeps this from being fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant value beyond the input schema, which has 0% description coverage. It explains that 'company_id' is optional and defaults to the first company ID from configuration, and that 'employee_id' is required to get earnings for a specific employee. This clarifies the purpose and default behavior of both parameters, compensating well for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Fetch earnings data for a specific employee.' This is a specific verb ('fetch') + resource ('earnings data') + target ('specific employee'). However, it doesn't explicitly distinguish this from sibling tools like 'fetch_employee_paystatement_details' or 'fetch_employee_details', which might also retrieve employee financial information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'fetch_employee_paystatement_details' or 'fetch_employee_details', nor does it explain what distinguishes 'earnings data' from other employee financial data. The only usage context is in the Args section about parameter defaults, which doesn't address tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetch_employee_local_taxesB
Fetch local taxes for a specific employee.
Args: company_id: Optional company ID (string or integer). If not provided, uses the first company ID from configuration. employee_id: Employee ID (string or integer) to get local taxes for.
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | No | ||
| employee_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it 'fetches' data (implying read-only), but doesn't mention authentication requirements, rate limits, error conditions, or what the output contains. For a tool that accesses potentially sensitive employee tax data, this lack of behavioral context is a significant gap, though not contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly structured and concise. The first sentence states the core purpose clearly. The Args section efficiently documents parameters with just enough context. Every sentence earns its place with no wasted words, and information is front-loaded appropriately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there's an output schema (which handles return values), no annotations, and only 2 parameters with 0% schema coverage, the description is moderately complete. It covers the basic purpose and parameter semantics adequately but lacks behavioral context and usage guidelines. For a tool accessing sensitive employee data, more completeness would be expected, but the output schema reduces the burden somewhat.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaningful context for both parameters: company_id is optional with a default behavior (uses first company from config), and employee_id specifies it's 'to get local taxes for'. This clarifies purpose beyond the schema's type definitions. However, it doesn't explain format constraints or provide examples, keeping it from a perfect score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'fetch' and the resource 'local taxes for a specific employee', making the purpose immediately understandable. It distinguishes from siblings like fetch_employee_details or fetch_employee_earnings by specifying the exact data type (local taxes). However, it doesn't explicitly differentiate from all siblings (e.g., fetch_employee_paystatement_details might also contain tax info), so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose this over fetch_employee_details (which might include tax info) or fetch_employee_paystatement_details, nor does it specify prerequisites or context for usage. The only implicit guidance is that it's for local taxes specifically, but no explicit alternatives or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetch_employee_paystatement_detailsB
Fetch pay statement details for a specific employee, year and check date.
Args: company_id: Optional company ID (string or integer). If not provided, uses the first company ID from configuration. employee_id: Employee ID (string or integer) to get pay statement details for. year: The year to get pay statement details for. check_date: The check date to get pay statement details for (format: MM/DD/YYYY).
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | No | ||
| employee_id | No | ||
| year | No | ||
| check_date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. While 'Fetch' implies a read-only operation, the description doesn't address important behavioral aspects like authentication requirements, rate limits, error conditions, or what happens when parameters are invalid. It mentions a default behavior for company_id but provides minimal operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured with a clear purpose statement followed by a parameter-by-parameter explanation. Each sentence serves a specific purpose without redundancy. The formatting with 'Args:' section makes it easy to scan, though the parameter explanations could be slightly more detailed given the lack of schema descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there's an output schema (which handles return values), 0% schema description coverage, and no annotations, the description does an adequate job covering the basic purpose and parameters. However, for a tool that likely accesses sensitive payroll data, it should provide more context about authentication, data sensitivity, and error handling to be truly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description provides essential semantic context for all 4 parameters that the schema lacks. It explains that company_id is optional with a default behavior, identifies employee_id as the target employee, clarifies year as the period for pay statements, and specifies the exact date format for check_date. This significantly compensates for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch pay statement details') and target resource ('for a specific employee, year and check date'), making the purpose unambiguous. However, it doesn't explicitly differentiate this tool from sibling tools like fetch_employee_earnings or fetch_employee_details, which likely retrieve different types of employee financial data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With sibling tools like fetch_employee_earnings and fetch_employee_details available, there's no indication of what distinguishes this pay statement details tool from those other employee data retrieval tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetch_employeesC
Fetch all employees for a company.
Args: company_id: Optional company ID (string or integer). If not provided, uses the first company ID from configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the default behavior for company_id but lacks critical details such as whether this is a read-only operation, potential rate limits, authentication requirements, pagination, or what happens on errors. For a tool fetching all employees, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose in the first sentence, followed by parameter details in a structured 'Args' section. It avoids redundancy and is appropriately sized for a simple tool, though it could be slightly more concise by integrating the parameter explanation more seamlessly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (1 optional parameter) and the presence of an output schema (which handles return values), the description is minimally adequate. However, it lacks behavioral context (e.g., safety, performance) and sibling differentiation, making it incomplete for optimal agent use despite the structured support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaningful context for the single parameter (company_id), explaining its optional nature and default behavior, which compensates for the 0% schema description coverage. However, it doesn't elaborate on format constraints (e.g., valid ID ranges) or implications of using null, keeping it at a baseline level.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('fetch') and resource ('all employees for a company'), making it immediately understandable. However, it doesn't explicitly distinguish this tool from its siblings (e.g., fetch_employee_details, fetch_employee_earnings), which would require clarification on scope differences.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like fetch_employee_details or fetch_employee_earnings. It mentions a default behavior (using first company ID if none provided) but doesn't specify prerequisites, exclusions, or comparative contexts with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
6 tool updates
v1.0.0- Changed
fetch_company_codes1 field changed- added
Input schema / titleAdded value: +"fetch_company_codesArguments"
- Changed
fetch_employee_details1 field changed- added
Input schema / titleAdded value: +"fetch_employee_detailsArguments"
- Changed
fetch_employee_earnings1 field changed- added
Input schema / titleAdded value: +"fetch_employee_earningsArguments"
- Changed
fetch_employee_local_taxes1 field changed- added
Input schema / titleAdded value: +"fetch_employee_local_taxesArguments"
- Changed
fetch_employee_paystatement_details1 field changed- added
Input schema / titleAdded value: +"fetch_employee_paystatement_detailsArguments"
- Changed
fetch_employees1 field changed- added
Input schema / titleAdded value: +"fetch_employeesArguments"
6 tool updates
- First observed
fetch_company_codes - First observed
fetch_employee_details - First observed
fetch_employee_earnings - First observed
fetch_employee_local_taxes - First observed
fetch_employee_paystatement_details - First observed
fetch_employees
TDQS
Each tool has a clearly distinct purpose targeting specific resources: company codes, employee details, employee earnings, employee local taxes, employee pay statements, and all employees. No overlap exists between these functions, making tool selection unambiguous.
All tools follow a consistent 'fetch_[resource]_[detail]' snake_case pattern (e.g., fetch_employee_details, fetch_employee_earnings). This predictable naming convention makes the tool set easy to navigate and understand.
With 6 tools, this server is well-scoped for HR/payroll operations. Each tool serves a distinct purpose in the employee and company data domain, providing a focused yet comprehensive surface without being overwhelming.
The tool set covers key read operations for employee and company data, but lacks write/update capabilities (e.g., creating employees, updating details) and broader payroll actions. For a read-only API surface, it's reasonably complete, though agents cannot perform full CRUD workflows.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
- mcp-serverOAuthio.klokin
MCP server exposing klokin time-tracking operations (employees, time entries, stores) to AI clients.
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
MCP server for Modern Treasury — payment orders, transactions, counterparties and ledgers.
MCP server for Codat — companies, connections, invoices, bills and financial statements.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceAn MCP Server that provides access to Personio's HR and personnel data through the Personnel API, allowing interaction with employee records, HR systems, and personnel management functions.-
- AlicenseNot gradedqualityDmaintenanceThis project builds a read-only MCP server. For full read, write, update, delete, and action capabilities and a simplified setup, check out our free CData MCP Server for Paylocity (beta): https://www.cdata.com/download/download.aspx?sku=KPZK-V&type=betaMIT
- AlicenseAqualityCmaintenanceMCP server for PrismHR, enabling AI agents to automate payroll, benefits, compliance, and billing tasks with verified-schema tools and scope-gated consent.183MIT
- AlicenseAqualityBmaintenanceAn MCP server that wraps the Check Payroll API, providing 263 tools for managing companies, employees, contractors, payrolls, tax configuration, and more.318MIT
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mz462/mcpPaylocity'
If you have feedback or need assistance with the MCP directory API, please join our Discord server