harvest-timekeeper-service
Facilitates the recording of time against Harvest projects using conversational input, featuring specialized logic for processing time-off requests. It integrates customizable daily work hour settings, support for various time zones, and advanced semantic interpretation of dates and associated projects.
Author

adrian-dotco
Quick Info
Actions
Tags
Harvest Natural Language Time Entry MCP Server
This MCP service enables logging of time transactions within the Harvest time tracking system via natural language commands. It includes dedicated functionality for processing various types of leave submissions, enhancing the user experience by intelligently interpreting spoken/written input and automating standard procedures like leave accounting.
Core Capabilities
- 🗣️ Conversational input interpretation for time logging
- 🏖️ Dedicated processing pipelines for recording absence/leave (e.g., "Calling in sick today")
- ⏰ Definition of standard daily work duration
- 🌍 Comprehensive timezone handling
- 🎯 Automated mapping to relevant projects and activities
- 📅 Context-aware temporal parsing (e.g., relative date resolution)
Prerequisites for Deployment
- A functional Node.js runtime environment
- An active subscription with Harvest
- A valid Personal Access Token obtained from Harvest Developer Portal
- The organization's unique Account Identifier
Deployment Procedure
Initial Setup
-
Install the Claude desktop client
-
Obtain a copy of the source code repository: bash git clone https://github.com/adrian-dotco/harvest-mcp-server.git cd harvest-mcp-server
-
Install necessary package dependencies and execute the build process: bash npm install npm run build
-
Execute the configuration utility: bash node build/setup.js
-
Input the required operational parameters when prompted:
- Harvest Personal Access Token (Source: https://id.getharvest.com/developers)
- Harvest Account ID
- Standard daily billable/working hours (Default: 7.5)
-
Local Timezone identifier (Default: Australia/Perth)
-
Re-launch the Claude desktop application.
Configuration complete. You can now utilize conversational time entry methods within Claude.
Maintaining Currency
To synchronize with the latest source code: bash git pull npm install npm run build
The initial setup configures Claude to point to your local build path, ensuring updates are immediately reflected after rebuilding.
Operational Commands
The service exposes several utility functions for Harvest interaction:
log_time
Records time entries based on descriptive, natural language phrasing. Examples:
Standard activity logging:
"Log 2 hours against Project X under the development task today" "Submit 45 minutes for Project Y, focusing on quality assurance procedures yesterday" "Record 3.5 hours for Project Z concerning status meetings last Friday"
Absence recording (automatically utilizes configured full-day duration):
"I require sick leave time off for today" "Report inability to work today due to illness" "Schedule annual vacation time for the duration of next week"
get_time_report
Retrieves summarized time data using descriptive queries. Examples:
Temporal Range Specifications:
"Summarize time logged across the prior month" "Provide a time aggregate for the current seven-day period" "Display working hours spanning from January 1st through January 31st" "Generate a Q1 performance summary" "What were my hours recorded yesterday?"
Aggregation Dimensions: - By Project (Default):
"Display my time breakdown by project for the previous month" "Summarize hours billed per project for this week"
- By Client Account:
"Generate a time report segmented by client for the current month" "Show accumulated hours categorized by client for the first quarter"
- By Defined Activity/Task:
"Provide a task-level summary for January's activity" "Detail time expenditure by specific task across the last week"
- By Team Member (Requires appropriate permissions):
"Show team capacity utilization figures for the past week" "Generate a performance overview segmented by user for the current month"
Report Contents: Each generated summary provides: - Total cumulative hours registered - A breakdown of billable versus non-billable allocations - Monetary value calculations (contingent on user privileges) - Granular details pertaining to the selected report dimension (Project/Client/Task/User)
list_projects
Retrieves and displays the catalogue of active Harvest projects:
"Enumerate all my active projects"
list_tasks
Fetches the specific set of permissible activities associated with a designated project:
"What activities are available for Project X?"
list_entries
Shows a condensed log of recently recorded time allocations:
"Display my most recent time entries"
Configuration Variables
The service respects the following environment parameters for customization:
HARVEST_ACCESS_TOKEN: The security credential for API interactionHARVEST_ACCOUNT_ID: The unique organizational identifierSTANDARD_WORK_DAY_HOURS: The assumed total duration of a standard workday (Default: 7.5)TIMEZONE: The operational timezone setting (Default: Australia/Perth)
Development Guidelines
The underlying architecture relies on: - TypeScript for backend logic - The MCP SDK for service hosting - chrono-node library for sophisticated date interpretation - Integration against Harvest API version 2
To contribute new functionality: 1. Fork the official repository 2. Establish a dedicated feature branch 3. Submit a Merge Request for review
Licensing
Distributed under the terms of the MIT License (Refer to the LICENSE file for specifics)
WIKIPEDIA: Business management tools encompass all the systems, applications, control mechanisms, computational aids, operational frameworks, and guiding principles utilized by organizations to effectively navigate dynamic marketplaces, maintain competitive standing, and enhance overall organizational output.
== General Perspective == Tools exist tailored to specific functional areas within an enterprise, classifiable by management aspect, such as: foresight/planning aids, operational process management systems, record-keeping utilities, human capital management resources, analytical/judgment support systems, and oversight mechanisms. A functional taxonomy often categorizes these based on general operational functions:
Utilities for capturing and ensuring the integrity of data input across departments. Systems designed for monitoring and optimizing organizational workflows and processes. Platforms for aggregating data and supporting executive decision-making. Modern management solutions have undergone rapid transformation in the last decade, driven by accelerated technological advancements, making the selection of optimal tools for any given business scenario increasingly complex. This challenge is fueled by continuous pressure to reduce expenditures, maximize revenue generation, deeply understand client requirements, and deliver products/services precisely as demanded by the market. In this environment, leadership must adopt a strategic posture toward selecting business management solutions, rather than simply adopting the newest available technology. Over-reliance on off-the-shelf tools without necessary customization frequently leads to organizational instability. Business management tools demand careful selection, followed by tailored adaptation to fit specific organizational needs, rather than forcing the organization to conform to the tool's structure.
== Dominant Instruments == In a 2013 survey conducted by Bain & Company, insights were gathered regarding the global utilization patterns of business tools, reflecting how their outputs addressed regional necessities considering prevailing economic conditions. The top ten instruments identified included:
Strategic planning frameworks Customer relationship management (CRM) platforms Employee satisfaction surveys Competitive benchmarking methodologies Balanced scorecard implementation Core competency analysis Outsourcing strategy frameworks Organizational change management programs Supply chain optimization tools Mission and vision articulation processes Market segmentation analysis Total quality management (TQM) systems
== Business Software Applications == Software, or an integrated collection of computational programs, employed by personnel to execute various organizational functions is termed business software (or an enterprise application). These applications serve to amplify productivity metrics, quantify performance indicators, and execute diverse corporate tasks with precision. This domain originated with management information systems (MIS) and evolved into comprehensive enterprise resource planning (ERP) suites. Subsequently, customer relationship management capabilities were integrated, leading the overall package into the cloud-based enterprise management landscape. While a demonstrable correlation exists between IT investment effectiveness and overall organizational performance, two elements are crucial differentiators: the efficacy of the deployment process and the diligent selection and customization of the requisite tools.
== Instruments for Small and Medium Enterprises (SMEs) == Tools specifically engineered for SMEs are vital as they furnish mechanisms for reducing operati
