MCP Web Client について
MCP Web Client は、複数の MCP サーバーとそのツールを設定・管理するウェブインターフェースです。サーバー設定、ツール構成、有効状態を一元管理したいユーザー向けです。
主な機能
- 01複数の MCP サーバーを管理
- 02サーバーのツールを追加・設定
- 03ツールの有効化と無効化
- 04設定の永続化
- 05デスクトップとモバイルに対応した画面
活用シーン
- 01複数の MCP サーバー設定の整理
- 02対象サーバーのツール設定
- 03現在不要なツールの無効化
MCP 対応
MCP サーバーのエンドポイントを追加し、関連ツールの有効化・無効化などを管理できます。README では設定と管理について説明しており、サーバーへの接続やツール呼び出しについては記載されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Web クライアント
MCP(Multimodal Conversational Protocol)サーバーとツールを管理するためのウェブクライアントです。このアプリケーションでは、単一のインターフェースから複数の MCP サーバーと関連するツールを設定、監視、管理できます。
機能
- 🌐 複数の MCP サーバーを一元管理
- 🛠️ MCP ツール(GitHub、Playwright など)を設定、整理
- 🔄 必要に応じてツールを有効化/無効化
- 💾 設定を永続的に保存
- 📱 デスクトップとモバイルの両方で使えるレスポンシブデザイン
はじめに
前提条件
- Node.js(バージョン 14 以降)
- npm または yarn
インストール
- リポジトリをクローンします。
git clone https://github.com/AVGenAI/mcp-web-client.git
cd mcp-web-client
- 依存関係をインストールします。
npm install
# or
yarn
- 開発サーバーを起動します。
npm run dev
# or
yarn dev
- ブラウザーで http://localhost:3000 を開くと、アプリケーションが表示されます。
使い方
サーバーの追加
- 「Servers」ページに移動します
- 「Add New Server」をクリックします
- サーバーの詳細を入力します。
- Name:サーバーのわかりやすい名前
- URL:サーバーのエンドポイント URL
- Description:(任意)サーバーに関する追加情報
- 「Add Server」をクリックします
サーバーへのツールの追加
- サーバーの詳細ページに移動します
- 「Add Tool」をクリックします
- ツールの詳細を入力します。
- Name:ツールの名前
- Type:ツールの種類(GitHub、Playwright など)
- Configuration:ツール固有の設定
- 「Add Tool」をクリックします
ツールの管理
- 有効化/無効化ボタンでツールをオン/オフにします
- 不要になったツールを削除します
- ツールの設定詳細を確認します
プロジェクト構成
src/
├── app/ # Next.js App Router
│ ├── page.tsx # Dashboard/home page (client component)
│ ├── layout.tsx # Root layout (server component)
│ └── servers/ # Server management pages
│ ├── page.tsx # Server list page (client component)
│ ├── add/ # Add server page (client component)
│ └── [id]/ # Server detail page (client component)
├── components/ # Reusable components
│ ├── Sidebar.tsx # Navigation sidebar (client component)
│ └── ClientLayout.tsx # Layout wrapper for client components
├── store/ # State management
│ └── mcpStore.ts # Zustand store for MCP data
└── types/ # TypeScript type definitions
└── mcp.ts # MCP type definitions
クライアントコンポーネントとサーバーコンポーネント
このプロジェクトでは、Next.js App Router のパターンに従っています。
- サーバーコンポーネント:静的な部分やメタデータに使用します(App Router のデフォルト)
- クライアントコンポーネント:インタラクティブな要素や状態管理に使用します(
"use client"ディレクティブで指定)
フック、イベントハンドラー、またはブラウザー API を使用するコンポーネントは、クライアントコンポーネントにする必要があります。このアプリは次のように構成されています。
- メタデータを含むサーバーコンポーネントのルートレイアウト
- インタラクティブな要素を含むクライアントコンポーネントのラッパー(
ClientLayout) - 状態にアクセスする必要があるすべてのページのクライアントコンポーネント
使用技術
- Next.js - App Router を備えた React フレームワーク
- React - UI ライブラリ
- TypeScript - 型チェック
- Zustand - 状態管理
- CSS Modules - コンポーネント単位のスタイリング
コントリビューション
コントリビューションを歓迎します。Pull Request をお気軽にお送りください。
ライセンス
このプロジェクトは MIT License のもとでライセンスされています。詳細については LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。