Claude#Claude DestkopとMCP連携してみよう_Part01

この記事のシリーズはClaude DesktopとMCPの連携展開になります。第1話はClaude Desktop のインストール・File SystemのConnector追加を説明します。

さ、FAを楽しもう!

前書き

いつも私の技術ブログとYouTubeチャンネルをご覧いただき、心より感謝申し上げます。また、いまFullさん(full@桜 八重 (@fulhause) / X)と共に毎週水曜日の夜にお届けしている「高橋クリス」ラジオ番組を運営しています。

技術は独り占めせず、届けるもの

私たちは工場の生産技術や制御に関する技術情報を、ブログや動画などで無料公開しています。「知識は誰でもアクセスできるべき」という信念のもと、現場で役立つ具体的なノウハウやトラブル事例などを発信してきました。すべて無料で続けているのは、「知らなかったせいで困る人」を少しでも減らしたいからです。

また、もしあなたの現場で…

  • 「このPLCとデバイスの組み合わせ、ちゃんと動くのかな?」
  • 「EtherCAT通信でうまくいかない部分を検証してほしい」
  • 「新しいリモートI/Oを試したいけど社内に検証環境がない」

など、困っている構成や試してみたいアイデアがあれば、ぜひお知らせください。機器の貸出や構成の共有が可能であれば、検証し、記事や動画で発信します(ご希望に応じて匿名対応も可能です)。

支援のかたち

現在、私達の活動はほぼ無償で続けており、記事や動画の制作には、時間と検証環境の整備が必要です。この活動を継続的にコンテンツを提供するためには、皆様の温かいご支援が大変重要です。

メンバーシップ(ラジオの応援)

Fullさんとのラジオをより充実させるための支援プランです。

https://note.com/fulhause/membership/join

Amazonギフトリスト

コンテンツ制作に必要な機材・書籍をリストにしています。

https://www.amazon.co.jp/hz/wishlist/ls/H7W3RRD7C5QG?ref_=wl_share

Patreon(ブログ・動画活動への応援)

月額での小さなご支援が、記事の執筆・検証環境の充実につながります。

https://www.patreon.com/user?u=84249391

Paypal

小さな支援が大きな力になります。

https://paypal.me/soup01threes?country.x=JP&locale.x=ja_JP

知ってたら助かること、届けたいだけです

あなたの応援が、知識の共有をもっと自由で持続可能なものにしてくれます。これからもどうぞよろしくお願いします。

soup01threes*gmail.com

https://x.com/3threes2

技術はひとりじゃもったいない。

Reference Link

http://soup01.com/ja/category/ai/

Claude Dekstop?

Claude Desktopは、WindowsとMac向けのネイティブアプリケーションで、AnthropicのClaude AIを直接コンピュータに導入します。ローカルファイル、フォルダー、さらにはGitHubなどのツールと連携できるため、ウェブ版よりも深い統合を実現し、ファイル管理、コードレビュー、自動化などのタスクにおいて、マシン上の「ジュニア開発者」のように機能します。すべてのデータはプライバシーのためにローカルに保持されます。

主な機能とメリット

ローカル動作: マシン(Windows/Mac)上で動作し、データは共有を選択しない限りローカルに保持されるため、より高速なアクセスと優れたプライバシーを提供します。

ファイルシステムアクセス: 許可を得て、コンピュータ上のファイルやフォルダーの読み取り、編集、移動、名前変更が可能です。

開発者ツールとの統合: GitHub、Slack、ターミナルに接続し、コードのレビュー、ロジックの説明、リポジトリの管理が可能です。

AIエージェント機能: コンテンツ作成、ブレインストーミング、デジタルタスクの自動化のためのパーソナライズされたアシスタントとして機能し、さまざまな応答スタイルとカスタマイズを提供します。

ブラウザを超える機能: パワーユーザー向けに、ウェブインターフェースよりも統合的で強力であることを目指し、より応答性の高いエクスペリエンスを提供します。

MCP?

(その辺りはCHATGPTを見ながらのコンテンツ)

MCPとは、LLMが外部の世界と安全かつ構造化された方法で接続するための共通プロトコルであります。重要なのは、MCPは「AIを賢くする技術」ではなく、AIが“賢さを使える場所”を増やすための規格であり、それがMCPの本質です。

なぜMCPが必要なのか

従来、LLMと外部システムを繋ぐ方法は:

  • 独自APIラッパーを書く
  • プロンプトに無理やり仕様を書く
  • プラグインごとに別実装
  • セキュリティや権限管理は後付け

結果として、

  • 再利用できない
  • 他のLLMに移植できない
  • どこまでAIが触っていいか曖昧
  • という状態になりがちだった。

MCPは、この混乱を構造そのものから整理できます。

基本アーキテクチャ

MCPでは、役割を明確に3つに分けます。

MCP Host

MCP Hostは思考と判断を担当する存在であり、推論はすべてHostが行います。

  • LLM(ChatGPT、Claude、ローカルLLMなど)
  • 「何をしたいか」を考える
  • 「どの機能を使うか」を選ぶ

MCP Server

MCP Serverは現実世界に触れる実行担当であり、注意するのはServerは一切賢くありません。

  • ファイル操作
  • データベース
  • Web API
  • ローカルコマンド
  • PLCや設備のデータ

また、Serverは次の特徴を持っています。

  • 決められた機能だけを公開
  • 勝手な判断をしない
  • 呼ばれたら実行するだけ

Context

ContextはHostが考えるための材料だとイメージしてください。例えば、

  • ファイル内容
  • センサー値
  • 設定情報
  • 状態データ

MCPは、「どのContextを、どの形式で、どのタイミングで渡すか」を明確に定義します。

データの流れ

これからMCPのデータ流れを説明していきます。

ステップ0:人間の意図がすべての起点

MCPにおいて、最初のトリガーは必ず人間であります。例えば:

  • このログを要約して
  • 設定ファイルを生成して
  • 異常があれば教えて

この時点でLLMは、何も知りません。

ステップ1:MCP Hostが「必要な情報」を決める

人間の要求を受けて、MCP Host(LLM)はこう考える。

  • どんな情報が必要か
  • どのServerがそれを持っているか
  • どの形式で受け取るべきか

ここで重要なのは、Hostは「取りに行くかどうか」を自分で判断するが、「どうやって取るか」は知らないという点です。

つまりHostは、「ファイルの中身が必要だ」とは判断できるが、「/home/user/config.yaml を開く」とは決めないんです。

ステップ2:MCP Serverへの要求(明示的)

Hostは、MCP Serverに対して明示的な要求を送る。

  • 「このファイルを読んで」
  • 「このAPIを呼んで」
  • 「この値を取得して」

ここで初めて、現実世界へのアクセスが発生する。

Server側の特徴は明確です。

  • 推論しない
  • 解釈しない
  • 判断しない

ただ仕様どおりに動きます。

ステップ3:Serverが返すのは「生データ」

MCP Serverが返すのは、原則として加工されていないデータです。

  • ファイル内容(テキスト)
  • 数値
  • JSON
  • ステータス情報

Serverは「これは異常です」、「この値は危険です」とは言わず、意味づけは一切しません。

ステップ4:ContextとしてHostに渡される

Serverから返ったデータは、Context(文脈情報)としてHostに渡されます。ここで初めて、LLMは「世界の断片」を知る。ただしそれは…

  • 限定された
  • 明示的に取得された
  • テキスト化された

小さな口にすぎません。

ステップ5:Hostが解釈・推論する

Contextを受け取ったHostは、

  • 状況を理解し
  • 関連性を考え

次の行動を決め、ここでようやく、

  • 要約
  • 判断
  • 提案

次のServer呼び出しが行われます。

重要なのは、この時点でHostは世界を直接操作していないということです。

MCPの思想的な強さ

MCPは単なるAPI規格ではない。

設計思想そのものが重要である。

  • 推論と実行の分離
    AIに「考えさせすぎない」「触らせすぎない」
  •  権限の明示
    どのServerが、どこまで触れるかを事前に定義
  • 再利用性
    同じServerは、別のLLMからも使える
  •  交換可能性
    Host(LLM)を変えても、Serverはそのまま使える

Implementation

それでは実際にMCPを体験してみましょう。この記事のシリーズではClaude Desktopを利用します。

Claude Dekstopのインストール

下記のLinkからCalude DesktopのインストーラーをDownloadし、インストールしてください。

https://claude.com/download

Done!

コネクタを直接追加

最初は直接Claude DestkopからConnecotrを追加します。Chatのところに+ボタン→Add Connecotorsします。

Connectorsの検索画面が表示されます。

今回記事で使用するFileSystem Connectorを検索します。

InstallボタンでConnectorをインストールします。

Installをクリックします。

少々お待ち下さ…

Done!次はAdd directoryをクリックし、Claude DesktopがアクセスするローカルDirectoryを設定します。

Directory Pathw設定しましょう。

最後はSaveボタンをクリックし設定を保存します。

Done!次はFile System Connectorを有効にします。

これで完成です。

Claude DesktopのChatからプラスボタン→ConnectorsでFilesystem Connectorsが表示されるはずです。

試してみてください!

ではConnectorsの効果を体験してみましょう。Claude DesktopからテキストのFileを生成するようにリクエストします。

Allow onceをクリックします。

Allow onceをクリックします。

Done!テキストFileが生成されました。

JSONからコネクタ

次はConfiguration FileからMCP Connectorを追加します。

Node.jsインストール

下記のサイトからNode.jsを自分のPCにインストールしてください。

https://nodejs.org/ja

今度はClaude Desktopの左にある3本線クリック→File→Settingします。

Settings→Developerを開きます。

下図のEdit Configをクリックします。

File Explorerが自動的に立ち上がり、その中にあるclaude_destop_config.jsonを開きます。

このようなJson Fileを開きます。

以下の設定を追加します。

“mcpServers”: {
  “Filesystem”: {
    “command”: “npx”,
    “args”: [
      “-y”,
      “@modelcontextprotocol/server-filesystem”,
      “/path/to/your/project”
    ]
  }
}

Claude Desktopを一回に閉じ、再起動します。

試してみてください!

Claude DesktopのChatからプラスボタン→ConnectorsでFilesystem Connectorsが表示されるはずです。

そしてClaude DesktopにPython のHello world スクリプトを生成してもらいます。

Done!

削除

最後はclaude_destop_config.jsonを下記のように編集し、Claude Desktopを再起動すればFileSystem Connectorが削除されます。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする