機械学習
記事内に商品プロモーションを含む場合があります

LM StudioにWebアクセス機能を追加!|MCPホスト機能活用ガイド

Aru

LM StudioのMCPホスト機能を使えば、外部ツールと連携できます。この記事では、Webページ取得用のMCPサーバーFetchを追加し、ローカル環境から任意のWebページを読み込むまでの手順と動作確認方法を解説します。

LM StudioのMCPホスト機能

LM Studioでは、バージョン0.3.17からModel Context Protocol (MCP) ホスト機能が追加され、MCPサーバーに接続できるようになりました。

これを使えば、ローカルファイルへのアクセスや計算ツールの利用が可能になります。

デフォルトでは、以下の2つのツールが用意されています。

  • rag-v1:RAGツール(PDFファイルなどをプロンプトに添付した場合に利用される)
  • js-code-sandbox:JavaScriptをサンドボックス環境で実行できる機能
あわせて読みたい
LMStudioのjs-code-sandboxを試してわかった「利点と欠点」
LMStudioのjs-code-sandboxを試してわかった「利点と欠点」

また、MCPサーバーを自作すれば、さまざまな外部ツールを呼び出して使うことも可能です。

あわせて読みたい
Go言語でMCPサーバーを実装し、LMStudioから使ってみた
Go言語でMCPサーバーを実装し、LMStudioから使ってみた

この記事では、MCPの活用例として「指定されたWebページを読み込む機能」を追加してみます。

Web読み込み機能の追加(Web Fetchの追加)

MCPサーバー

AnthropicのMCPサーバーのGitHubリポジトリには、サードパーティ製を含む多数のMCPサーバーへのリンクが掲載されています。

引用:https://github.com/modelcontextprotocol/servers

引用:https://github.com/modelcontextprotocol/servers

今回は、その中の Reference Servers にある Fetch を使い、Webページを取得するMCPサーバーをローカルで起動します。

リンク集には多くのMCPサーバーが掲載されていますので、目的に合うものを追加すると良いでしょう。ただし、セキュリティリスクもあるため十分な注意が必要です

Fetchのインストール

先ほどのページでFetchをクリックすると、「Fetch MCP Server」のGitHubリポジトリに移動します。

引用:https://github.com/modelcontextprotocol/servers/tree/main/src/fetch

pipの場合

pipを使う場合は、以下のコマンドでインストールします。

pip install mcp-server-fetch

次のコマンドで起動になります

python -m mcp_server_fetch

uvの場合

uvを使っている場合は、インストール不要で uvx コマンドから直接呼び出せます。

私はuvを利用しているので、こちらの方法を採用しました。

Macでuvをインストールする方法はこちら
Macで開発環境関連の初期設定する手順(VSCode, brew, iterm2, python, go)
Macで開発環境関連の初期設定する手順(VSCode, brew, iterm2, python, go)

FetchをLMStudioに設定

LM Studioに登録する

LM Studioの Programタブ(ツールアイコンをクリックすると右端に表示)で Install をクリックし、Edit mcp.json を実行します。

mcp.json が表示されたら、以下のブロックを追加します。

{
  "mcpServers": {
    "fetch_url": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

追加後に保存すると、MCPサーバーが登録されます。

これで準備完了です

動作確認

動作確認を兼ねて、このサイト(https://tech.aru-zakki.com)の概要をまとめてもらいます。利用したモデルはgpt-oss-20bです。

まず、fetch_url の使用を許可します。これには、チャット画面の電源プラグマークをクリックし、使いたいMCPサーバーをONにします。

設定したらチャットにURLを貼り付けて、「次のブログの概要を教えて」と指示します。

すると以下の画面のように、fetchツールを実行するかどうかの問い合わせが出力されますので、ここでProceedをクリックします。なお、Always allowにチェックをいれれば、次回から確認なしで実行されます。

1回目のアクセスでは以下のエラーが出ましたが、2回目で取得に成功しました。

[
  {
    "type": "text",
    "text": "Failed to fetch robots.txt https://tech.aru-zzaki.com/robots.txt due to a connection issue"
  }
]

ロボットアクセス扱いで弾かれたようです。確かに、MCPサーバーからのアクセスはユーザーかロボットか判別しづらい面があります。

取得結果はブログ内容と一致しており、正しく動作していることが確認できました。

このように、Webページにアクセスし、その内容をローカルLLMで処理することが可能になります。

まとめ

LM StudioのMCPホスト機能と、ローカルで実行するMCPサーバーを使ってWebページアクセスを試しました。

MCPサーバーには多くの種類があるため、いろいろ試してみるのも面白いでしょう。また、自作するのも楽しそうです。

あわせて読みたい
Go言語でMCPサーバーを実装し、LMStudioから使ってみた
Go言語でMCPサーバーを実装し、LMStudioから使ってみた

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ABOUT ME
ある/Aru
ある/Aru
IT&機械学習エンジニア/ファイナンシャルプランナー(CFP®)
専門分野は並列処理・画像処理・機械学習・ディープラーニング。プログラミング言語はC, C++, Go, Pythonを中心として色々利用。現在は、Kaggle, 競プロなどをしながら悠々自適に活動中
記事URLをコピーしました