mcpField
H
Harvest Natural Language Time Entry MCP Server

Harvest Natural Language Time Entry MCP Server

ローカル
github.com/adrian-dotco生産性555 週間前に更新

Harvest Natural Language Time Entry MCP Server について

Harvest ユーザー向けの MCP サーバーで、自然言語の説明から工数記録やレポートを作成し、休暇申請にも対応します。プロジェクトとタスクの照合に加え、勤務時間やタイムゾーンを設定できます。

主な機能

  1. 01自然言語による工数入力
  2. 02休暇申請への対応
  3. 03勤務時間とタイムゾーンの設定
  4. 04プロジェクトとタスクの自動照合
  5. 05自然言語の日付解析
  6. 06プロジェクト・顧客・タスク・ユーザー別レポート

活用シーン

  1. 01作業内容と日付を記述して工数を記録
  2. 02病気休暇や年次休暇を登録
  3. 03請求対象・対象外の工数を確認
  4. 04Harvest のプロジェクト、タスク、最近の記録を閲覧

MCP 対応

MCP クライアントに Harvest の工数入力、レポート、プロジェクト、タスク、記録の各ツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Harvest 自然言語タイムエントリー MCP サーバー

自然言語を使って Harvest のタイムエントリーを記録できる MCP サーバーです。休暇申請にも特別に対応しています。自然言語での入力を理解し、休暇申請などの一般的なケースを自動で処理することで、より直感的な時間記録を実現します。

Harvest 自然言語タイムエントリー MCP サーバー

特長

  • 🗣️ 自然言語によるタイムエントリーの解析
  • 🏖️ 休暇申請への特別対応(例:「今日は病気で休みます」)
  • ⏰ 1日の勤務時間を設定可能
  • 🌍 タイムゾーンに対応
  • 🎯 プロジェクトとタスクを自動で照合
  • 📅 日付をスマートに解析(今日、昨日など)

前提条件

  • Node.js がインストールされていること
  • Harvest アカウント
  • Harvest Developer Tools から取得した個人用アクセストークン
  • アカウント ID(トークンと同じページに表示されています)

インストール

インストール
  1. Claude デスクトップアプリをインストールします

  2. このリポジトリをクローンします:

git clone https://github.com/adrian-dotco/harvest-mcp-server.git
cd harvest-mcp-server
  1. 依存関係をインストールしてビルドします:
npm install
npm run build
  1. セットアップスクリプトを実行します:
node build/setup.js
  1. プロンプトに従って、次の情報を入力します:

    • Harvest 個人用アクセストークン(https://id.getharvest.com/developers から取得)
    • Harvest アカウント ID
    • 標準の1日の勤務時間(デフォルト:7.5)
    • タイムゾーン(デフォルト:Australia/Perth)
  2. Claude デスクトップアプリを再起動します

これで完了です!Claude で自然言語による時間記録を利用できるようになります。

最新版への更新

最新版に更新するには:

git pull
npm install
npm run build

セットアップスクリプトにより、Claude はサーバーのローカルビルドを使用するように設定されています。そのため、更新を取得して再ビルドすれば、更新内容が自動的に反映されます。

使用方法

このサーバーは、Harvest と連携するための複数のツールを提供します:

log_time

自然言語を使ってタイムエントリーを記録します。例:

通常のタイムエントリー:

"2 hours on Project X doing development work today"
"45 minutes on Project Y testing yesterday"
"3.5 hours on Project Z meetings last Friday"

休暇申請(標準の1日の勤務時間を自動で使用):

"I'm off sick today"
"I'm unwell today"
"Taking annual leave next week"
get_time_report

自然言語でのクエリを使って時間レポートを取得します。例:

  1. 期間の指定:
"Show time report for last month"
"Get time summary for this week"
"Show hours from January 1st to January 31st"
"Report time for Q1"
"Show me yesterday's hours"
  1. レポートの種類:
  • プロジェクト別(デフォルト):
    "Show time report for last month"
    "Get project hours for this week"
    
  • クライアント別:
    "Show time report by client for this month"
    "Get hours by client for Q1"
    
  • タスク別:
    "Show time summary by task for January"
    "Get task breakdown for last week"
    
  • チームメンバー別:
    "Show team hours for last week"
    "Get time report by user for this month"
    
  1. レポートの詳細: 各レポートには次の内容が含まれます:
  • 合計勤務時間
  • 請求対象時間と請求対象外時間
  • 請求額(権限がある場合)
  • レポートの種類に応じたプロジェクト/クライアント/タスク/ユーザーの詳細
list_projects

利用可能な Harvest プロジェクトをすべて一覧表示します:

List my projects
list_tasks

特定のプロジェクトで利用可能なタスクを一覧表示します:

Show tasks for Project X
list_entries

最近のタイムエントリーを表示します:

Show my recent time entries

設定

このサーバーでは、次の環境変数を使用できます:

  • HARVEST_ACCESS_TOKEN:Harvest 個人用アクセストークン
  • HARVEST_ACCOUNT_ID:Harvest アカウント ID
  • STANDARD_WORK_DAY_HOURS:標準的な1日の勤務時間(デフォルト:7.5)
  • TIMEZONE:タイムゾーン(デフォルト:Australia/Perth)

開発

このサーバーは次の技術を使用して構築されています:

  • TypeScript
  • MCP SDK
  • 自然言語による日付解析用の chrono-node
  • Harvest API v2

貢献するには:

  1. リポジトリをフォークします
  2. 機能ブランチを作成します
  3. プルリクエストを送信します

ライセンス

MIT ライセンス。詳細はLICENSEを参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。