Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HARVEST_API_KEY | Yes | Your Harvest API key for authentication | |
| HARVEST_ACCOUNT_ID | Yes | Your Harvest account ID for API access |
Schema
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_users | List all users in your Harvest account. Args:
is_active: Pass true to only return active users and false to return inactive users
page: The page number for pagination
per_page: The number of records to return per page (1-2000) |
| get_user_details | Retrieve details for a specific user. Args:
user_id: The ID of the user to retrieve |
| list_time_entries | List time entries with optional filtering. Args:
user_id: Filter by user ID
from_date: Only return time entries with a spent_date on or after the given date (YYYY-MM-DD)
to_date: Only return time entries with a spent_date on or before the given date (YYYY-MM-DD)
is_running: Pass true to only return running time entries and false to return non-running time entries |
| create_time_entry | Create a new time entry. Args:
project_id: The ID of the project to associate with the time entry
task_id: The ID of the task to associate with the time entry
spent_date: The date when the time was spent (YYYY-MM-DD)
hours: The number of hours spent
notes: Optional notes about the time entry |
| stop_timer | Stop a running timer. Args:
time_entry_id: The ID of the running time entry to stop |
| start_timer | Start a new timer. Args:
project_id: The ID of the project to associate with the time entry
task_id: The ID of the task to associate with the time entry
notes: Optional notes about the time entry |
| list_projects | List projects with optional filtering. Args:
client_id: Filter by client ID
is_active: Pass true to only return active projects and false to return inactive projects |
| get_project_details | Get detailed information about a specific project. Args:
project_id: The ID of the project to retrieve |
| list_clients | List clients with optional filtering. Args:
is_active: Pass true to only return active clients and false to return inactive clients |
| get_client_details | Get detailed information about a specific client. Args:
client_id: The ID of the client to retrieve |
| list_tasks | List all tasks with optional filtering. Args:
is_active: Pass true to only return active tasks and false to return inactive tasks |