MCP Unified Server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Provides web search capabilities through Brave Search API

  • Provides containerized deployment of the MCP server

  • Used for cloning the repository and version control

MCP ツールキット

高精度な垂直AIエージェントを構築するためのモジュール型サーバー実装。高精度な垂直AIエージェントの構築を目的としていますが、一般的なツール機能へのアクセスにも利用できます。

Python MCP SDK 単独の場合よりも 50% 以上少ないコードを使用します。

このアプローチの利点

  • クロードの認知負荷を軽減: クロードはツール呼び出しの順序を考える必要がない
  • ドメイン知識をカプセル化:エージェントは、特定の垂直分野でタスクをうまく実行する方法に関するドメイン固有のロジックを含めることができます。
  • エラー処理を簡素化: エージェントは、クロードの関与なしにエラーと再試行を内部的に処理できます。
  • 複雑なワークフローを実現: 個々のツール呼び出しでは調整が難しい多段階のプロセス
  • 会話の流れを維持する: ユーザーは基盤となるシステムの複雑さにさらされることはありません

シナリオ例

以下は、クロードによる垂直エージェントの呼び出しの具体的な例です。

User: "I need a comprehensive analysis of the electric vehicle market for a presentation tomorrow." Claude: [recognizes this requires multiple tools and domain expertise] Claude: "I'll help you with that comprehensive EV market analysis. I'll need to gather the latest market data, news, and trends. This will take a moment..." [Behind the scenes, Claude calls a MarketAnalysisAgent] Claude -> MarketAnalysisAgent.analyze_market( sector="electric vehicles", include_news=True, include_market_data=True, create_presentation=True ) [The agent orchestrates multiple tool calls using your toolkit] - news_search for recent EV news - brave_web_search for market data - sequential_thinking for analysis - write_file to save the report - ppt_create_presentation to generate slides [Agent returns results to Claude] Claude: "I've analyzed the electric vehicle market for you. Here are the key findings: 1. Tesla continues to lead with 65% market share in North America 2. BYD has overtaken VW in global sales volume 3. Battery technology breakthroughs are accelerating adoption I've also created a presentation with detailed charts and data. You can find it saved as 'EV_Market_Analysis.pptx' in your working directory."

概要

MCP 統合サーバーは、Claude が次のようなさまざまな外部システムやツールと対話するための統合インターフェイスを提供します。

  • ファイルシステム操作: ファイルの読み取り、書き込み、操作
  • 時間ツール: 異なるタイムゾーンの現在の時刻を取得し、タイムゾーン間で変換します
  • シーケンシャル思考:動的かつ反省的な問題解決のためのツール
  • Brave Search : ウェブ検索とローカル検索機能
  • ブラウザの自動化: Playwright による完全なブラウザ制御
  • 世界銀行API :経済・開発データへのアクセス
  • ニュースAPI : 世界中のニュースソースと記事へのアクセス
  • PowerPoint : PowerPoint プレゼンテーションの作成と操作
  • Excel : Excel スプレッドシートの作成と操作
  • Yahoo!ファイナンス:株式市場と金融データ
  • FRED :連邦準備制度の経済データ
  • エージェント機能: 複雑なタスクを実行する自律エージェントを作成して展開します
  • そして、さらに多くの専門的なツール

利用可能なツールは合計123個

クイックスタートガイド: デフォルトのツールで最初の MCP サーバーを展開する

注:Git( https://git-scm.com/downloads )とDocker( https://www.docker.com/products/docker-desktop/ )がダウンロードされ、実行されていることを確認してください。また、Git実行ファイルがパスに追加されていることを確認してください(手順はREADMEの末尾に記載されています)。

Docker デプロイメント (推奨 & 最も安定)

  1. リポジトリをクローンします。
clone https://github.com/getfounded/mcp-tool-kit.git cd mcp-tool-kit
  1. 次に、次の 2 つの方法のいずれかで Docker を使用します: オプション 1 - docker-compose を使用する:
docker-compose up

オプション 2 - 直接 Docker コマンド:

docker run -p 8000:8000 -v ~/documents:/app/documents getfounded/mcp-tool-kit:latest

リポジトリには、使用できるサンプルの Claude デスクトップ構成ファイル ( claude_desktop_config.json ) が含まれています。

{ "mcpServers": { "unified": { "command": "docker", "args": [ "exec", "-i", "mcp-tool-kit-mcp-server", "python", "-u", "mcp_unified_server.py" ], "useStdio": true } } }

dockerのトラブルシューティング

docker の実行中にエラーが発生する場合は、Claude デスクトップの設定ファイルでイメージ名が間違っている可能性があります。一般的な修正方法としては、以下の JSON ファイルを設定ファイルとして使用します。

{ "mcpServers": { "unified": { "command": "docker", "args": [ "exec", "-i", "mcp-tool-kit-mcp-server-1", "python", "-u", "mcp_unified_server.py" ], "useStdio": true } } }

pip経由でインストール

# Simple installation pip install mcptoolkit # Launch the server with default configuration mcptoolkit-server

ローカル サーバーの基本構成:

{ "tools": [ { "name": "MCP Toolkit", "url": "http://localhost:8000" } ], "settings": { "allowed_directories": ["~/Documents", "~/Downloads"], "default_tools": ["MCP Toolkit"] } }

Claude Desktop をサーバーにアクセスできるように設定

  1. Claudeデスクトップアプリを開く
  2. ファイル > 設定 > 開発者 > 設定の編集に移動します
  3. 「claude_desktop_configuration.json」ファイルを追加する
  4. 設定を保存する
  5. 新しいツールを統合したMCPサーバーを再起動します
  6. Claude デスクトップ アプリを再起動して開きます (Windows ユーザーの場合は、タスク マネージャーを使用してすべての Claude インスタンスのタスクを終了する必要があります)

この構成を Claude デスクトップ アプリにインポートすることも、参照として使用して独自の構成を作成することもできます。

API キーや複雑な設定を必要とせずに、ファイル操作、Web 検索、時間ツールなどの強力な機能にすぐにアクセスできるようになりました。

環境変数の設定

リポジトリのクローンを作成した後、環境変数を構成するための 2 つのオプションがあります。

オプション1: 対話型セットアップスクリプト

環境変数の設定をガイドするセットアップ スクリプトを実行します。

python setup_env.py

このスクリプトは、設定を含む.envファイルをリポジトリに作成します。

オプション2: 手動設定

あるいは、次の変数を使用してリポジトリ ルートに.envファイルを手動で作成することもできます。

# API Keys for external services BRAVE_API_KEY=your_brave_api_key NEWS_API_KEY=your_news_api_key FRED_API_KEY=your_fred_api_key # Application configuration STREAMLIT_APPS_DIR=/path/to/streamlit/apps MCP_FILESYSTEM_DIRS=/path/to/allowed/dir1,/path/to/allowed/dir2 MCP_LOG_LEVEL=info

サンプルクロードプロンプト

セットアップが完了したら、次のようなプロンプトを使用して、Claude にツールを使用するように依頼できます。

  • 「最新の AI 研究論文を Web で検索し、調査結果を要約します。」
  • 「3 つのスライドで気候変動に関する PowerPoint プレゼンテーションを作成します。」
  • 「weather_checker エージェントを使用して、東京の現在の天気を教えてください。」
  • 「quick_lookup エージェントを使用して量子コンピューティングの進歩を調査できますか?」
  • 「QuickBooks 請求書データをダウンロードして、過去四半期の収益を分析します。」
  • 「これらの詳細と価格で、Shopify ストアに商品を設定します。」
  • 「Yahoo Finance を使用して、テスラの現在の株価と履歴データを入手します。」
  • 「過去 5 年間の FRED 経済データを使用してインフレ傾向を分析します。」
  • 「ブラウザの自動化を使用して、[ウェブサイトの URL] のフォームに入力してください。」
  • 「ダウンロード フォルダー内の 'project_notes.txt' というテキスト ファイルを読み取ります。」
  • 「テクノロジーに関する最新のニュースの見出しを入手してください。」

利用可能なツール

ファイルシステムツール

  • read_file : ファイルの内容を読み取る
  • read_multiple_files : 複数のファイルを同時に読み取る
  • write_file : ファイルを作成または上書きする
  • edit_file : ファイルの行単位で編集する
  • create_directory : 新しいディレクトリを作成する
  • list_directory : ディレクトリの内容を取得する
  • directory_tree : 再帰ツリービューを取得する
  • move_file : ファイル/ディレクトリを移動または名前変更する
  • search_files : パターンに一致するファイルを検索する
  • get_file_info : ファイルのメタデータを取得する
  • list_allowed_directories : 許可されたディレクトリを一覧表示する
  • ブラウザ自動化:
    • playwright_launch_browser : 新しいブラウザインスタンスを起動する
    • playwright_navigate : URLに移動する
    • playwright_screenshot : スクリーンショットを撮る
    • playwright_click : 要素をクリックする
    • playwright_fill : 入力フィールドを埋める
    • playwright_evaluate : JavaScriptを実行する
    • playwright_get_content : ページのHTMLコンテンツを取得する

エージェントツール

  • run_agent : パラメータを指定して登録エージェントを実行する
  • list_agents : 利用可能なエージェントとそのメタデータを一覧表示する

金融データツール

  • ヤフーファイナンス:
    • yfinance : 株価と過去のデータを取得する
    • yfinance_get_quote : 現在の株価を取得する
    • yfinance_get_history : 過去の株価データを取得する
    • yfinance_get_info : 詳細な企業情報を取得する
    • yfinance_get_options : オプションチェーンデータを取得する
    • yfinance_get_recommendations : アナリストの推奨事項を取得する
  • FRED(連邦準備制度経済データ):
    • fred_get_series : 経済データ系列を取得する
    • fred_get_series_info : シリーズに関するメタデータを取得する
    • fred_search : 経済データ系列の検索
    • fred_get_category : カテゴリ別にデータを閲覧する
    • fred_get_releases : 経済データのリリースを取得する
    • fred_get_sources : データソースを取得する

時間ツール

  • get_current_time : 指定されたタイムゾーンの現在の時刻を取得する
  • convert_time : タイムゾーン間の時間を変換する

連続的な思考

  • sequentialthinking :段階的な思考プロセスを用いて複雑な問題を分解するためのツール

勇敢な検索

  • brave_web_search : ウェブ検索を実行する
  • brave_local_search : 地元のビジネスや場所を検索

世界銀行API

  • worldbank_get_indicator : 国の指標データを取得する

ニュースAPI

  • news_top_headlines : トップニュースの見出しを入手
  • news_search : ニュース記事を検索
  • news_sources : 利用可能なニュースソースを一覧表示する

PowerPointツール

  • ppt_create_presentation : 新しいPowerPointプレゼンテーションを作成する
  • ppt_open_presentation : 既存のプレゼンテーションを開く
  • ppt_save_presentation : プレゼンテーションを保存する
  • ppt_add_slide : 新しいスライドを追加する
  • ppt_add_text : スライドにテキストを追加する
  • ppt_add_image : スライドに画像を追加する
  • ppt_add_chart : スライドにグラフを追加する
  • ppt_add_table : スライドに表を追加する
  • ppt_analyze_presentation : プレゼンテーションの構造を分析する
  • ppt_enhance_presentation : 強化策を提案する
  • ppt_generate_presentation : テキストからプレゼンテーションを生成する
  • ppt_command : 自然言語コマンドを処理する

利用可能なツールの完全なリストについては、ドキュメントを参照するか、ツールディレクトリを参照してください。利用可能なツールの完全なリストについては、ドキュメントを参照するか、ツールディレクトリを参照してください。

新しいツールモジュールの追加

  1. toolsディレクトリに新しいファイルを作成します(例: my_tool.py
  2. 既存のモジュール パターンに従います。
    • サービスクラスを作成する
    • ツール機能を定義する
    • 登録機能を実装する
  3. mcp_unified_server.pyを更新して、新しいモジュールをインポートして登録します。

既存のツールモジュールの拡張

  1. サービスクラスに新しいメソッドを追加する
  2. 新しいツール機能を追加する
  3. 新しいツールを追加するために登録機能を更新します

Dockerを使った開発

開発に Docker を使用すると、一貫した環境を確保できます。

# Build a development image docker build -t mcp-tool-kit:dev . # Run with source code mounted for development docker run -p 8000:8000 \ -v $(pwd):/app \ -v ~/documents:/app/documents \ mcp-tool-kit:dev

これにより、ローカル リポジトリがコンテナーにマウントされるため、コードの変更がすぐに反映されます (ほとんどのファイルの場合)。

哲学的視点:人間とAIの認知的パートナーシップ

MCPツールキットは、人間の知性とAIシステムの関係性を概念化する上でパラダイムシフトをもたらします。このフレームワークは、AIを単なるタスク自動化ツールとして位置付けるのではなく、人間の戦略的思考とAIの運用能力が深く補完し合う、認知的パートナーシップを構築します。

エージェンティック・アーキテクチャは、変革をもたらすビジョンを体現しています。それは、人間の監視と戦略的指示を維持しながら、自律的に文脈を解釈し、限られたパラメータ内で意思決定を行い、複雑な一連のアクションを実行できるAIシステムです。これは単なる技術進歩ではなく、人間と機械の協働における根本的に新しいモデルです。

この進化する認知環境において、最も成功する実装は、技術的な可能性と人間の能力を慎重にバランスさせ、人間の意思決定と創造性を置き換えるのではなく、強化するインターフェースを作成することです。

トラブルシューティング

  • モジュールが読み込まれません: インポートパスと依存関係を確認してください
  • APIキーエラー: .envファイル内のAPIキーを確認してください
  • 権限エラー: MCP_FILESYSTEM_DIRSで許可されたディレクトリを確認してください
  • 接続エラー: サーバーが実行中であり、ポートにアクセスできることを確認してください
  • エージェントが検出されません: エージェント ファイルが正しいディレクトリにあり、必要な形式に従っていることを確認してください
  • パスの問題: 以下の手順に従って、gitがパスに追加されていることを確認してください。

#Windows で Git を PATH に追加するには、次の手順に従います。

  1. Git のインストール場所を特定:システム上で Git がインストールされているパスを確認します。一般的なパスは、標準的な Git インストールの場合は C:\Program Files\Git\bin\git.exe と C:\Program Files\Git\cmd です。GitHub for Windows または GitHub Desktop から Git をインストールした場合は、C:\Users\AppData\Local\GitHub\PortableGit_\bin と C:\Users\AppData\Local\GitHub\PortableGit_\cmd です。
  2. 環境変数の編集:コントロールパネルから、またはスタートメニューで「システム環境変数の編集」を検索して、「環境変数の編集」アプリを開きます。「システム変数」セクションで「Path」変数を見つけ、「編集...」をクリックして、Git実行ファイルとコマンドファイルへのパスを追加します。パスを区切るセミコロンの前後にスペースがないことを確認してください。
  3. 変更を保存: Gitパスを追加したら、「OK」をクリックして変更を保存します。コマンドプロンプトウィンドウを閉じて再度開き、新しいPATH設定を適用してください。
  4. インストールの確認: コマンド プロンプトを開き、git --version を実行して、コマンド ラインから Git にアクセスできることを確認します。

ライセンス

MCP Unified Server は MIT ライセンスに基づいてライセンスされます。

謝辞

このプロジェクトでは、いくつかのオープンソース ライブラリと API を使用します。

  • Claude AIアシスタント向けMCP SDK
  • ニュースアクセスのためのNewsAPI
  • ウェブ検索用のBrave Search API
  • 経済データのための世界銀行API
  • PowerPoint 操作用の python-pptx
  • Excelスプレッドシート用のXlsxWriter
ID: yghl2ut3cx