Skip to main content
Glama

TDC Flow MCP Server

TDC Flow REST API 上で動作する stdio MCP サーバーです。Claude Code が割り当てられたタスクを読み取り、タスクやサブタスクを提案・更新し、git 履歴から取得した実際の開始・終了時刻で時間を記録できるようにします。

セットアップ

認証にはブラウザのセッションクッキーを使用します。devtools で tdcflow.tdcapps.com 上の認証済みリクエストを開き、__Secure-better-auth.session_token クッキーをコピーして .env に保存してください:

cp .env.example .env
$EDITOR .env

サーバーを Claude Code に登録します:

claude mcp add tdcflow --scope user /home/yashasvi/Developer/tdcflow-mcp/run.sh

クッキーの有効期限は7日間です。Session cookie is invalid or expired で呼び出しが失敗し始めたら、.env 内のクッキーを更新してください。

Related MCP server: Povio Worklog MCP Server

検証

test.mjs はサーバーを起動し、stdio 経由で実際の JSON-RPC を送信して、すべてのツールを実行します。書き込みテストは独自のフィクスチャを作成し、テスト後にそれを削除します:

node test.mjs

ツール

読み取り:

  • tdcflow_whoami: サインイン中のユーザーと組織

  • tdcflow_list_tasks: デフォルトでは自分の未完了タスク。担当者、ステータス、プロジェクト、タイトルで絞り込めます

  • tdcflow_get_task: 担当者とサブタスクを含む1件のタスク

  • tdcflow_list_drafts: 承認待ちの提案タスク(自分とチームのもの)

  • tdcflow_list_projects, tdcflow_list_phases, tdcflow_list_sprints, tdcflow_list_project_members, tdcflow_list_project_tasks

  • tdcflow_list_users, tdcflow_list_tags, tdcflow_list_time_categories

  • tdcflow_list_approvers: タイムシートを承認できる人

書き込み:

  • tdcflow_create_task: タスク、または parentTaskId を指定したサブタスクを提案します。assignToMe: false を渡さない限り、自分に割り当てられます。

  • tdcflow_update_task: ステータス、タイトル、日付、見積もり、配置を変更します

  • tdcflow_assign_task: タスクを自分に割り当てます

  • tdcflow_log_time: 明示的な startedAtendedAt を持つ1件のエントリを記録します

  • tdcflow_add_timesheet_entry: タイムシートの1日分に時間ベースのエントリを追加します

  • tdcflow_get_timesheet: エントリと合計を含む週次タイムシートを取得します

  • tdcflow_submit_timesheet: タイムシートを承認者に送信します

  • tdcflow_delete_time_entry, tdcflow_delete_task, tdcflow_add_tag

Git 履歴からの時間記録

現在の時刻ではなく、実際の時刻を渡します。範囲はコミット自体から取得します:

git log --since=2026-08-20 --author=Yashasvi --date=iso-strict \
  --pretty='%ad %h %s'

作業ブロックの最初と最後のコミットのタイムスタンプを、startedAtendedAt として tdcflow_log_time に渡します。このツールは startedAt 以前の endedAt を拒否します。

権限の制限

サーバーはアカウントで実行できることをそのまま公開します。Yashasvi のアカウントでは:

  • tdcflow_create_taskisDraft: true のドラフトを返します。リードが承認するまで公開されません。

  • ドラフトタスクに対して時間を計上することはできません。tdcflow_add_timesheet_entry はこれをチェックし、API の紛らわしい「does not belong to this project」の代わりに明確な理由を示して失敗します。

  • tdcflow_add_tag には projects:write が必要で、403 を返します。

  • tdcflow_delete_task には tasks:delete が必要で、403 を返します。代わりに statuscancelled に設定してください。

  • 担当者ごとの工数は UI では読み取り専用のため、これを設定するツールはありません。代わりにタスクレベルの estimatedMinutes を使用してください。

  • すでに担当者である人を再割り当てすると 400 が返ります。tdcflow_assign_task は失敗する代わりに、それを alreadyAssigned として報告します。

タイムシートの送信

送信すると実際の人物に通知され、期間がロックされるため、test.mjs はこれを実行しません。承認者は9人いるため、approverId を明示する必要があります。省略した場合、ツールはエラー内にそれらを一覧表示します。

tdcflow_submit_timesheet {
  date: '2026-08-26',
  note: 'Week of 24 August',
  approverId: '019ea732-17d2-704a-9e52-c8dc2af0bfec'
}

タイムシートの期間

期間は月曜から日曜までで、API は月曜日の日付をキーとして使用します。tdcflow_get_timesheettdcflow_add_timesheet_entry は、週内の任意の日付から期間を算出します。

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables task management and automated development tracking for Eureka Labo projects with git integration. Supports creating, updating, and tracking tasks while automatically capturing code changes and generating detailed development logs with syntax highlighting.
  • A
    license
    A
    quality
    D
    maintenance
    Automates the generation of professional worklogs by analyzing git commits with AI enhancement and seamlessly posting them to the Povio dashboard. It enables users to list projects, extract ticket numbers, and manage worklog entries through natural language commands.
    4
    29
    2
    MIT

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/yashasvijhala/tdc-flow-mcp'

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