Skip to main content
Glama
standardbeagle

Harvest MCP Server

harvest_restart_timer

Restart a stopped time entry timer in Harvest to resume tracking work hours for accurate time management.

Instructions

Restart a stopped time entry timer. Use about {"tool": "harvest_restart_timer"} for detailed workflow and examples.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesTime entry ID

Implementation Reference

  • Core handler function that implements the Harvest API call to restart a time entry timer via PATCH /time_entries/{id}/restart.
    async restartTimer(id: string) { return this.makeRequest(`/time_entries/${id}/restart`, { method: 'PATCH', }); }
  • MCP server request handler case that dispatches harvest_restart_timer calls to the HarvestClient.restartTimer method.
    case 'harvest_restart_timer': const restartedTimer = await harvestClient.restartTimer(typedArgs.id as string); return { content: [ { type: 'text', text: JSON.stringify(restartedTimer, null, 2), }, ], };
  • src/tools.ts:62-72 (registration)
    Tool registration in the tools array, including name, description, and input schema requiring 'id' parameter.
    { name: 'harvest_restart_timer', description: 'Restart a stopped time entry timer. Use about {"tool": "harvest_restart_timer"} for detailed workflow and examples.', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Time entry ID' } }, required: ['id'] } },
  • Input schema definition specifying the required 'id' parameter of type string for the harvest_restart_timer tool.
    inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Time entry ID' } }, required: ['id'] }
  • Detailed documentation and usage examples for the harvest_restart_timer tool provided in the getAboutInfo method.
    'harvest_restart_timer': `# harvest_restart_timer Restarts a stopped time entry timer to resume time tracking. ## Purpose Resume timing on a previously stopped time entry, setting is_running to true and timer_started_at to current time. ## Parameters - \`id\` (string, required): The time entry ID to restart ## Example Usage **Restart a stopped timer:** \`\`\`json { "tool": "harvest_restart_timer", "id": "98765" } \`\`\` ## Response Format Returns the updated time entry with: - \`is_running\`: true - \`timer_started_at\`: Current timestamp - \`hours\`: Previous accumulated hours - All other time entry properties ## Requirements - Time entry must exist - Timer must not already be running - Only one timer can run at a time per user ## Workflow 1. Find stopped entry: harvest_list_time_entries 2. Restart timer: harvest_restart_timer 3. Work on the task 4. Stop when done: harvest_stop_timer ## Error Conditions - Entry not found: Invalid ID - Timer already running: Cannot restart running timer - Another timer running: Stop other timer first`,

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/standardbeagle/harvest-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server