Claude に社内システムの「道具」を持たせる
これまで Claude は自分のPCの中だけで働いていました。今日は MCP という仕組みで、Claude が外部のシステムを読み書きする体験をします。題材は架空会社の経費精算システム「わくわく精算」——申請一覧を照会し、規程違反を見つけ、差し戻し/承認までを Claude に任せます。
1つめ — MCP・コネクタ・プラグインの関係と、外部連携で気をつける安全観点(承認・接続先・データの行き先・APIキー)を理解すること。
2つめ — 配布する拡張機能(.mcpb)を自分のPCに入れ、Claude が経費申請をチェックして状態を変える流れを動かすこと。
今日のタイムスケジュール
前回のふりかえり
10分§0.1前回(第3回=スキル)のふりかえり
第3回は「1回教えれば、2回目からは一言」——Claude に前提とやり方を覚えさせる回でした。要点は3つです。
§0.2前回の質問にお答えします
第3回のふりかえりアンケート(回答51名)に寄せられた質問にお答えします。当日は主なものだけ触れます——残りはこの資料で読めます。
Q.CLAUDE.md とスキルは、どう使い分ければよいですか?どんな場面ならどちらが向きますか?
読み込まれ方が違います。CLAUDE.md は毎回のセッション開始時に全文が読み込まれます。スキルは説明文(description)だけが常時読み込まれ、本文は関係する作業のときにだけ読み込まれます。
- CLAUDE.md — 毎回・すべての作業に効かせたい短い決めごと・事実(「日本語で答える」「出力先はここ」「ビルドはこのコマンド」)
- スキル — 特定の作業のときだけ呼び出す多段階の手順・専門知識(レポートの作り方、レビューの観点、様式ファイル)
切り出すタイミングの公式基準——「同じ指示・チェックリスト・手順を毎回チャットに貼っている」「CLAUDE.md の一節が事実ではなく手順に育ってしまった」ときはスキルにします。CLAUDE.md は長さに関わらず毎回全文がコンテキストを消費するのに対し、スキルの本文は使うまでほぼコストがかからないためです。
Q.複数のスキルを同時に使えますか?それとも1つのスキルを育てていくのがよいですか?
同時に使えます。有効なスキルの中から Claude がタスクに応じて必要なものを自動で選び、複数を組み合わせて使います。手動で1つを選ぶ必要はありません。
- 常時読み込まれるのは各スキルの名前と説明文だけで、本文は選ばれたときにだけ読み込まれます。だからスキルを増やしてもコストはほぼ増えません
- したがって「1つを大きく育てる」より、作業の種類ごとに焦点を絞ったスキルに分けて増やす方が公式の設計思想に沿います
- 正しく選ばれるかは名前と説明文の書き分けで決まります。前回の「名前がかぶると意図しない方が呼ばれた」という報告(§0.3 コツ③)への対策も同じです——似たスキルほど、説明文に「いつ使うか」を具体的に書き分けます
Q.Claude が生成した SKILL.md は、どこをチェックすればよいですか?修正・チューニングのおすすめの観点はありますか?
優先度が最も高いのは説明文(description)です。スキルを使うかどうかを Claude はこの1〜2文で判断するためです。公式のベストプラクティスから、チェック観点を優先順に挙げます。
- ① description — 「何をするか」と「いつ使うか」の両方が入っているか。自分が頼むときに言いそうな言葉(「参加レポート」「PDF」等)が含まれるか。三人称で書かれているか(「〜を作成します」。「私が手伝います」のような一人称は選択ミスの原因になると公式が明記)
- ② 本文の簡潔さ — Claude がもともと知っている一般知識の説明は削ります。公式推奨は本文500行未満
- ③ 参照ファイルは1段まで — SKILL.md → 参照ファイルは可。参照ファイルからさらに別ファイルへ、の多段リンクは読み落としの原因になります
- ④ 細部 — ファイルパスは Windows でも「/」区切りで書く。「今月までは〜」のような時限情報を本文に入れない
チューニングの確かめ方——同じ頼み方を「スキル有効」と「無効」の2回試して結果を見比べます。スキルが呼ばれたことと、意図どおりに動いたことは別なので、分けて確認します。
Q.SKILL.md はどこに置けばよいですか?その作業に使うフォルダの配下に作ればよいのでしょうか?
作業フォルダの直下に SKILL.md を直接置くのではなく、決まった場所に「1スキル=1フォルダ」で置きます。置き場所は2系統あり、自動では相互共有されません。
- Claude Code(Codeタブ): 個人用(全プロジェクト共通)は
C:\Users\<ユーザー名>\.claude\skills\<スキル名>\SKILL.md、プロジェクト用(そのフォルダでの作業時だけ有効)は<プロジェクト>\.claude\skills\<スキル名>\SKILL.md。フォルダ名がそのまま呼び出し名(/スキル名)になります - Cowork・ブラウザ版: PC上のフォルダは読みません。スキルのフォルダを ZIP にしてアップロードし、「カスタマイズ > スキル」で有効化したものがアカウントに同期されて使われます
両方で同じスキルを使いたい場合は、Claude Code 用のフォルダを ZIP にしてアカウント側にも登録します。
Q.Claude のメモリ機能は、どのくらいやり取りすると記録されますか?意図的に覚えさせる方法はありますか?
「何回やり取りしたら記録される」という回数の基準は公式にはありません。通常チャットのメモリは、会話の中で Claude が「今後役立つ」と判断した内容をリアルタイムに記録・更新する仕組みです(環境によっては、会話の要約が24時間ごとに更新される旧方式の場合もあります)。
- 意図的に覚えさせる — 会話の中で「これを覚えて」と頼むだけで記録されます
- 確認・編集 — 「設定 > メモリ」で、覚えている内容の一覧・編集・削除・一時停止ができます。この設定項目があるかどうかで、自分の環境でメモリが有効かも確認できます(提供状況はプランと時期で異なります)
- 残したくない会話 — インコグニートチャットを使うと、メモリにも履歴にも残りません
混同しやすい点が2つあります。Codeタブ(Claude Code)のメモリは別物で、CLAUDE.md と、Claude が自分で書き足す自動メモリの2系統のファイルです(「〜と覚えて」と頼むと自動メモリに保存され、/memory で一覧・編集できます)。また、通常チャットのメモリは Cowork には引き継がれません(2026年7月時点)。
Q.Claude 以外のAIでも、スキルは同じように使えますか?
- 対応ツールなら使えます。スキル(Agent Skills)は Anthropic がオープン標準として公開した形式で、仕様は agentskills.io で公開されています
- 2026年7月時点で、OpenAI Codex・Gemini CLI・GitHub Copilot・VS Code などが各社の公式ドキュメントで対応を明記しています。形式は同じ「SKILL.md 入りフォルダ」なので、一度作れば対応ツール間で使い回せます(置き場所と有効化の方法はツールごとに異なります)
- 非対応のAIでも、SKILL.md はただの Markdown ファイルなので「このファイルを読んで従って」と渡せば参考にはなります。ただし、説明文を読んで自動で使ってくれる仕組みは働きません
§0.3みんなのコツ — 前回アンケートから
第3回アンケートの「コツ・発見」欄と自由記述から、4つ紹介します(匿名・要約)。
プレゼンの原稿をすべて書くタイプの方の報告です。過去の原稿を読ませて文体・口調を分析させたうえでスキル化したところ、箇条書きのアジェンダを渡すだけで自分の口調の原稿が出てくるようになった——という使い方です。好みやクセを自分で言語化してスキルに書き込む手間を、過去データの分析で省いています(読ませてよいデータの範囲で行います)。
障害報告・移行計画・レビュー記録など、繰り返し作る文書はテンプレートごとスキルにしておく。その際、様式を PowerPoint や Excel ではなく Markdown で持たせると AI が読み取りやすい——という発見です。
- Cowork で「保存する」ボタンが出ない → 「つづけてスキルとして保存して」と頼むとボタンが出た、という報告があります
- パッケージ化がうまくいかない → フォルダを zip 圧縮して手動でアップロードしても登録できます
- 既存のスキルと名前がかぶると、意図しない方が呼ばれます → スキル名は一意にします
スキル作成ツール(skill-creator)はトークン消費が多い印象がある、という理由で「スキルを作るためのスキル」を自作している——という報告です。Agent Skills の仕様サイトが公開している agentskills.io/llms.txt(AI に読ませる用のベストプラクティス集)を読ませて、それに従って SKILL.md を作らせています。§0.2 の「SKILL.md のどこをチェックするか」で挙げた観点を、作る段階から先回りして守らせる方法です。
プロンプトのコツ #3 — 作業をサブエージェントに分担させる Claude Code
5分コーナー第3弾です。前回の要点3で名前だけ出たサブエージェント——自分の代わりに働く別の Claude——への「分担のさせ方」を掘り下げます。今日のテーマ(外部連携)が「Claude の道具を増やす」話なら、こちらは「Claude の頭数を増やす」話です。
§T.1なぜ効くのか
公式ドキュメントはサブエージェントを「特定の種類のタスクを担う、専門化されたAIアシスタント」と説明しています。効く理由は3つです。
- メインの会話が汚れない — サブエージェントは自分専用のコンテキスト(作業机)を持ちます。大量のファイル読みや検索はサブ側の机で消費され、メインには要約だけが返ります
- 並行で進む — バックグラウンドで複数を同時に走らせ、その間に自分は次の指示を出し続けられます
- 作業に合ったモデルを選べる — 軽作業は速くて安いモデル、精度が要る調査は上位モデル、と割り当ててコストと品質を両立できます
§T.2実物 — この講座の運営リポジトリの CLAUDE.md
この講座は、運営そのもの(資料づくり・アンケート集計・運営文書)を Claude Code で回しています。その運営リポジトリの CLAUDE.md に書いてある分担ルールの原文がこれです。講師が毎週これで資料を作っています。
表中の Fable・Opus・Sonnet・Haiku は Claude のモデル名です(Fable が最上位、Haiku が最速・最安)。
- 種類で切る — 調査・制作・量産・軽作業を1体に混ぜない。作業の性質ごとに1体ずつ
- 同じファイルは同時に1体まで — 並行させるのは「別々の成果物」の作業だけ(編集の衝突を防ぐ)
- 必ず検収する — サブエージェントの成果物は鵜呑みにせず、メイン(自分)で確かめてから反映する。依頼時に「前提とアウトプット形式」を書いておくと検収が楽になる
§T.3今日から試す頼み方
特別な設定は不要です。Claude Code のチャットでこう頼むだけで、Claude がサブエージェントを立てて分担します。
決まった種類の分担を繰り返すようになったら、今日の CLAUDE.md の実物のように「分担ルール」として前提ファイルに書いておくと、毎回頼まなくても効き続けます(第3回 §4.1 の仕分けの考え方と同じです)。
MCP — Claude に道具を後付けするしくみ
5分「Claude を外部とつなぐ」話の中心にあるのが MCP です。このパートでは「MCPとは何か・なぜ要るか」だけを押さえます。プロンプトやデータがどこを通るかという仕組みの種明かしは、実際に動かしたあとのほうが腹落ちするので、ハンズオン直後の種明かしコーナー(FEEDBACK 4)で行います。周辺の言葉(コネクタ・拡張機能・プラグイン)と安全観点は、次の LECTURE 2 で扱います。
§1.1MCPとは — 道具を後付けする共通規格
第2回で「Claude は道具(ツール)を使って働く」と説明しました。MCP(Model Context Protocol)は、その道具を後から追加するための共通規格です。対応したサービスやプログラムなら、同じ方法で Claude の道具箱に足せます。重要なのは、MCPサーバーは自分のPC内で動かせる点です。この場合、操作対象のシステムとそのデータはPC内に留まります。ただし Claude 本体の推論はクラウドで行われるため、会話に載せた内容(AIが読み取ったツールの実行結果を含む)はクラウドに送られます(詳細は §2.2「データの行き先」)。今日のハンズオン(わくわく精算)は全データが架空のダミーなので、この点を気にせず体験できます。
では、なぜ共通規格にする必要があるのでしょうか。規格が決まっていないと、AIアプリと道具(ツール)は1対1で個別につなぐしかありません。たとえばAIアプリが3種類、つなぎたい道具が4種類あると、総当たりで 3×4=12通りの連携を作ることになります。ここに共通規格を1つ置くと、AIアプリ側は3回・道具側は4回その規格に合わせるだけでよく、3+4=7に減ります。つなぐ相手が増えるほど、この差は大きくなります(これを「M×N問題」と呼びます)。
公式(modelcontextprotocol.io)は MCP を「AIアプリケーションのためのUSB-Cポート」にたとえています——USB-Cが機器の接続方法を1つに統一したように、MCPはAIアプリと外部システムのつなぎ方を1つに統一します。今日のわくわく精算も MCP に対応させてあるので、原理的には Claude 以外の MCP対応AI(ChatGPT や各種開発ツールなど)からも同じ道具を呼べます。
接続には2系統ある — ローカルとリモート
| 系統 | どこで動くか | データの行き先 | 例 |
|---|---|---|---|
| ローカルMCP | 自分のPCでプログラムとして動く | 操作対象のシステムとデータはPC内に留まる | PC内のファイル・フォルダ操作、ローカルのデータベース、社内ネットワークの業務システム |
| リモートMCP | 外部サービス提供元のクラウドでホストされて動く | 接続先の外部サービスに届く(コネクタの場合、接続はAnthropicのクラウドから張られる) | M365・Salesforce(後半の事例紹介)のほか、Notion・Asana・GitHub・Gmail など |
※どちらの系統でも、会話に載せた内容(AIが読み取ったツールの実行結果を含む)は Claude の推論のためクラウドに送られます(§2.2)。※リモートMCPを、コネクタではなく Claude Code に直接登録して使う場合は、自分のPCから外部サービスへ直接接続します。
コネクタ・拡張機能・プラグイン — MCP以外の概念と安全な使い方
5分MCP そのものが分かれば、残りの言葉は「MCP をどう配布・運用するか」の話に整理できます。周辺用語を押さえたうえで、外部連携の安全観点で締めます。
§2.1MCPから見た周辺用語 — コネクタ・拡張機能・プラグイン
MCP が分かれば、よく一緒に出てくる言葉は「MCP をどうパッケージ・配布するか」の違いとして整理できます。まず全体を1枚の階層図で押さえます。
プラグインはこの図の横断です——スキル・連携設定・コマンドなどを詰め合わせたもので、ローカルMCPサーバーを同梱することもできます。
今日の配布物は、正式には Claude デスクトップアプリの拡張機能(英語名: Desktop Extensions)です。配布ファイルの形式が MCPB(拡張子 .mcpb)で、本資料ではこれを「拡張機能(.mcpb)」と表記します。
| 用語 | MCPとの関係 | アプリ内の場所 | 今日 |
|---|---|---|---|
| コネクタ | リモートMCPサーバーの既製品パッケージ。Anthropicのクラウド経由で外部SaaS(M365など)につなぐ。Team/Enterpriseでは追加は管理者のみ | 設定 > コネクタ(カスタマイズ) | 使わない |
| 拡張機能(.mcpb) | ローカルMCPサーバーの既製品パッケージ。Claude Desktop 内蔵のNode.jsで PC内で動く | 設定 > デスクトップアプリ > 拡張機能 | 今日の 配布物 |
| プラグイン | スキル・連携設定などの詰め合わせ。ローカルMCPサーバーを同梱できる | 設定 > プラグイン(カスタマイズ) | 概念のみ |
§2.2外部連携で押さえる安全観点 — 4つ
つなぐ先が広がるほど、確認すべきことも増えます。次の4観点を頭に置いてください。今日のハンズオンはすべてダミーデータ・PC内完結なので実害はありませんが、業務で本物につなぐときはこの4つが判断基準になります。
| 観点 | なぜ気をつけるか | 実務での確認ポイント |
|---|---|---|
| 承認制 | MCPの道具はファイルの書き換えや外部への送信までできます。ローカルMCPは「自分で起動する他のプログラムと同じ権限」でPC上で動きます。 | 実行前の承認ダイアログで「何をしようとしているか」を1行読んでから許可する。迷ったら拒否してよい。 |
| 接続先の信頼性 | 拡張・プラグインは他人が書いたコードがPC上で動きます。 | 配布元が信頼できるものだけ入れる。今日は運営が配布する .mcpb だけを使う。 |
| データの行き先 | コネクタ(リモート)は Anthropic のクラウドを経由して外部SaaSに届きます。また、Claude 本体の推論は常にクラウドで行われる=プロンプトに載せた文字はクラウドに送られます。 | 業務情報・顧客データ・未承認サービスは扱わない。試すときはダミー化(第2回の型)。今日はダミーデータのみ。 |
| APIキー管理 | 本物のサービス連携にはAPIキーなどの秘密情報が要ります。 | 拡張は OS のセキュアストレージ(Windows は資格情報マネージャー)で暗号化保存できる。キーをチャットやコードに直書きしない。 |
わくわく精算を動かす
25分
架空会社・株式会社ホシノ物産の経費精算システム「わくわく精算」(研修用の架空システム)を、配布する拡張機能(keihi-check.mcpb)で自分のPCに入れて動かします。経費申請20件(うち数件が規程違反)と経費規程を持つ、ローカルMCPサーバーです。申請の照会 → 規程違反チェック → 差し戻し/承認までを Claude に任せます。わくわく精算は手動でも操作できる普通の経費精算Webシステムで、ブラウザで開く画面(ログインが必要)から手でも動かせます。画面の操作でも Claude の操作でも、状態の変化は数秒でこの画面に反映されます——手を動かした結果も、AIに任せた結果も、同じ画面で確かめられます。
§3.1拡張機能(.mcpb)を入れる
- Claude デスクトップアプリにサインインできている
- 左上から新しいチャットを開ける
keihi-check.mcpb をダウンロードします。保存先はダウンロードフォルダで構いません。keihi-check.mcpb というファイルが1つ保存される。keihi-check.mcpb を直接ドラッグ&ドロップしてもインストールできます。画面に「.MCPB または .DXT ファイルをここにドラッグ…」という案内が表示されています。)keihi-check.mcpb を選びます。案内が出たら従ってインストールを完了します。keihi-check のまま)。この時点ではAPIキーが未設定なので、チャットからのツール呼び出しはまだ通りません——APIキーは §3.2 STEP B で設定します(インストール時にAPIキーの入力欄が出たら、空欄のままスキップしてよいです)。つまずいたときの確認ポイント
Q.「コンピューターにインストール済み」に「わくわく精算(研修用)」が表示されない
- STEP 4 で 「詳細設定」>「拡張機能をインストール」から入れたか確認します。
- 選んだファイルが
.mcpbか確認(拡張子違いだと入りません)。 - それでも出ないときは手を挙げてください。運営(藤井)が席まで伺います。
Q.チャットでツールが呼ばれない/反応しない
- ツールの実行時は許可ダイアログが出ます。見落としていないか、チャット画面を確認してください。「許可」を押すと処理が進みます。
- 拡張機能がオフになっていないか、設定 > デスクトップアプリ > 拡張機能で確認します。
- 拡張機能を入れたあとに開いたチャットで試しているか確認します(入れる前のチャットには反映されません)。
get_expense_rules を実行しようとしていますQ.わくわく精算の画面が開かない
- Claude Desktop が起動していて、拡張機能(わくわく精算)が有効か確認します。わくわく精算はローカルサーバーとして動くため、アプリを閉じる・拡張を無効にすると画面も使えなくなります。
- もう一度「承認画面を開いて」(または「申請画面を開いて」)と送ります(
open_dashboardが呼ばれます)。 - それでも開かないときは、エクスプローラーのアドレス欄に
%USERPROFILE%\.keihi-check\dashboard.html(現在の画面URLへのリダイレクト用の入口)を貼り付けて Enter を押すと、ブラウザで開きます。
Q.ステータスを変えたのに画面が変わらない
- 画面は数秒ごとに自動で反映されます(ページは切り替わりません)。数秒待ってください。
- 画面右上の「最終更新」の時刻が進んでいれば、反映されています。時刻は進むのに内容が変わらない場合は、チャット側でステータス変更(
update_expense_status)が実行され「許可」されたかを確認します。
Q.わくわく精算にログインできない
- 研修用アカウントは 申請者 ID
shain01/承認者 IDkeiri01、パスワードはどちらもwakuwakuです(半角で入力。旧hoshinoは使えません)。 - トップ画面で、入る立場のボタン(申請者ログイン/承認者ログイン)を選んでからログインします。申請者は申請画面のみ、承認者は承認画面のみ見られます(設定はどちらからも開けます)。
Q.AIが「認証エラー」を返す
open_dashboard以外のツールは APIキーが必須です。わくわく精算の設定ページで「外部連携用APIキー」(wk_live_…)をコピーし、拡張機能の設定欄に入れてから、もう一度頼みます(→ §3.2 STEP B)。
Q.APIキーを入れたのに通らない
- キーの前後に空白が入っていないか確認します(
wk_live_で始まる文字列全体を貼り付け)。 - 設定が反映されないときは、拡張機能を一度オフ→オンに切り替えてから再送します。
Q.領収書を添付したのに申請されない
- AIは領収書から読み取れない項目(申請者名・部署・勘定科目など)を質問で確認してから申請を作成します。チャットの質問に答えると申請が作成されます。
- 反応が止まって見えるときは、ツールの許可ダイアログ(→上のQ&A)と、APIキーの設定(→ §3.2 STEP B)を確認します。
Q.操作を最初からやり直したい
- 「デモデータをリセットして」と送ると
reset_demo_dataが呼ばれ、申請20件が初期状態(差し戻し・承認の変更を取り消した状態)に戻ります。何度でもやり直せます。
§3.2画面を見て、AIに申請・チェックを任せる
わくわく精算はログインして使う普通の経費精算Webシステムで、申請者と承認者(経理担当)の2つの立場があります。まず両方の画面を見て構造を掴み、次に申請者として領収書から経費申請し、承認者としてAIに一括チェックさせ、最後に申請者として結果を確認します。
STEP A→D の順に進めます。ログインはロールごと(申請者 shain01/承認者 keiri01、パスワードはどちらも wakuwaku)。AIへの初回の指示ではAPIキーの設定を挟みます(STEP B)。ツールの実行許可を聞かれたら「許可」を押してください。画面は数秒ごとに自動で反映されます(ページは切り替わらず、フォームの入力も消えません)。
- 申請者ID
shain01/ PWwakuwaku(申請画面のみ) - 承認者ID
keiri01/ PWwakuwaku(承認画面のみ)
shain01 / パスワード wakuwaku。承認者は ID keiri01(パスワード共通)です。get_expense_rules で読む規程とまったく同じものです(人が見る規程とAIが読む規程は同一)。| ID | 申請者 | 金額 | 状態 |
|---|---|---|---|
| EXP-001 | 山田 | 128,000 | 申請中 |
| EXP-002 | 鈴木 | 9,800 | 申請中 |
| EXP-003 | 田中 | 6,200 | 申請中 |
| …ほか17件 | |||
shain01)でログインし直し、申請画面を開いたままにします。次に、領収書のダミー画像を1枚ダウンロードします(3枚から選択)。- 領収1receipt-01.png(飲食店・11,000円)— 勘定科目は交際費。規程第2条の1人あたり判定のため参加人数を書く
- 領収2receipt-02.png(書店・3,300円)— 勘定科目は書籍・研修費
- 領収3receipt-03.png(タクシー・2,400円)— 勘定科目は交通費。規程第3条のため経路(出発地→目的地)を書く
create_expense は申請者名・部署・勘定科目を必須にしています。これらは領収書には書かれていないため、上のようにプロンプトで伝えるか、下の代替のとおりAIの質問に答える必要があります。代替画像だけ添付して送ってもよい
「この領収書で経費申請して」とだけ送っても構いません。その場合、AIが不足している必須項目(申請者名・部署・勘定科目など)を質問してきます。会話で答えると起票されます——質問が来るのは失敗ではなく正常動作です。
「認証エラー: APIキーが設定されていないか、正しくありません。わくわく精算の設定画面でAPIキーを確認してください。」
wk_live_…)の「コピー」を押します。wk_live_…)をコピーします(貼り付け先は次の拡張機能の設定画面です)。- 1設定 > デスクトップアプリ > 拡張機能 の「コンピューターにインストール済み」で、「わくわく精算(研修用)」の行の「設定」を押す
- 2開いた画面(見出しは内部ID
keihi-checkと表示されます=表示名「わくわく精算(研修用)」の中身)の「APIキー」欄に、コピーしたキーを貼り付ける - 3「保存」ボタンを押す(押し忘れると反映されません)
- 4入力欄が 「●●●…」のマスク表示になれば保存完了
keihi-check(表示名の中身です)。「APIキー」欄に貼り付けて「保存」すると「●●●…」のマスク表示になります。「有効」トグルや「ツールの権限」もここにあります。create_expense で申請が作成され、申請画面の「あなたの申請」に自分の申請(申請中)が現れます。| ID | 摘要 | 金額 | 状態 |
|---|---|---|---|
| EXP-021 | 飲食店(会議費) | 11,000 | 申請中 |
keiri01)でログインし直し、承認画面を開いたままにします。次を順番に送ります。ツールの実行許可を聞かれたら「許可」を押してください。get_expense_rules/search_expenses/get_expense → add_review_comment/update_expense_status → update_expense_status の順に呼ばれ、21件(STEP A で見た承認待ち20件+あなたの1件)が数十秒で一括で捌けていきます(申請中→赤/緑、件数サマリも変化)。手作業なら1件ずつ規程と突き合わせる作業を、AIが全件まとめて行う——ここが今日のいちばんの体感ポイントです。| ID | 金額 | 状態 |
|---|---|---|
| EXP-001 | 128,000 | 差し戻し |
| EXP-002 | 9,800 | 承認済み |
| EXP-004 | 3,300 | 承認済み |
shain01)でログインし直し、「あなたの申請」を見ます。§3.3このシステムが持つ道具(MCPツール)
上のプロンプトで Claude が裏側で呼んでいる道具の一覧です。名前が分かると、チャットのどこで何が起きているか読み取れます。
| ツール名 | はたらき |
|---|---|
get_expense_rules | 経費規程の全文を取得する |
search_expenses | 条件(ステータスなど)で申請を検索する |
get_expense | 申請を1件取得する(詳細を見る) |
open_dashboard | わくわく精算の画面を開く(screen 引数で申請画面/承認画面を指定可) |
create_expense | 新しい申請を起票する |
update_expense_status | ステータスを変える。可能な遷移は「申請中→承認済み/差し戻し」「承認済み→精算済み」「差し戻し→申請中(再申請)」のみ。それ以外はエラーになる |
add_review_comment | 申請にレビューコメントを付ける |
reset_demo_data | デモデータを初期状態に戻す(やり直し用) |
§3.4チェックの根拠になる経費規程
Claude はこの5つの規程に照らして違反を判定します。get_expense_rules で表示されるものと同じで、わくわく精算の画面のナビ「経費規程」からも同じ内容を確認できます(人が見る規程とAIが読む規程は同一です)。
| # | 規程 |
|---|---|
| 1 | 1万円以上の経費は領収書が必須 |
| 2 | 交際費は1人5,000円超なら事前申請が必要 |
| 3 | 交通費は摘要に経路(区間)を書く |
| 4 | 10万円超は承認不可(差し戻し) |
| 5 | 利用日から30日以内に申請する |
種明かし — いまの体験の裏で何が起きていたか 共通
20分「チャットで頼むと、AIとは無関係だったはずの業務システムが動く」——ハンズオンで体験した流れの裏側を図で種明かしします。コネクタ(リモートMCP)を使う場合にデータがどこを通るかも並べ、最後に自分の業務へ持ち帰るための3つの問いに落とします。
§4.1プロンプトはどこへ渡り、どこで処理されるのか
図とあわせて押さえる Q&A — MCPサーバーの正体とセキュリティ
Q.MCPサーバーの実体は何ですか?どこかに「サーバー機」があるのですか?
実体はふつうのプログラムです。MCPでいう「サーバー」は機械の種類ではなく、プロトコル上の役割の名前です(求めに応じて道具を提供する側=サーバー、使う側=クライアント)。
- ローカル: Claudeアプリがそのプログラムを子プロセスとして起動し、標準入出力(stdio)でテキスト(JSON-RPC)をやりとりします。アプリを閉じればプロセスも終わります。常駐する仮想マシンやコンテナを立てるわけではなく、PC上で他のプログラムと同じ権限で動きます——だからこそ §2.2 の「配布元が信頼できる拡張機能だけ入れる」が効いてきます
- リモート: 同じくプログラムですが、ホストする側のサーバー基盤で動き、HTTP(Streamable HTTP)越しに話します
Q.ローカルMCPなら、データは社外に出ませんか?
操作対象のシステムとそのデータ本体はPC内に留まります。ただし図の②のとおり、会話に載せた内容——プロンプトと、AIが読み取ったツールの実行結果——は Claude の推論のためクラウドに送られます。「システムごと預ける」のではなく「会話で見せた分だけが渡る」、というのが正確な線です。業務データで使う前の判断基準は §2.2 のとおりです(今日のハンズオンは全データが架空なので、この点を気にせず体験できます)。
Q.AI が道具を勝手に実行してしまいませんか?
LLM は「この道具をこの引数で呼びたい」という指示のテキストを返すだけです(図の③)。実行するのはホスト(Claudeアプリ)で、その入口(図の④)では権限が「毎回確認」のツールに承認ダイアログが出ます。許可するまで MCPサーバーには何も届かず、拒否しても会話は続きます。既定では読み取り系以外はすべて「毎回確認」です——ハンズオン中に何度も出たあのダイアログが、実行の手前にある人間の関所です。
Q.APIキーやパスワードは、AI(LLM)に見られませんか?
- ローカル(今日のハンズオン): APIキーは拡張機能の設定に保存され、わくわく精算に付けるのはMCPサーバーです。会話のテキストには載らないため、LLM はキーを知らないまま道具を使います
- コネクタ(リモート): 接続時の OAuth(サービスへのサインインと権限承認)で認証し、トークンはMCPサーバー側が保持します。M365 コネクタでは「ユーザーも Claude クライアントもトークンには触れられず、MCPサーバーのみがアクセス・使用できる」「パスワードは見ない・保存しない」と公式に明記されています
Q.コネクタを使うと、認証情報が Anthropic に渡るのでは?
コネクタの MCPサーバーを誰がホストするかで変わります。Salesforce や Notion のように提供元がホストする場合(図の提供元ホスト型)、トークンは提供元側にあります。M365 コネクタは Anthropic がホストするため(図の Anthropicホスト型)、OAuth トークンは Anthropic のバックエンドに暗号化して保管されます(公式: "encrypted while cached by the Claude backend")。そのうえで、次の3つの制限が公式に明記されています。
- 範囲: 委任権限のため、本人が M365 上でもともと見られる範囲しか使えない
- 期限: アクセストークンは60〜90分で失効(自動更新)、リフレッシュトークンも90日間不使用で失効
- 取り消し: 「カスタマイズ > コネクタ」での切断のほか、管理者が Microsoft Entra ID 側からいつでも失効できる
つまりコネクタの利用は「業務データとその鍵を、ホスト元に預けてよいか」という信頼判断です。だからこそ Team/Enterprise ではコネクタの追加が管理者権限になっており、業務利用の前に社内の承認を経ます(§2.2)。
実物を見る — 今日入れる .mcpb の中身(keihi-check サーバー)
MCP サーバーの正体はただのプログラムです。下は今日のサーバーの実ソースからツール定義部分を抜き出したものです。名前・説明・入力スキーマ(JSON Schema)がそのまま書かれています。
この TOOLS 配列を、サーバーは tools/list で返し、Claude からの tools/call で対応する処理を実行します。.mcpb は、このプログラムと必要なファイルを1つにまとめた配布形式です。今日はこれを 設定 > デスクトップアプリ > 拡張機能 から入れます。
実機の 拡張機能設定(設定 > デスクトップアプリ > 拡張機能 > 詳細設定)には「MCP用内蔵Node.jsを使用」トグルと「検出されたツール」欄があり、システムに Node.js が無くても内蔵 Node.js(組み込み: 24.x)で拡張機能の MCP サーバーが動くことを画面上でも確認できます(出典: support.claude.com/10949351)。
keihi-check の実ソース(server/index.js)。改変せず引用。技術仕様の裏づけは modelcontextprotocol.io / Connect Claude Code to tools via MCP。
§4.2自分の業務に持ち帰る — MCP化を考える3つの質問
「わくわく精算」を自分の業務のシステムに置き換えるときは、次の3つを順に確認します。
| 質問 | 判断のポイント |
|---|---|
| ① つなぎたい相手はMCPに対応しているか | 公式コネクタや提供元のMCPサーバーがあるならそれを使います。ない場合は、提供元の対応を待つか、今日の keihi-check のようなMCPサーバーを自作することになります(=開発作業が必要)。Excelファイルの読み書きなど、システムを介さない作業は第2回・第3回のやり方(ファイルを直接渡す)で足りることも多いです。 |
| ② データはどこを通るか | ローカル(拡張機能・PC内)かリモート(コネクタ・Anthropicのクラウド経由)かを確認します(§1.1の2系統)。どちらの場合も会話に載せた内容はClaudeの推論のためクラウドに送られるため、業務データを扱う前に §2.2 の4観点を確認し、社内の承認・申請を経ます。 |
| ③ 誰が用意するか | 既製のコネクタの追加は、Team/Enterpriseプランでは管理者への依頼になります。MCPサーバーの自作には開発スキルが必要です。まず身近な実例を見るのが早道です——このあとの GUEST(深瀬さんの実例)と事例紹介(CASE)が「何と何をつないだか」のサンプルです。迷ったら運営に相談してください。 |
実際に使っているコネクタの紹介(担当: 深瀬)
15分ハンズオンで動かした「わくわく精算」は、練習用に用意したローカル連携でした。ここでは運営の深瀬が、業務で実際に使っているコネクタを自分の画面で紹介します(約6分)。着目点はこのあとの事例紹介と同じ——「何と何をつないで、何が起きるか」です。
本物の外部連携で何が起きているか — 事例5本
12分今日のハンズオンは架空データでの練習でした。ここからは本物のサービスにつないだ実例を、記事の画面とともに見ます。着目してほしいのは共通して1点——「何と何をつないで、何が起きたか」です。前半3本は非開発の日常業務(M365・メール)、後半2本は開発の実務(Backlog・Salesforce)です。
Claude と Microsoft 365(SharePoint/OneDrive/Outlook/Teams)を公式コネクタでつなぐと何ができるかを1枚で示す一次情報。SharePoint/OneDrive 上の文書検索・分析、Outlook スレッドのパターン分析、Teams 会話の横断検索ができる、と公式が説明しています。事例の土台としてまずこれを見せます。
claude.com/blog/productivity-platformsM365 コネクタで OneDrive 上の資料をチャットに取り込み、会議準備資料やアジェンダ案を自動生成した記録。接続画面 → ファイル取り込み → 成果物まで、画面を追いながら「つなぐと何が起きるか」を実感できます。
dev.classmethod.jp/articles/claude-microsoft-365-connector-onedrive/Outlook メールと Claude をつなぎ、ダイジェスト生成・フォルダ自動振り分け・返信下書きなど6シナリオでメール業務を自動化。毎日2時間かかっていた処理が30分に、という体験記です。人事・経理・総務・営業企画などメール業務の多い層に刺さります。
aurant-technologies.com/blog/blog-outlook/GitHub と Backlog をつなぎ、GitHub の Issue/PR コメントに「@cc-backlog」と書くだけで Backlog に子課題を自動生成。GitHub と Backlog を別々に更新する「二重管理」を1コメントで解消します。今日のハンズオンで体験した「起票 → 状態変更」の自動化を、本物のチケット管理でやっている例です。
ascii.jp/elem/000/004/388/4388382/Claude Desktop と Salesforce を Hosted MCP でつなぎ、「取引先一覧を取得して」と頼むと13件のレコードを取得・表示した記録。Salesforce 開発者に直球の例です。記事はベータ版時点の検証——正式版では画面や手順が変わっている可能性があるため、「当時ベータ」の温度感で見てください。
dev.classmethod.jp/articles/salesforce-hosted-mcp-servers-claude-desktop/紹介するときの注意(口頭補足)
- ASlack 連携は移行の過渡期です。Slack の @Claude は旧「Claude in Slack」から Claude Tag へ移行中で、Team/Enterprise は 2026-08-03 に切替予定。今日はちょうど切替時期にあたるため、旧アプリ前提の記事は読み替えが必要です。
- Bベータ・変化が速い領域です。Salesforce・Backlog などの MCP はベータや発展途上のものが多く、記事の画面・手順が現在と異なる場合があります。
- CM365 コネクタは会社アカウント必須です。職場/学校アカウント(Entra ID)が前提で、個人の Microsoft アカウントでは使えません。
- Dプランで使えるものが分かれます。コネクタ・Claude Tag・Slack 連携はプランによって可否が違います。自社シートで何が使えるかは当日、実際のプラン基準で補足します。
- E今日のハンズオンとは切り分けて見てください。これらは「世の中の使われ方イメージ」です。業務で本物につなぎたくなったら、まず §2.2 の安全観点で確認し、社内の承認・申請を経てください。
クロージング
5分§7.1今日の持ち帰りポイント
リファレンス
今日の技術的な説明の出典と、もう一歩知りたくなったとき用のメモです。