mcpPaylocity
Servidor MCP de mcpPaylocity
Un servidor de Protocolo de contexto de modelo (MCP) para obtener datos de los puntos finales de la API de Paylocity.
Componentes
Recursos
El servidor implementa recursos de API de Paylocity con:
Esquema de URI
paylocity://personalizado para acceder a los datos de PaylocityLos siguientes recursos están disponibles:
paylocity://employees/{company_id}- Lista todos los empleados de una empresapaylocity://employees/{company_id}/{employee_id}- Obtener detalles de un empleado específicopaylocity://earnings/{company_id}/{employee_id}- Obtener datos de ganancias de un empleado específicopaylocity://codes/{company_id}/{code_resource}- Obtener códigos de empresa para un recurso específicopaylocity://localtaxes/{company_id}/{employee_id}- Obtener los impuestos locales de un empleado específicopaylocity://paystatement/{company_id}/{employee_id}/{year}/{check_date}- Obtener detalles del estado de pago para una fecha específica
Herramientas
El servidor implementa las siguientes herramientas:
fetch_employees: obtiene todos los empleados de una empresaToma el parámetro
company_idopcional
fetch_employee_details: obtiene detalles de un empleado específicoToma los parámetros requeridos
employee_idy opcionalescompany_id
fetch_employee_earnings: obtiene datos de ganancias de un empleado específicoToma los parámetros requeridos
employee_idy opcionalescompany_id
fetch_company_codes: obtiene códigos de empresa para un recurso específicoToma los parámetros obligatorios
code_resourceycompany_idopcionales
fetch_employee_local_taxes: obtiene los impuestos locales de un empleado específicoToma los parámetros requeridos
employee_idy opcionalescompany_id
fetch_employee_paystatement_details: obtiene los detalles del extracto de pago para una fecha específicaToma los parámetros obligatorios
employee_id,year,check_dateycompany_idopcional.
Related MCP server: Paylocity MCP Server by CData
Implementaciones futuras
Los siguientes puntos finales se implementarán en futuras actualizaciones:
[ ] Información de nivel superior (por ejemplo, tasa de rotación, plantilla por departamento, comparación de tarifas, etc.)
Configuración
El servidor requiere que se configuren las siguientes variables de entorno:
PAYLOCITY_CLIENT_ID- Su ID de cliente de la API de PaylocityPAYLOCITY_CLIENT_SECRET- Su secreto de cliente de la API de PaylocityPAYLOCITY_COMPANY_IDS- Lista separada por comas de identificaciones de empresas para usarPAYLOCITY_ENVIRONMENT- Entorno API a utilizar (productionotesting)
Estos se pueden configurar en un archivo .env en el directorio raíz del proyecto.
Seguridad
⚠️ IMPORTANTE : Esta aplicación almacena en caché los tokens de autenticación en el directorio src/mcppaylocity/access_token/ . Estos archivos contienen credenciales confidenciales y nunca deben enviarse al control de versiones.
El repositorio incluye estas rutas en .gitignore , pero verifique que los archivos de token no se confirmen accidentalmente al enviar cambios.
Si ha enviado archivos de token accidentalmente, siga estos pasos:
Eliminar los archivos del repositorio:
git rm --cached src/mcppaylocity/access_token/token.json src/mcppaylocity/access_token/token_info.txtConfirmar la eliminación:
git commit -m "Remove accidentally committed token files"Considere rotar sus credenciales de API de Paylocity, ya que podrían haber sido comprometidas
Inicio rápido
Instalar
Escritorio de Claude
En MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json En Windows: %APPDATA%/Claude/claude_desktop_config.json
"mcpServers": {
"mcpPaylocity": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcpPaylocity",
"run",
"mcppaylocity"
]
}
}"mcpServers": {
"mcpPaylocity": {
"command": "uvx",
"args": [
"mcppaylocity"
]
}
}Desarrollo
Construcción y publicación
Para preparar el paquete para su distribución:
Sincronizar dependencias y actualizar archivo de bloqueo:
uv syncDistribuciones de paquetes de compilación:
uv buildEsto creará distribuciones de origen y de rueda en el directorio dist/ .
Publicar en PyPI:
uv publishNota: Deberás configurar las credenciales de PyPI a través de variables de entorno o indicadores de comando:
Token:
--tokenoUV_PUBLISH_TOKENO nombre de usuario/contraseña:
--username/UV_PUBLISH_USERNAMEy--password/UV_PUBLISH_PASSWORD
Depuración
Dado que los servidores MCP se ejecutan en stdio, la depuración puede ser complicada. Para una experiencia óptima, recomendamos usar el Inspector MCP .
Puede iniciar el Inspector MCP a través de npm con este comando:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcpPaylocity run mcppaylocityAl iniciarse, el Inspector mostrará una URL a la que podrá acceder en su navegador para comenzar a depurar.
Arquitectura
El servidor está construido con los siguientes componentes:
PaylocityClient : gestiona la comunicación con la API de Paylocity
TokenManager : administra tokens de autenticación, incluido el almacenamiento en caché y la renovación.
Servidor FastMCP : expone datos de Paylocity a través de recursos y herramientas de MCP
Licencia
Licencia MIT
Copyright (c) 2024 MJ Zou ( @mjzou )
Por la presente se concede permiso, sin cargo, a cualquier persona que obtenga una copia de este software y los archivos de documentación asociados (el "Software"), para tratar el Software sin restricción, incluyendo, sin limitación, los derechos a usar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar y/o vender copias del Software, y para permitir que las personas a quienes se les proporciona el Software lo hagan, sujeto a las siguientes condiciones:
El aviso de derechos de autor anterior y este aviso de permiso se incluirán en todas las copias o partes sustanciales del Software.
EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUYENDO, ENTRE OTRAS, LAS GARANTÍAS DE COMERCIABILIDAD, IDONEIDAD PARA UN FIN DETERMINADO Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES O TITULARES DE LOS DERECHOS DE AUTOR SERÁN RESPONSABLES DE NINGUNA RECLAMACIÓN, DAÑOS U OTRAS RESPONSABILIDADES, YA SEA EN ACCIÓN CONTRACTUAL, EXTRACONTRACTUAL O DE OTRO TIPO, QUE SURJA DE, SE DERIVE DE O EN RELACIÓN CON EL SOFTWARE O EL USO U OTRAS RELACIONES CON EL MISMO.
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.
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
Scored across 6 tools
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
Related MCP Connectors
isolved and ApplicantPro jobs, tenant discovery, and change detection as an MCP server.
- 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.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn 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.1823 PyPI4MIT
- AlicenseAqualityBmaintenanceAn MCP server that wraps the Check Payroll API, providing 263 tools for managing companies, employees, contractors, payrolls, tax configuration, and more.318MIT