使用说明

项目简介

Harvest Natural Language Time Entry Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在通过自然语言处理简化 Harvest 时间跟踪。用户可以使用日常口语化的指令,例如“昨天在项目X上工作了3小时”或“下周请年假”,服务器会自动解析这些指令并在 Harvest 中记录相应的时间条目或生成时间报告。

主要功能点

  • 自然语言时间条目记录: 支持使用自然语言描述工作内容和时长,服务器自动解析并记录到 Harvest。
  • 智能日期解析: 能够理解“今天”、“昨天”、“上周”、“下个月”等时间描述。
  • 自动项目和任务匹配: 根据自然语言指令,自动匹配 Harvest 中的项目和任务。
  • 休假请求处理: 专门处理休假请求,例如“我今天病了”,自动按标准工作时长记录休假时间。
  • 时间报告生成: 支持使用自然语言查询生成各种时间报告,例如按项目、客户、任务或团队成员查看时间汇总。

安装步骤

  1. 安装 Claude 桌面应用: 访问 Claude 桌面应用 下载并安装 Claude 桌面应用 (MCP 客户端)。
  2. 克隆仓库: 在本地克隆 Harvest MCP Server 仓库:
    git clone https://github.com/adrian-dotco/harvest-mcp-server.git
    cd harvest-mcp-server
  3. 安装依赖并构建: 运行以下命令安装项目依赖并构建:
    npm install
    npm run build
  4. 运行配置脚本: 执行配置脚本,根据提示输入 Harvest API 凭据和工作日配置:
    node build/setup.js
    按照提示输入:
    • Harvest Personal Access Token (个人访问令牌,来自 Harvest Developer Tools)
    • Harvest Account ID (账户 ID,同上页面)
    • Standard work day hours (标准工作时长,默认 7.5 小时)
    • Timezone (时区,默认 Australia/Perth)
  5. 重启 Claude 桌面应用: 完成配置后,重启 Claude 桌面应用使配置生效。

服务器配置

MCP 客户端 (如 Claude 桌面应用) 需要配置以下 JSON 信息以连接到 Harvest MCP Server。此配置通常由 'setup.js' 脚本自动完成,写入 Claude 的配置文件中。以下是配置示例,如果手动配置,请参考此格式:

{
  "mcpServers": {
    "harvest-server": {
      "command": "node",  // 启动服务器的命令,这里使用 Node.js 运行时
      "args": [             // 启动命令的参数
        "build/index.js"   // 服务器入口文件路径
      ],
      "env": {              // 环境变量配置
        "HARVEST_ACCESS_TOKEN": "<Your Harvest Personal Access Token>", // 你的 Harvest 个人访问令牌,请替换为实际令牌
        "HARVEST_ACCOUNT_ID": "<Your Harvest Account ID>",          // 你的 Harvest 账户 ID,请替换为实际账户 ID
        "STANDARD_WORK_DAY_HOURS": "7.5",                         // 标准工作时长,默认 7.5 小时,可根据需要修改
        "TIMEZONE": "Australia/Perth"                            // 时区,默认 Australia/Perth,可根据你的时区修改
      },
      "disabled": false,     // 是否禁用该服务器,false 表示启用
      "autoApprove": []      // 自动批准的工具列表,空数组表示不自动批准任何工具
    }
  }
}

注意: '<Your Harvest Personal Access Token>' 和 '<Your Harvest Account ID>' 需要替换为你自己的 Harvest API 凭据。

基本使用方法

配置完成后,在 MCP 客户端 (如 Claude 桌面应用) 中,可以使用自然语言指令与 Harvest MCP Server 交互。以下是一些示例指令:

  • 记录时间:
    • '2 hours on Project X doing development work today' (今天在项目 X 上工作了 2 小时,进行开发工作)
    • '45 minutes on Project Y testing yesterday' (昨天在项目 Y 上测试了 45 分钟)
    • 'I'm off sick today' (我今天病了 - 自动记录休假)
  • 获取时间报告:
    • 'Show time report for last month' (显示上个月的时间报告)
    • 'Get time summary for this week' (获取本周的时间汇总)
    • 'Show time report by client for this month' (显示本月按客户划分的时间报告)
  • 列出项目和任务:
    • 'List my projects' (列出我的项目)
    • 'Show tasks for Project X' (显示项目 X 的任务)
  • 查看最近的时间条目:
    • 'Show my recent time entries' (显示我最近的时间条目)

更多使用示例和详细指令,请参考仓库 README 文档。

信息

分类

生产力应用