Claude Media
Claudeでジョブカン経費精算の申請・承認状況を確認する方法

Claudeでジョブカン経費精算の申請・承認状況を確認する方法

非公式MCPサーバー経由で、経費精算の申請ステータスと承認ステップの詳細を自然言語で確認する具体的なプロンプト例をまとめました。

このTipsでできること

ジョブカン経費精算/ワークフローの申請書を、Claudeに話しかけるだけで「進行中のものだけ」「自分の申請だけ」のように絞り込めます。承認ステップのどこで止まっているかも、1件ずつ画面を開かずに把握できます。

前提は、非公式のMCPサーバーjobcan-workflowを接続済みであることです。接続手順はClaudeジョブカン連携にあります。読み取り専用なので、承認や却下はできません。確認に特化したTipsです。

このサーバーが公開しているツールは12個で、承認状況の確認にはlist_requests(申請書の一覧)とget_request(1件の詳細)の2つを使います。list_formsとlist_groupsは、絞り込みに渡すフォームIDや部署コードを調べる入口です。

手順

止まっている申請を見つけるまでの流れ

  1. 1

    一覧で候補を絞る

    list_requestsで、進行中・自分の申請・特定の部署といった条件をかけます。各申請の現在のステップ名も、一覧に入っています。

  2. 2

    気になる申請のIDを控える

    一覧の結果から、止まっていそうな申請書のIDを選びます。

  3. 3

    詳細で承認ルートを開く

    get_requestで、承認者ごとの状態と承認の条件を見ます。

  4. 4

    必要ならコメントを読む

    差し戻しや保留の理由は、各ステップに付いたコメントに残っています。

「いま何件止まっているか」を知りたいとき

まず見たいのは申請書全体の進み具合でしょう。list_requestsのstatusパラメータで絞り込めます。

status値意味
in_progress意味進行中(承認待ち)
completed意味完了(全ステップ承認済み)
rejected意味却下
canceled意味取り消し
returned意味差し戻し
canceled_after_completion意味完了後取消

ステータス名を意識せず、日本語で頼めば足ります。

進行中の経費精算をすべて一覧にして
今月、却下または差し戻しになった申請があれば教えて
G-2部署で進行中の申請が何件あるか教えて

3つ目のように部署コードを渡すと、group_codeで絞った結果が返ります。API側の説明では、グループコードやプロジェクトコードが登録されていないと、その単位での検索はできません。

自分の申請だけを追うならapplicant_code(スタッフコード)を使います。申請IDはidにカンマ区切りで複数渡せます。ただしAPIドキュメントには「idを指定した場合、他のパラメータは無視される」とあります。「ID B-59とB-60のうち進行中のものだけ」という指定は、ステータスの条件が効かない可能性があります。

並び順はsort_byで変わり、申請日の昇順・降順のほか、グループ順・フォーム順・ユーザー順があります。タイトルの一部はtitleの部分一致で探せるので、「タイトルに出張と入っている申請」といった曖昧な頼み方でも通ります。

自分(スタッフコードa-13)が申請したもので、まだ進行中のものを古い順に見せて

取り消した申請と日付の指定

取り消した申請は、既定では一覧に出ません。include_canceledの既定値がfalseで、trueにしたときだけ含まれます。過去分を棚卸しするときは、「取り消し済みも含めて」と添えて頼みます。

MCPサーバー側の案内では、取り消した申請だけを見たいときはstatusのcanceledと併用します。

日付で絞るなら、applied_afterとapplied_beforeが申請日、completed_afterとcompleted_beforeが最終承認日です。形式はyyyy/mm/ddかyyyy/mm/dd hh:mm:ssで、ハイフン区切りの日付は使えません。Claudeに「2026/09/01以降に申請されたもの」と日付の書き方まで伝えておくと、呼び出しの失敗を避けられます。

「誰の承認待ちか」を知りたいとき

そのステップの誰が承認待ちなのかは、get_requestで1件の詳細を取ると、ステップごと・承認者ごとの状態として返ります。

こちらは一覧とは別の語彙で、ステップと承認者には次の4つの状態のどれかが入ります。

ステップ・承認者の状態意味
承認待ち意味まだ承認していない
承認済み意味このステップ・この承認者は承認済み
却下意味このステップで却下された
差し戻し意味申請者に差し戻された
申請書ID B-59の承認ルートを見せて。どのステップで止まっているか教えて
申請書ID B-59で、承認待ちのままになっている承認者は誰か教えて

承認者ごとの情報には、承認者名とスタッフコード、承認日が入ります。代理承認者が設定されている申請では、代理承認者の名前とコードも含まれます。誰が承認する立場なのか分かりにくい申請でも、ルートの構造ごと確認できるのが詳細の強みです。

各ステップには、ステップ名と承認完了の条件も付きます。条件は「全員の承認が必要」か「誰か1人の承認が必要」のどちらかです。3人が並ぶステップでも、条件次第で「止まっている」の意味が変わります。Claudeに条件まで読ませれば、あと何人の承認を待てば次へ進むかまで答えさせられます。

申請書ID B-59のステップ2は、誰か1人の承認で進むタイプ?それとも全員の承認が必要?あと何人待ちか教えて
くらべる

見る対象で語彙が違う

申請書ぜんたい

list_requests

statusはin_progressなど英語の6値です。完了していない申請は、承認が進んでいてもin_progressのままです。現在の承認ステップはflow_step_nameに入ります。

ステップと承認者

get_request

状態は「承認待ち」「承認済み」「却下」「差し戻し」の日本語4値です。1件のin_progressな申請の中に、承認済みのステップと承認待ちのステップが混在します。

3ステップのルートで、部門長が承認済み、経理が承認待ちなら、申請全体はin_progressです。

一覧には、total_amount(合計金額)やfinal_approved_date(最終承認日)も入ります。申請が修正されたことを示すis_content_changedも含まれるため、承認後に内容が変わった申請の洗い出しにも使えます。

3ステップ目の役員がまだ順番に来ていない場合、ステップと承認者の状態として定義されているのは上の4値だけです。まだ順番が来ていないステップの値を集計の条件に使う前に、実際の申請で返る値を確かめてください。

承認が集中するステップを洗い出すなら、in_progressの申請を一覧化し、flow_step_nameごとに件数を数えさせれば足ります。1件ずつget_requestを呼ぶ必要はありません。

差し戻しの理由を探したいとき

差し戻された申請では、理由がコメントに書かれているのに見落とすことがあります。コメントは、独立した欄ではなくステップごとに付いています。完了後に付いたコメントと添付だけは、ステップの外のafter_completionに入ります。コメントしたユーザー名・日時・本文があり、削除済みなら本文はnullで、deletedフラグが立ちます。添付ファイルもステップ単位で、アップロードしたユーザー名・日時・ファイル名を持ちます。削除済みなら、ファイル名もnullです。

申請書ID B-59に付いているコメントを、ステップ別・日付順に要約して
この申請で承認者から差し戻し理由のコメントが付いていないか確認して

ステップ別に頼むのは、誰がどの段階で書いたかを残すためです。画面をスクロールして探す手間も省けます。

申請時に承認ルートが編集されたかどうかは、approval_process.is_route_changed_by_applicantで分かります。編集者名と日時はapproval_route_modify_logsに入ります。通常と違う経路をたどった申請を探す手がかりになります。

結果が返らない・少ないときの切り分け

接続できているのに期待した結果が出ないときは、次の順で疑います。

  • 詳細が取れない:get_requestはGET /v2/requests/{id}/を呼びます。APIドキュメントに載っている単体取得はv1(/v1/requests/{request_id}/)だけで、単体取得として定義されているのは、これだけです。READMEは、将来使えなくなる可能性があるとしています。取れないときは、list_requestsにidを渡すと、その申請の状態と現在のステップ名までは確認できます。承認者ごとの状態やコメントは一覧に含まれないため、ジョブカンの画面で確認します。
  • IDを受け付けない:get_requestの引数は整数型で定義されています。B-59のような英字入りのIDは、受け付けない可能性があります。
  • 日付が効かない:日付はスラッシュ区切りで渡す必要があります。ハイフン区切りは使えません。形式を誤ると、APIは「applied_afterの値が不正です。yyyy/mm/dd hh:mm:ss形式またはyyyy/mm/dd形式で指定してください。」というエラーを返します。
  • 件数が合わない:一覧は1ページ100件固定です。レスポンスのnextがnullでなければ次のページがあります。Claudeに「最後のページまで取って」と伝えないと、先頭100件だけの集計になりかねません。
  • 結果が途中で切れる:MCPサーバーは応答を2万字で切り詰め、「出力を省略しました」という注記を付けます。100件の一覧は容易に超えるので、ページ送りより先にこちらが効く場合があります。期間や部署で絞って頼み直します。
  • 取り消した申請が無い:include_canceledがfalseのままです。
  • エラーが急に増えた:レート制限は1アクセストークンあたり1時間5,000リクエストで、超えた分はエラーになります。部署ごとに呼び出す依頼は、件数が膨らみやすい点に注意してください。
  • 仕様が変わった:使っているのはβ版APIで、READMEは仕様が予告なく変わりうると明記しています。

トークンは、ジョブカンの管理者画面の「共通ID連携・API管理」タブの「認証コード発行」で発行します。トークンが無効かどうかは、validate_tokenツールで確かめられます。「APIトークンがちゃんと使えるか確認して」と頼めば足ります。

MCP接続そのものがうまくいかないときは、MCPサーバーに接続できないときの切り分け手順を先に見てください。

定型レポートに応用する

毎回同じ確認をするなら、依頼文をテンプレート化しておくと手間が減ります。テンプレートが効く場面は、次のとおりです。

  • 経費精算のフォームが複数ある会社:list_formsで対象フォームのform_idを先に調べ、「このフォームの申請だけ進行中のものを見せて」と絞り込みを重ねる
  • 月次の締め作業:月末に「進行中のまま3営業日以上動きが無い申請」を洗い出す依頼を決めておく
  • 部署横断の経営会議資料:「各部署の進行中の申請件数と、5日以上動いていないものの件数を表にして」と頼み、部署の数だけlist_requestsを呼ばせる

件数の集計や経過日数の計算は、取得した結果を受けたClaude側の処理です。依頼文の「動いていない」は、基準日と日数を明示すると結果が安定します。足りない絞り込み条件に気づいたら、その都度テンプレートへ足します。

経費精算以外の経理業務でAIをどこまで任せられるかは、Cowork経理の実践でも扱っています。公式連携が無い楽楽精算では、CSV出力を起点にデータを集計・チェックします。進め方は楽楽精算とClaude連携で経費データを集計・チェックするにあります。

よくある質問

承認待ちの申請を自動でSlackに通知させることはできますか

jobcan-workflow自体に通知機能はありません。Claude Codeで定期実行の仕組みを別に組み、list_requestsの結果を他のツールへ渡す構成なら実現できます。ただしそれは別の設計で、このサーバーは問い合わせに応じて結果を返すだけです。

経費の金額まで正確に集計できますか

一覧の各申請にはtotal_amount(合計金額)が入るので、申請単位の合計なら一覧だけで集計できます。明細ごとの金額や費目はフォームごとの項目に依存します。list_formsで対象フォームの構造を確認してから依頼すると、精度が上がります。

まとめ

集計は一覧だけで組み、詳細は個別の承認者を特定するときだけ開きます。詳細が取れない環境でも、集計の手順は変わりません。

この記事を共有:XはてブLinkedIn