ClickTime MCP by usefulapi

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

Read jobs, timesheets and reports; log time, update entries and submit timesheets in ClickTime.

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

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

概览

AI 生成的概览

托管的 ClickTime 连接器,让助手读取项目、工时表、休假与报表,并记录、修改或提交用户自己的工时。

可以做什么
  • 读取账户信息:当前用户、公司设置、项目、客户、任务、项目与任务组合及项目阶段
  • 查看工时记录与工时表,包括按日期查询状态和可用的提交或撤回操作
  • 查询休假类型与余额、已休或已申请的休假、报销单与报销明细
  • 生成公司范围的工时报表,以及按项目、任务、用户、月份、日期或工作类型分组的工时汇总
  • 记录、修改并提交或撤回用户自己的工时记录与工时表
  • 创建客户与项目,并查看用量、升级或取消订阅
适用场景
适合在 ClickTime 中记录工作的用户,希望助手回答已记录工时、未提交或被退回的工时表、休假余额和项目工时等问题,或在不打开网页应用的情况下登记并提交自己的工时。
运行要求
远程 MCP 端点,无需本地安装。只需填写服务器地址;登录使用 OAuth,登录页要求提供 ClickTime 的 API 令牌(位于 My Preferences 的 Authentication Token 标签页),由服务器按用户保存。查看用户列表、报表及创建客户或项目需要经理或管理员权限;部分工具需启用 Expenses、TimeOffAccruals 或子项目阶段模块。
安装前请注意
写入类工具会改动 ClickTime 数据:创建工时记录不具幂等性,提交工时表会锁定记录并通知审批人,操作前应先确认。创建客户或项目可能产生重复项。ClickTime API 令牌在登录时输入并由第三方托管方保存。用量按次计费:免费方案每月 50 次调用,付费方案需付费并通过结账链接订阅。

安装

在 SourceWeft 中

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

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

交给智能体安装

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

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

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

其他 MCP 客户端

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

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

README

ClickTime MCP by usefulapi

Use your ClickTime account from Claude, Cursor, or any MCP client. Read jobs, timesheets, time off and company reports, and log, edit or submit your own time. Hosted, no local install: connect with your own credentials.

Live endpoint: https://clicktime.usefulapi.io/mcp · Homepage: https://usefulapi.io

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://clicktime.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http clicktime https://clicktime.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": {    "clicktime": {      "url": "https://clicktime.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 ClickTime credentials.

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

On first connect you provide your ClickTime API token, found in ClickTime under My Preferences, then the Authentication Token tab. The server validates it and stores it per user. No keys go in config files.

Tools

ToolTypeWhat it does
clicktime_get_mereadGet my user
clicktime_get_companyreadGet company settings
clicktime_list_jobsreadList jobs (projects)
clicktime_get_jobreadGet job
clicktime_list_clientsreadList clients
clicktime_list_tasksreadList tasks
clicktime_list_job_task_controlsreadList valid job and task pairs
clicktime_list_job_phasesreadList job phases
clicktime_list_time_entriesreadList my time entries
clicktime_get_time_entryreadGet time entry
clicktime_list_timesheetsreadList my timesheets
clicktime_get_timesheet_by_datereadGet timesheet covering a date
clicktime_list_timesheet_actionsreadList actions available on my timesheet
clicktime_list_time_off_typesreadList time off types and balances
clicktime_list_time_offreadList my time off
clicktime_list_time_off_requestsreadList my time off requests
clicktime_list_expense_sheetsreadList my expense sheets
clicktime_list_expense_itemsreadList my expense items
clicktime_list_usersreadList users
clicktime_time_reportreadTime report (company-wide)
clicktime_time_summaryreadTime summary (grouped)
clicktime_create_time_entrywriteLog time
clicktime_update_time_entrywriteUpdate time entry
clicktime_submit_timesheetwriteSubmit or recall my timesheet
clicktime_create_clientwriteCreate client
clicktime_create_jobwriteCreate job
clicktime_usage_statusmetaUsage status (free-tier meter)
clicktime_request_featuremetaRequest a missing feature
clicktime_upgrademetaUpgrade to Pro or Pro+
clicktime_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 user)$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 clicktime_upgrade (it returns a Stripe Checkout link). Cancel any time with clicktime_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running clicktime_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT — see LICENSE. Documentation only; the server is hosted.

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

工具

26

clicktime_get_me

Get my user

The ClickTime user this API token belongs to: id, name, email, security level (Standard, Manager, Admin), division, default task, approvers and timesheet preferences. The API token itself is never returned. GET /Me.

无需输入参数。

clicktime_get_company

Get company settings

Company configuration: name, currency, week start, timesheet model, how the company names jobs/clients/tasks, restriction methods, and which optional modules are on (Expenses, TimeOffAccruals, SubJob phases). Call this first before using expense, time-off-request or phase tools. GET /Company.

无需输入参数。

clicktime_list_jobs

List jobs (projects)

List the jobs (projects) the token's user can log time to, by name, with job number, client, dates and active state. Use the ids to log time or filter entries. GET /Me/Jobs.

输入参数namelimitoffsetmy_jobsverboseclient_idis_activejob_number

clicktime_get_job

Get job

One job (project) by id: name, number, client, start/end dates, active state. GET /Me/Jobs/{jobID}.

输入参数job_id必填verbose

clicktime_list_clients

List clients

List the clients the token's user can see, with client number, short name and active state. GET /Me/Clients.

输入参数namelimitoffsetis_activeshort_nameclient_number

clicktime_list_tasks

List tasks

List the tasks (work categories) the token's user can log time against, with task code and active state. When the company restricts tasks per job, use clicktime_list_job_task_controls instead. GET /Me/Tasks.

输入参数namelimitoffsetmy_tasksis_activetask_code

clicktime_list_job_task_controls

List valid job and task pairs

The (job, task) combinations the user may log time on. Only valid when the company's TaskRestrictionMethod is 'byjob' (see clicktime_get_company); otherwise ClickTime answers 403. Active rows only unless filtered. GET /Me/Jobs/TaskControls.

输入参数limitjob_idoffsettask_id

clicktime_list_job_phases

List job phases

The phases (sub-jobs, level 1) defined on a job. Needs the company's SubJob/phases module (see clicktime_get_company). Use the phase id when logging time on a phased job. GET /Me/Jobs/{jobID}/JobPhase.

输入参数limitjob_id必填offset

clicktime_list_time_entries

List my time entries

List the token user's time entries, newest first: date, hours, job, task, comment, start/end time. Filter by one day (entry_date), a date range (start_date + end_date), job or task. Only days with logged time appear. Add verbose to get job/client names and the billable flag. GET /Me/TimeEntries.

输入参数limitjob_idoffsettask_idverboseend_dateentry_datestart_date

clicktime_get_time_entry

Get time entry

One of the user's time entries by id, with hours, comment, date, job, task, phase and custom fields. GET /Me/TimeEntries/{timeEntryID}.

输入参数verbosetime_entry_id必填

clicktime_list_timesheets

List my timesheets

List the user's timesheets (pay periods), newest first, with period dates, status (Open, Waiting, Approved, Rejected, Locked...), total hours and who submitted or approved. GET /Me/Timesheets.

输入参数limitoffsetstatusto_datefrom_date

clicktime_get_timesheet_by_date

Get timesheet covering a date

The user's timesheet whose period contains a given day: period dates, status, day totals and the general actions (Submit, UndoSubmit...). GET /Me/Timesheets/{date}.

输入参数date必填

clicktime_list_timesheet_actions

List actions available on my timesheet

The status actions the user can take right now on the timesheet covering a date (Submit, UndoSubmit...). Check this before clicktime_submit_timesheet. GET /Me/Timesheets/{date}/Actions.

输入参数date必填

clicktime_list_time_off_types

List time off types and balances

The time off types the user can take (vacation, sick...) with CurrentBalance, accrual and whether approval is required. Use for balance questions. GET /Me/TimeOffTypes.

输入参数limitoffsetis_activerequires_approval

clicktime_list_time_off

List my time off

Time off the user has taken or booked, newest first: date, hours, type, notes. Not requests or balances. GET /Me/TimeOff.

输入参数limitoffsetto_datefrom_datetime_off_type_id

clicktime_list_time_off_requests

List my time off requests

The user's time off requests with status and dates. Needs the company's TimeOffAccruals module (see clicktime_get_company). GET /Me/TimeOffRequests.

输入参数limitoffsetstatusto_datefrom_date

clicktime_list_expense_sheets

List my expense sheets

The user's expense sheets with status, total and reimbursable amount, paid flag. Needs the company's Expenses module (see clicktime_get_company). GET /Me/ExpenseSheets.

输入参数paidlimitoffsetstatusto_datefrom_date

clicktime_list_expense_items

List my expense items

The user's expense items: date, type, amount, description, job, billable flag, sheet. Receipt images are not fetched. Needs the Expenses module. GET /Me/ExpenseItems.

输入参数limitjob_idoffsetto_datefrom_dateexpense_sheet_id

clicktime_list_users

List users

List people in the company with name, email, security level, division, approvers and active state. Needs a Manager or Admin token (others get 403). Cost and billing rates are included for Admins. GET /Users.

输入参数nameemaillimitoffsetis_activedivision_id

clicktime_time_report

Time report (company-wide)

Company-wide time entries (what the Time report shows): date, user, job, client, task, hours, billable flag, rates. Filter by date range, user, job, client, task, division or billable. Needs an Admin, or a Manager allowed to run company reports. Up to 2500 rows per page. GET /Reports/Time.

输入参数limitjob_idoffsettask_iduser_idend_dateclient_idstart_datedivision_idis_billable

clicktime_time_summary

Time summary (grouped)

Hours, billable hours, billings and cost totals grouped by Job, Task, User, Month, Date or WorkType (several groupings combine, for example Job + User). Needs a Manager or Admin token. ClickTime requires at least one of job_id, user_id or task_id as a filter. GET /Reports/TimeSummary.

输入参数limitjob_idoffsettask_iduser_idend_dategroup_by必填start_datejob_is_active

clicktime_create_time_entry

Log time

WRITE: log a time entry on the token user's own timesheet. Needs job_id and hours; task_id falls back to the user's default task; date defaults to today. Creates a NEW entry each call (not idempotent) and fails on a locked or submitted timesheet. Confirm date, hours, job, task and comment with the user first. POST /Me/TimeEntries.

输入参数datehours必填job_id必填commenttask_idend_timephase_idbreak_timestart_timesub_phase_iddcaa_explanation

clicktime_update_time_entry

Update time entry

WRITE: change one of the user's own time entries (hours, comment, job, task, start/end time, break). Only the fields you pass change; the date cannot be changed. Overwrites the previous values; a locked timesheet rejects it. Show the current and new values to the user first. PATCH /Me/TimeEntries/{timeEntryID}.

输入参数hoursjob_idcommenttask_idend_timephase_idbreak_timestart_timesub_phase_idtime_entry_id必填dcaa_explanation

clicktime_submit_timesheet

Submit or recall my timesheet

WRITE: submit the user's timesheet covering a date for approval (action Submit), or recall it (UndoSubmit). Submitting locks the entries and notifies the approver; confirm with the user first. Check the available actions with clicktime_list_timesheet_actions first. POST /Me/Timesheets/{date}/Actions.

输入参数date必填action必填commenthas_attestation

clicktime_create_client

Create client

WRITE: create a client. Needs an Admin, or a Manager allowed to add clients. Creates a NEW client each call (not idempotent); check clicktime_list_clients first to avoid duplicates. POST /Clients.

输入参数name必填notesis_activeshort_name必填client_number

clicktime_create_job

Create job

WRITE: create a job (project) under a client. Needs an Admin, or a Manager allowed to add jobs. Creates a NEW job each call (not idempotent); check clicktime_list_jobs first to avoid duplicates. POST /Jobs.

输入参数name必填notesend_dateclient_id必填is_activejob_number必填start_dateis_billable

版本历史

6
  1. v1.2.4最新Nov 7, 2026
  2. v1.1.3Nov 5, 2026
  3. v1.1.2Nov 5, 2026
  4. v1.1.1Nov 4, 2026
  5. v1.1.0Nov 3, 2026
  6. v1.0.1Nov 3, 2026

评分

已满足适用检查项的 100%

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

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

其他 Usefulapi 集成