Harvest Natural Language Time Entry MCP Server
An MCP server for natural language time entry in Harvest
Overview
Harvest Natural Language Time Entry MCP Server is a server that allows users to log time entries in Harvest using natural language, making time tracking more intuitive and user-friendly.
To use the Harvest MCP Server, clone the repository, install the dependencies, build the server, and configure it with your Harvest account details. You can then log time entries using natural language commands.
- 🗣️ Natural language time entry parsing - 🏖️ Special leave request handling (e.g., "I'm off sick today") - ⏰ Configurable work day hours - 🌍 Timezone support - 🎯 Automatic project and task matching - 📅 Smart date parsing (today, yesterday, etc.)
- Logging time entries for various projects using simple language.
- Handling leave requests without manual input.
- Automatically matching tasks and projects based on user input.
Add to your AI client
Use these steps to connect Harvest Natural Language Time Entry MCP Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.
Cursor
Add this to your .cursor/mcp.json file in your project root, then restart Cursor.
.cursor/mcp.json
{
"mcpServers": {
"harvest-mcp-server-adrian-dotco": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-harvest-mcp-server-adrian-dotco"
]
}
}
}Claude Desktop
Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"harvest-mcp-server-adrian-dotco": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-harvest-mcp-server-adrian-dotco"
]
}
}
}Claude Code
Add this to your project's .mcp.json file. Claude Code will detect it automatically.
.mcp.json (project root)
{
"mcpServers": {
"harvest-mcp-server-adrian-dotco": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-harvest-mcp-server-adrian-dotco"
]
}
}
}VS Code (Copilot)
Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.
.vscode/mcp.json
{
"servers": {
"harvest-mcp-server-adrian-dotco": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-harvest-mcp-server-adrian-dotco"
]
}
}
}Windsurf
Add this to your Windsurf MCP config file, then restart Windsurf.
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"harvest-mcp-server-adrian-dotco": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-harvest-mcp-server-adrian-dotco"
]
}
}
}Cline
Open Cline settings, navigate to MCP Servers, and add this server configuration.
Cline MCP Settings (via UI)
{
"mcpServers": {
"harvest-mcp-server-adrian-dotco": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-harvest-mcp-server-adrian-dotco"
]
}
}
}FAQ
Can I log time entries for any project?
Yes! You can log time entries for any project available in your Harvest account.
Is there a specific format for natural language entries?
No, the server is designed to understand various natural language inputs, making it flexible for users.
What are the prerequisites for using this server?
You need Node.js, a Harvest account, and a personal access token from Harvest Developer Tools.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":1611,"uuid":"c43ad146-9a96-4cd5-8833-2cb26ee85beb","name":"harvest-mcp-server","title":"Harvest Natural Language Time Entry MCP Server","description":"An MCP server for natural language time entry in Harvest","avatar_url":"https://avatars.githubusercontent.com/u/137968360?v=4","created_at":"2025-02-23T09:47:46.299Z","updated_at":"2025-02-23T09:48:49.494Z","status":"created","author_name":"adrian-dotco","author_avatar_url":"https://avatars.githubusercontent.com/u/137968360?v=4","tags":"[]","category":"research-and-data","is_featured":false,"sort":1,"url":"https://github.com/adrian-dotco/harvest-mcp-server","target":"_self","content":"$29","summary":"$2a","img_url":null,"type":null,"metadata":"{\"star\":\"0\",\"license\":\"MIT license\",\"language\":\"JavaScript\",\"is_official\":false,\"latest_commit_time\":\"2025-02-23 18:58:44\"}","user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]