About Harvest MCP Server
Harvest MCP Server lets Harvest users manage time entries and browse projects and tasks through MCP. Its tools cover both running timers and manual entries.
Key features
- 01Retrieve authenticated user details
- 02List, create, update, and delete time entries
- 03Start and stop time entries
- 04Browse projects and tasks
Use cases
- 01Log work against a Harvest project
- 02Correct or remove an existing time entry
- 03Start or stop a running timer
MCP support
Exposes Harvest user, time-entry, project, and task operations as tools for MCP clients. It requires Harvest API credentials.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEHarvest MCP Server
For interacting with the Harvest time tracking API.
https://www.loom.com/share/b611c5d90a454fb2a7eab99ec0dc3d20?sid=edad9a28-1bbb-452c-838d-721bc435908f
Features
This MCP server provides the following tools for interacting with Harvest:
User Information
get_current_user: Retrieve information about the authenticated user
Time Entries
list_time_entries: List time entries with optional date filteringget_time_entry: Retrieve a specific time entry by IDcreate_time_entry: Create a new time entry via durationcreate_time_entry_via_start_end: Create a time entry with start/end timesupdate_time_entry: Update an existing time entrydelete_time_entry: Delete a time entrydelete_time_entry_external_reference: Delete a time entry's external referencerestart_time_entry: Restart a stopped time entrystop_time_entry: Stop a running time entry
Projects and Tasks
list_projects: List all projects with optional filteringlist_tasks: List all tasks with optional filtering
Setup Instructions
Prerequisites
- Docker
- Harvest account with API credentials
Installation
For Claude Desktop Users
If you're using Claude Desktop, you only need to add the following configuration to your MCP config file:
"harvest": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"HARVEST_ACCOUNT_ID",
"-e",
"HARVEST_TOKEN",
"tommcl/harvest-mcp"
],
"env": {
"HARVEST_ACCOUNT_ID": "YOUR_ACCOUNT_ID",
"HARVEST_TOKEN": "YOUR_API_TOKEN"
}
}
Note: You need to have Docker Desktop installed and running.
Credentials: You can obtain your Personal Access Token (PAT) and Account ID from the Harvest Developer Tools page.
Option 1: Pull from Docker Hub (For Other MCP Clients)
- Pull the Docker image directly from Docker Hub:
docker pull tommcl/harvest-mcp
Option 2: Build Locally (For Development)
-
Clone the repository:
git clone https://github.com/yourusername/harvest-mcp.git cd harvest-mcp -
Build the Docker image:
docker build -t mcp/harvest .Then use "mcp/harvest" instead of "tommcl/harvest-mcp" in your MCP config.
Note: Replace the example credentials with your actual Harvest API credentials. You can obtain your Personal Access Token (PAT) and Account ID from the Harvest Developer Tools page.
Usage
Test it out using Claude Desktop.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.