Movatterモバイル変換


[0]ホーム

URL:


sharefacebookfacebookfacebookxxlogomenuclp_logohatenapocketslack
アイレットが運営する情報満載のオウンドメディアiret.media
  • iret株式会社の公式facebook
  • iret株式会社の公式X
  • iret株式会社のyoutube channel

iret.media

  • iret株式会社の公式facebook
  • iret株式会社の公式X
  • iret株式会社のyoutube channel

Claude for DesktopにMCPサーバーを追加する(Windows)

古賀巧エンジニアブログ2025.04.03

WindowsでPythonを使用したMCPサーバーの構築方法

はじめに

Model Context Protocol (MCP) は、大規模言語モデル(LLM)の能力を拡張するための新しいプロトコルです。
このプロトコルを実装したMCPサーバーは、LLMとの間で標準化された方法で通信し、外部データへのアクセスやAPIとの連携など新しい機能をLLMに提供します。つまり、MCPサーバーはLLMと外部世界を繋ぐ橋渡し役として機能し、LLMの能力を大幅に拡張します。

この記事では、Windows環境でPythonを使用してMCPサーバーを構築する方法を解説します。
具体的には、天気予報と気象警報を取得できるMCPサーバーを作成し、Claude for Desktopと連携させる方法を紹介します。
このサーバーを通じて、Claudeは天気情報にアクセスできるようになります。

必要な環境

  • Windows 10/11
  • Python 3.10以上
  • MCP Python SDK 1.2.0以上
  • Claude for Desktop

1. 環境のセットアップ

まず、Pythonの環境を整えましょう。パッケージマネージャーとしてuvを使用します。

uvのインストール

PowerShellを管理者権限で開き、以下のコマンドを実行します。

# uvのインストールcurl.exe -LsSf https://astral.sh/uv/install.ps1 | powershell -c -# PowerShellを再起動して、uvコマンドが認識されるようにします

プロジェクトの作成

次に、プロジェクトディレクトリを作成し、必要なパッケージをインストールします。

# プロジェクトディレクトリの作成uv init weathercd weather# 仮想環境の作成と有効化uv venv.\.venv\Scripts\Activate.ps1# 依存パッケージのインストールuv add "mcp[cli]" httpx# サーバーファイルの作成New-Item -Path . -Name "weather.py" -ItemType "file"

2. MCPサーバーの構築

MCPサーバーの実装については、公式ドキュメントに詳細な手順とコード例が記載されています。基本的な構造は以下の通りです。

  1. FastMCPサーバーの初期化
  2. APIリクエスト用のヘルパー関数の実装
  3. ツール(get_alerts、get_forecast)の実装
  4. サーバーの実行

完全なコード例は公式ドキュメントを参照してください。

3. Claude for Desktopでのテスト

次に、作成したサーバーをClaude for Desktopで使用できるように設定します。

設定ファイルの編集

Claude for Desktopの設定ファイルを編集して、MCPサーバーを登録します。

%APPDATA%\Claude\claude_desktop_config.jsonファイルをテキストエディタで開きます。(存在しない場合は作成)
以下のようにMCPサーバーを設定します。
%APPDATA%\Claude\claude_desktop_config.json

{ "mcpServers":{  "weather":{  "command":"uv",  "args":[   "--directory",   "C:\\絶対パス\\weather",   "run",   "weather.py"   ]  } }}

commandフィールドにはuv実行ファイルへのフルパスが必要な場合があります。
where uvコマンドで確認できます)

重要:設定変更の反映について

注意点: Claude for Desktopの設定ファイルを編集した後、変更が反映されない現象が発生することがあります。

問題: 設定ファイル(claude_desktop_config.json)を編集した後、Claude for Desktopを通常の方法(×ボタンなど)で閉じても、アプリケーションが完全に終了せず、バックグラウンドで実行され続けることがあります。この状態では、設定変更が反映されません。

解決方法:
1. 左上のハンバーガーメニュー>ファイル>「終了」を押して、アプリケーションを完全に終了させる
2. その後、Claude for Desktopを再起動する

この手順を踏むことで、設定変更が確実に反映されます。

テスト

Claude for Desktopが正常に起動したら、プロンプト入力欄の右側のハンマーアイコンをクリックして
登録したツールが表示されることを確認します。

試しに「NYの天気」と聞いてみると
Claudeが先ほど実装したMCPサーバー「weather」の「get_alerts」を実行して、現在NYで発令されている注意報の情報を教えてくれました。

4. トラブルシューティング

Claude for Desktopの統合に関する問題

ログの確認
MCPに関連するログは%APPDATA%\Claude\logsにあります。

# Claudeのログでエラーを確認Get-Content -Path "$env:APPDATA\Claude\logs\mcp*.log" -Tail 20 -Wait

サーバーが認識されない場合

  1. 上記の「設定変更の反映について」の手順に従ってClaude for Desktopを完全に再起動
  2. 設定ファイルの構文を確認
  3. 絶対パスを使用していることを確認

ツール呼び出しが失敗する場合

  1. 上記の「設定変更の反映について」の手順に従ってClaude for Desktopを完全に再起動
  2. ログでエラーを確認
  3. サーバーが正常に動作することを確認

まとめ

この記事では、Windows環境でPythonを使用してMCPサーバーを構築し、Claude for Desktopと連携させる方法を解説しました。特に、設定変更後にClaude for Desktopを完全に終了・再起動する必要がある点に注意してください。

MCPを使用することで、LLMの能力を大幅に拡張し、外部データやAPIとの連携を可能にすることができます。
今回作成した天気サーバーは単純な例ですが、同じ原則を使用して
さまざまなAPIやデータソースと連携する独自のMCPサーバーを構築できます。

詳細な実装については公式ドキュメントを参照し、ぜひ試してみてください!!

エンジニアブログ

この記事を書いた人

cloudpackロゴ

お客様のご要望に柔軟に対応いたします。まずはお気軽にご相談ください。

cloudpackは、アイレット株式会社が提供するクラウド支援サービスです。クラウドの導入・構築から運用・保守、技術的な問い合わせまでトータルサポート!

aws partner network Premier Consulting PartnerGoogle Cloud Partner
お問い合わせはこちら

アイレットでは、様々な職種で一緒に働ける仲間を募集しています。

インフラエンジニア、開発エンジニア、クリエイティブ職、営業職など、様々な職種で一緒に働ける仲間を募集しています。アイレットのこと、社員インタビュー、募集職種、福利厚生など、アイレット公式サイト採用情報をご覧ください。

採用情報はこちら
AWS利用料がずーっと10%割引!プロの視点で読み解く!「Google Cloud Next 2025」雲勉を YouTube で公開中最新イベント情報採用情報

編集部 イチオシ特集Editor's Pick

生成 AI おすすめコンテンツ!事例や最新技術をご紹介

人気の記事Most Popular

キーワードKeywords

ERPコンサルパックiret StudioYouTubeアイレット公式チャンネル
メールマガジンアイコン簡単30秒

アイレットのイベントや事例など、
最新情報が得られるメルマガ登録はこちら

 

コメントを読み込み中…
 


    [8]ページ先頭

    ©2009-2025 Movatter.jp