跳到主要内容
知仓学习社ZHICANG

Harvest Automation

Automate time tracking, project management, and invoicing workflows in Harvest -- log hours, manage projects, clients, and tasks through natural lan…

不碰外部(只输出文字)无严重或高危命中ComposioHQ/awesome-claude-skills

它会碰到什么

扫了多少1 个文本文件,6 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Harvest Automation

Automate your Harvest time tracking operations directly from Claude Code. Log time entries, manage projects and clients, create tasks, and pull reporting data -- all without leaving your terminal.

Toolkit docs: composio.dev/toolkits/harvest


Setup

  1. Add the Rube MCP server to your Claude Code config with URL: https://rube.app/mcp
  2. When prompted, authenticate your Harvest account through the connection link provided
  3. Start automating your time tracking workflows with natural language

Core Workflows

1. Log and Manage Time Entries

Create, list, update, and retrieve time entries for accurate billing and reporting.

Tools: HARVEST_CREATE_TIME_ENTRY, HARVEST_LIST_TIME_ENTRIES, HARVEST_GET_TIME_ENTRY, HARVEST_UPDATE_TIME_ENTRY

Log 3.5 hours of development work on project 12345, task 67890 for today

Key parameters for HARVEST_CREATE_TIME_ENTRY:

  • project_id (required) -- the project to log against
  • task_id (required) -- the task must be assigned to the project
  • spent_date (required) -- date in YYYY-MM-DD format
  • hours -- total hours (for duration-based accounts)
  • started_time / ended_time -- for timestamp-based accounts
  • notes -- description of work performed

Key parameters for HARVEST_LIST_TIME_ENTRIES:

  • from_date / to -- date range filters (YYYY-MM-DD)
  • project_id, client_id, task_id, user_id -- entity filters
  • is_billed / is_running -- status filters
  • page / per_page (max 2000) -- pagination

2. Manage Projects

Create new projects and list existing ones with client and billing configuration.

Tools: HARVEST_CREATE_PROJECT, HARVEST_LIST_PROJECTS, HARVEST_GET_PROJECT

Create a billable project called "Website Redesign" for client 456 with Tasks billing and project budget

Key parameters for HARVEST_CREATE_PROJECT:

  • name, client_id, is_billable, bill_by, budget_by (all required)
  • bill_by options: "Project", "Tasks", "People", "none"
  • budget_by options: "project", "project_cost", "task", "task_fees", "person", "none"
  • Optional: budget, hourly_rate, starts_on, ends_on, is_fixed_fee

3. Manage Clients

Create and list clients that projects are organized under.

Tools: HARVEST_CREATE_CLIENT, HARVEST_LIST_CLIENTS

List all active clients in our Harvest account
  • HARVEST_CREATE_CLIENT requires name; accepts address, currency, is_active
  • HARVEST_LIST_CLIENTS supports is_active filter and pagination (per_page max 2000)

4. Manage Tasks

Create and list reusable task types for time tracking.

Tools: HARVEST_CREATE_TASK, HARVEST_LIST_TASKS

Create a new billable task called "Code Review" with a default rate of $150/hr
  • HARVEST_CREATE_TASK requires name; accepts billable_by_default, default_hourly_rate, is_active, is_default
  • HARVEST_LIST_TASKS supports is_active, is_default filters and pagination (per_page max 100)
  • Task names must be unique across all tasks (active and archived)

5. Time Entry Reporting

Pull time entries with date ranges and filters for billing summaries and utilization reports.

Tools: HARVEST_LIST_TIME_ENTRIES, HARVEST_GET_TIME_ENTRY

Show me all unbilled time entries for project 789 from January 2026
  • Use from_date and to for date windowing
  • Filter with is_billed: false for unbilled entries
  • Combine project_id, user_id, client_id for cross-dimensional reporting
  • Paginate with page and per_page to gather complete datasets

6. Update and Correct Time Entries

Modify existing time entries to fix hours, reassign projects, or update notes.

Tools: HARVEST_UPDATE_TIME_ENTRY

Update time entry 123456 to change the hours to 4.0 and add the note "Completed API integration"
  • Requires time_entry_id
  • Supports partial updates -- only include fields you want to change
  • Can update hours, notes, project_id, task_id, spent_date, started_time, ended_time

Known Pitfalls

  • Task assignment matters: When creating time entries, the task_id must correspond to a task that is actually assigned to the specified project_id. Use project task assignments endpoint to verify, not just HARVEST_LIST_TASKS (which returns global tasks).
  • Duration vs. timestamp tracking: Harvest accounts are configured for either duration-based or timestamp-based tracking. hours is ignored on timestamp accounts; started_time/ended_time are ignored on duration accounts.
  • Pagination limits vary: HARVEST_LIST_TIME_ENTRIES and HARVEST_LIST_CLIENTS support up to 2000 per page, but HARVEST_LIST_PROJECTS and HARVEST_LIST_TASKS cap at 100 per page.
  • Date format consistency: All date parameters must use YYYY-MM-DD format. ISO 8601 with timezone is used for updated_since filters.
  • Required fields for projects: HARVEST_CREATE_PROJECT requires five fields: name, client_id, is_billable, bill_by, and budget_by. Missing any will cause a validation error.

Quick Reference

| Tool Slug | Description |

|---|---|

| HARVEST_LIST_TIME_ENTRIES | List time entries with date, project, client, user filters |

| HARVEST_CREATE_TIME_ENTRY | Log a new time entry (requires project_id, task_id, spent_date) |

| HARVEST_GET_TIME_ENTRY | Retrieve a specific time entry by ID |

| HARVEST_UPDATE_TIME_ENTRY | Update an existing time entry (requires time_entry_id) |

| HARVEST_LIST_PROJECTS | List projects with optional client filter |

| HARVEST_CREATE_PROJECT | Create a new project with billing config |

| HARVEST_GET_PROJECT | Retrieve a specific project by ID |

| HARVEST_LIST_CLIENTS | List clients with active/inactive filter |

| HARVEST_CREATE_CLIENT | Create a new client (requires name) |

| HARVEST_LIST_TASKS | List reusable task types |

| HARVEST_CREATE_TASK | Create a new task type (requires name) |


Powered by Composio

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。