ExakTime / Arcoro MCP by usefulapi

io.usefulapi由 usefulapi.io 发布官方发布者v1.7.4更新于 Nov 7, 2026

MCP server for Arcoro and ExakTime — workforce data, jobs, cost codes and locations.

发布方自己的服务:Ably MCP by usefulapi

已验证Streamable HTTP可网页运行效率与工作流数据与分析商业与电商

概览

AI 生成的概览

面向 Arcoro/ExakTime 人力资源与工时数据的远程 MCP 服务器,可让助手读取员工、项目、工时记录、休假与审批,并创建或更新项目、成本代码和地点。

可以做什么
  • 查询人员与雇佣信息:员工、人员记录、入职日期、薪资标准、部门、岗位代码、薪资周期和劳工类别
  • 浏览项目、成本代码、成本类型和地点(工地与办公室)
  • 查看工时与考勤:工时记录、原始打卡、排班、薪资周期、休假申请与余额
  • 检查审批与合规:每日工时卡与薪资周期签核、用餐休息违规
  • 对其他 Arcoro 数据仓库实体集(如设备、费用、用户)执行只读 OData 查询
  • 创建和更新项目、成本代码与地点(无删除功能,只能停用)
适用场景
适合用自然语言询问建筑或现场用工数据,例如谁在某项目上工作、加班多少小时、哪些人尚未签核工时表、有哪些待批休假;也适合在不打开 Arcoro 的情况下新增或调整项目、成本代码和地点。
运行要求
以 URL 方式添加的远程 MCP 端点;通过 OAuth 使用 ExakTime/Arcoro 账号登录,客户端配置中无需 API 密钥或 Authorization 头。Arcoro 账号需已启用 API。免费方案每月 50 次工具调用,付费方案可提高额度。
安装前请注意
写入类工具会立即在 Arcoro 中创建或修改项目、成本代码和地点,且没有删除功能,只能停用;执行前请确认。服务器会返回个人与薪资数据(联系方式、薪资标准、安全组),应按敏感信息处理。用量按次计费,付费方案通过结账链接付款;取消后当期不退款。数据仓库数据每晚刷新,当天记录可能尚未出现。

安装

在 SourceWeft 中

  1. 打开 控制台中的 ExakTime / Arcoro MCP by usefulapi,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.usefulapi%2Fexaktime/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "exaktime-arcoro-by-usefulapi": {
      "type": "http",
      "url": "https://exaktime.usefulapi.io/mcp"
    }
  }
}

README

ExakTime / Arcoro MCP by usefulapi

Connect your API-enabled ExakTime / Arcoro account.

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://exaktime.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http exaktime https://exaktime.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "exaktime": {      "url": "https://exaktime.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your ExakTime / Arcoro credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/exaktime/

Tools

ToolTypeWhat it does
exaktime_list_employeesreadList employees
exaktime_list_personsreadSearch persons
exaktime_get_personreadGet person
exaktime_get_employeereadGet employee
exaktime_list_locationsreadList locations
exaktime_get_locationreadGet location
exaktime_list_jobsreadList jobs
exaktime_get_jobreadGet job
exaktime_list_cost_codesreadList cost codes
exaktime_get_cost_codereadGet cost code
exaktime_list_cost_typesreadList cost types
exaktime_list_departmentsreadList departments
exaktime_list_job_codesreadList job codes
exaktime_list_pay_schedulesreadList pay schedules
exaktime_list_labor_classesreadList labor classes
exaktime_list_rate_codesreadList rate codes
exaktime_list_time_recordsreadList time records
exaktime_list_time_punchesreadList time punches
exaktime_list_shiftsreadList scheduled shifts
exaktime_list_pay_periodsreadList pay periods
exaktime_list_time_off_requestsreadList time off requests
exaktime_list_time_off_balancesreadList time off balances
exaktime_list_timecard_approvalsreadList daily timecard approvals
exaktime_list_pay_period_approvalsreadList pay period approvals
exaktime_list_meal_break_violationsreadList meal break violations
exaktime_query_odatareadQuery any OData entity set
exaktime_create_jobwriteCreate job
exaktime_update_jobwriteUpdate job
exaktime_create_cost_codewriteCreate cost code
exaktime_update_cost_codewriteUpdate cost code
exaktime_create_locationwriteCreate location
exaktime_update_locationwriteUpdate location
exaktime_usage_statusmetaUsage status (free-tier meter)
exaktime_request_featuremetaRequest a missing feature
exaktime_upgrademetaUpgrade to Pro or Pro+
exaktime_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per verified tenant (API key when tenant is unavailable))$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with exaktime_upgrade (it returns a Stripe Checkout link). Cancel any time with exaktime_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running exaktime_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT

来源:servers/exaktime/README.md,提交 4046075

工具

32

exaktime_list_employees

List employees

List employees (Person records of type Employee) with name, job title, department, employee id, active/inactive status and which Arcoro modules they use. Use personId with exaktime_get_employee. GET /v1/Common/Persons/Employees.

输入参数pagepage_size

exaktime_list_persons

Search persons

List or search Person records (employees and API users) by first name, last name, employee identifier or work email. Returns personId, names, work email, employee id, username and whether the person is a contractor or deleted. GET /v1/Common/Persons.

输入参数pagelast_namepage_sizefirst_namework_emailemployee_identifier

exaktime_get_person

Get person

One Person record: names, contact details, address, login username and security groups. Government identifiers are not available through this server. GET /v1/Common/Persons/{personId}.

输入参数person_id必填

exaktime_get_employee

Get employee

Employment details for a person: hire/termination date, status, employment and pay type, pay rates, job code, manager, location, department, pay schedule and union. GET /v1/Common/Persons/{personId}/Employees.

输入参数person_id必填

exaktime_list_locations

List locations

List locations (job sites and offices) with address, coordinates, active flag and whether they are used for time and attendance. GET /v1/Common/Locations.

输入参数pagepage_size

exaktime_get_location

Get location

One location by id. GET /v1/Common/Locations/{id}.

输入参数location_id必填

exaktime_list_jobs

List jobs

List jobs (projects) with identifier, name, active flag, dates, department, parent job and assigned locations. GET /v1/Time/Jobs.

输入参数pagepage_size

exaktime_get_job

Get job

One job by id. GET /v1/Time/Jobs/{id}.

输入参数job_id必填

exaktime_list_cost_codes

List cost codes

List cost codes (phases and work activities that time is booked against) with identifier, name, active flag and cost type. GET /v1/Time/CostCodes.

输入参数pagepage_size

exaktime_get_cost_code

Get cost code

One cost code by id. GET /v1/Time/CostCodes/{id}.

输入参数cost_code_id必填

exaktime_list_cost_types

List cost types

List cost types (groupings of cost codes, e.g. labor, equipment) with identifier, name and active flag. GET /v1/Time/CostTypes.

输入参数pagepage_size

exaktime_list_departments

List departments

List departments with identifier, name and active flag. GET /v1/Common/Departments.

输入参数pagepage_size

exaktime_list_job_codes

List job codes

List job codes (positions / trades) with name, description and active flag. GET /v1/Common/JobCodes.

输入参数pagepage_size

exaktime_list_pay_schedules

List pay schedules

List pay schedules with frequency, first pay date, pay periods per year and the default flag. GET /v1/Payroll/PaySchedules.

输入参数pagepage_size

exaktime_list_labor_classes

List labor classes

List labor classes with identifier, name and active flag. GET /v1/Payroll/LaborClasses.

输入参数pagepage_size

exaktime_list_rate_codes

List rate codes

List payroll rate codes with identifier, name, description and whether it is the base rate. GET /v1/Payroll/RateCodes.

输入参数pagepage_size

exaktime_list_time_records

List time records

List time records (timecard entries: who worked, when, on which cost code and location, regular/overtime hours). Filter by work date range, person, location or cost code identifier; newest first. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwTimeRecords.

输入参数topskipto_datefrom_dateperson_idall_fieldsactive_onlylocation_idcost_code_identifier

exaktime_list_time_punches

List time punches

List raw clock punches (punch time, device type, location, network time difference). Filter by date range (UTC days), person or location; newest first. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwTimePunches.

输入参数topskipto_datefrom_dateperson_idlocation_id

exaktime_list_shifts

List scheduled shifts

List scheduled shifts (employee, start/end, title, cost code, location, notes). Filter by start date range (UTC days), person or location; newest first. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwShifts.

输入参数topskipto_datefrom_dateperson_idlocation_id

exaktime_list_pay_periods

List pay periods

List pay periods (id, start and end date, closed or open, type), newest first. Use the id to find approvals. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwPayPeriods.

输入参数topskipto_datefrom_dateis_closed

exaktime_list_time_off_requests

List time off requests

List time off requests (employee, plan, start/end date, hours, status, comments, manager). Filter by status, person or start-date range. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwTimeOffRequests.

输入参数topskipstatusto_datefrom_dateperson_id

exaktime_list_time_off_balances

List time off balances

List time off balances per employee and plan (balance hours, maximum balance, manager). Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwTimeOffBalances.

输入参数topskipperson_idplan_name

exaktime_list_timecard_approvals

List daily timecard approvals

List daily timecard approvals (work date, approval type, who approved and when, the employee). Filter by work date range or employee. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwWorkDateTimeApprovals.

输入参数topskipto_datefrom_dateperson_id

exaktime_list_pay_period_approvals

List pay period approvals

List pay period (timesheet) approvals and sign-offs: pay period, approval type, approver, time, employee, comment. Use it to see who has not yet signed off. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwPayPeriodApprovals.

输入参数topskipperson_idpay_period_id

exaktime_list_meal_break_violations

List meal break violations

List meal break compliance violations (type, date, expected vs actual value) linked to a time record id. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/DwMealBreakViolations.

输入参数topskipto_datefrom_datetime_record_id

exaktime_query_odata

Query any OData entity set

Read-only OData query over any Arcoro data warehouse entity set, for questions the other tools do not cover (equipment, expenses, users, time records by hour group, learning, performance, recruiting, benefits...). Entity sets start with Dw, e.g. DwUsers, DwEquipments, DwExpenses, DwCostCodes, DwLocations, DwTimeRecordByHourGroups, DwEmploymentStatusHistories. Full list: https://my.arcoro.com/api/odata ; schema: https://api.arcoro.com/odata/$metadata. $filter uses OData v4 syntax, e.g. startswith(LastName,'Sm') and IsActive eq true. Source: the read-only OData data warehouse, refreshed nightly, so today's entries may not show until tomorrow. Page with skip/next_skip. GET /odata/{EntitySet}.

输入参数topskipfilterselectorderbyentity_set必填

exaktime_create_job

Create job

WRITE: create a job (project) that employees can book time to. Identifier must be unique. The job appears in Arcoro right away; it can be deactivated again with exaktime_update_job (there is no delete). POST /v1/Time/Jobs.

输入参数name必填end_dateis_activeidentifier必填start_dateis_certifiedlocation_idsall_locationsdepartment_idparent_job_id

exaktime_update_job

Update job

WRITE: change fields of an existing job (rename it, set dates, assign locations, or set is_active=false to close it). Only the fields you pass change (null clears a nullable field); the tool reads the job first and sends the full object, because Arcoro replaces the job on PUT. Two edits to the same job at the same moment can overwrite each other: run them one after the other. PUT /v1/Time/Jobs/{id}.

输入参数namejob_id必填end_dateis_activeidentifierstart_dateis_certifiedlocation_idsall_locationsdepartment_idparent_job_id

exaktime_create_cost_code

Create cost code

WRITE: create a cost code (phase or work activity) that time can be booked against. The name must be unique. It can be deactivated again with exaktime_update_cost_code (there is no delete). POST /v1/Time/CostCodes.

输入参数name必填is_activeidentifier必填cost_type_iddisplay_option

exaktime_update_cost_code

Update cost code

WRITE: change fields of an existing cost code (rename it, change its cost type, or set is_active=false to retire it). Only the fields you pass change; the tool reads the cost code first and sends the full object. PUT /v1/Time/CostCodes/{id}.

输入参数nameis_activeidentifiercost_code_id必填cost_type_iddisplay_option

exaktime_create_location

Create location

WRITE: create a location (job site or office). Add the address and/or latitude and longitude so geofencing and maps work. It can be deactivated again with exaktime_update_location (there is no delete). POST /v1/Common/Locations.

输入参数name必填addresscommentslatitudeis_activeis_officelongitudeidentifieris_time_and_attendanceonboarding_business_unit_id

exaktime_update_location

Update location

WRITE: change fields of an existing location (rename, move, new address, or set is_active=false to retire it). Only the fields you pass change; the tool reads the location first and sends the full object. PUT /v1/Common/Locations/{id}.

输入参数nameaddresscommentslatitudeis_activeis_officelongitudeidentifierlocation_id必填is_time_and_attendanceonboarding_business_unit_id

版本历史

10
  1. v1.7.4最新Nov 7, 2026
  2. v1.6.3Nov 5, 2026
  3. v1.6.2Nov 5, 2026
  4. v1.6.1Nov 4, 2026
  5. v1.6.0Nov 3, 2026
  6. v1.5.1Nov 3, 2026
  7. v1.4.0Nov 1, 2026
  8. v1.2.0Oct 31, 2026
  9. v1.1.0Oct 31, 2026
  10. v1.0.1Oct 31, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Usefulapi 集成