Skip to content
Skillpedia
Automations77k · #1235

Harvest Automation

Lets your agent automate time tracking and invoicing in Harvest. It can log hours, manage projects, and clients. This simplifies project management and billing.

What it does

This tool helps you manage your time and projects in Harvest. You can log work hours, create projects and clients, and generate reports, all using simple text commands.

When to use it

  • ✓Logging hours worked on a specific project.
  • ✓Creating a new project or client to organize your work.
  • ✓Checking which tasks were completed in a given period.

Example of what to ask your AI

“Log 3 hours for the 'Digital Marketing' project for the 'Content Creation' task today.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/ComposioHQ/awesome-claude-skills/blob/master/composio-skills/harvest-automation/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/ComposioHQ/awesome-claude-skills/blob/master/composio-skills/harvest-automation/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

You write what you want to do, like logging hours or creating a project. The tool translates your request into commands for Harvest and performs the action.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add ComposioHQ/awesome-claude-skills --skill Harvest Automation

Or download just the file:

curl -L https://raw.githubusercontent.com/ComposioHQ/awesome-claude-skills/master/composio-skills/harvest-automation/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

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).

…

FAQ

Do I need to know project and task IDs?

Yes, to log hours accurately, you'll need to provide project and task IDs. The tool can list projects and tasks to help.

How does Harvest know if I want to log hours or create something?

The tool analyzes your request. If you ask to 'log 3 hours', it knows to track time. If you ask to 'create a project', it knows to create a new project.

Can I create projects without knowing all the details?

Some fields are required to create a project, like name and client ID. Others, like budget, are optional.

Details

Original description by the author

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

repo: ComposioHQ/awesome-claude-skills

Popularity

GitHub stars
77k
Ranking position
#1235
License
—
Updated
9/18/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills