mcpField
M
MCP-Mealprep

MCP-Mealprep

ローカル
github.com/JoshuaRLバージョン管理779 週間前に更新

MCP-Mealprep について

MCP-Mealprepは、GitHub上のMCPサーバーをML・AIサービス向けのDocker Composeスタックにまとめます。複数のサーバーを構成して運用する担当者向けで、SSE公開に加え、mcpoによるOpenAPI互換エンドポイントも任意で利用できます。

主な機能

  1. 01複数のMCPサーバーを構成
  2. 02Docker Composeでデプロイ
  3. 03SSE経由でサーバーを公開
  4. 04mcpoによるOpenAPIエンドポイント
  5. 05mcp-shieldでセキュリティスキャン

活用シーン

  1. 01複数のMCPサーバーをスタックとしてデプロイ
  2. 02SSE経由でクライアントを接続
  3. 03OpenWebUI向けのOpenAPIエンドポイント提供
  4. 04mcp-shieldでサーバーコンテナをスキャン

MCP 対応

MCPサーバーを実行し、SSE経由でクライアントに公開します。任意でmcpoを使ってOpenAPI互換のHTTPエンドポイントも提供でき、検索、GitHub、Slack、地図、ウェブ取得などのサーバーが含まれます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP-Mealprep

たくさんのコンテナに小さな MCP のおやつを詰めて、あとで食べられるよう冷やしておくプロジェクトです。

このプロジェクトでは、GitHub 上の複数の場所から MCP サーバーを取得して実行し、supergateway と、必要に応じて mcpo を使って提供します。さらに、docker-compose でまとめてスタックとして実行し、ML/AI リソースに利用できます。

新しい V2 バージョン

supergateway と mcpo のプロジェクトのおかげで、全面的に再構築されました。内部および外部の MCP サービスの両方で安全に利用できるようになり、python、mcpo、pip、npx、uv、および個々の MCP サーバーの更新にも対応するはずです。

docker-compose はサーバーの例として利用できます。以下の構文に従って、公開リポジトリから必要な数だけ追加してください。各カスタム GHCR コンテナは、ローカルの STDIO/STOUT 用に MCP サーバーを実行するとともに、これらのサーバーを SSE プロトコルで安全に公開し、必要に応じて OpenWebUI 用の OpenAPI 互換 HTTP サーバーも公開します。ローカルリソースに接続するか、nginx、Traefik、Caddy などのプロキシを経由させてください。公開後は、OpenWebUI、n8n、Flowise、Claude、Cursor などの外部サービスに接続できます。

GHCR コンテナは debian をベースとしており、uv、npx、pip によるインストールで動作するはずです。必要であれば、以前の方法で docker MCP サーバーをインストールすることもできます。詳しくは、以下の「非推奨の Docker プロセス」を参照してください。

mcpo のインストール

mcpo のオプション機能をインストールする場合は、環境変数に「USE_MCPO=true」を追加してください。これにより startup.sh スクリプトが MCP サーバーのコマンドと環境変数を収集し、実行時に mcpo コマンドへ渡します。同時に重複したサーバーが起動し、元のサーバーとは接続されない点にご注意ください。ただし、OpenWebUI と連携する OpenAPI 互換エンドポイントが利用でき、各サーバーの詳細情報は /docs で確認できます。これは必須ではありませんが、必要に応じてサーバーごとに有効にできます。

startup.sh README

この bash スクリプトがコンテナ内で実行されたときに何をするのか詳しく知りたい場合は、処理を一行ずつ説明した「Startup README.md」を参照してください。各 MCP サーバーコンテナで実行されるため、実行に問題がないことを確認してください。

セキュリティスキャン

mcp-shield によるセキュリティスキャン

「startup.sh」スクリプトは、mcp セキュリティスキャナーである mcp-shield を実行するために、現在

"npx mcp-shield >> "mcp-shield.log" 2>&1

を実行し、ログファイルに追記します。詳しくは、ドキュメントを参照してください。問題がないか確認するため、更新後などにコンテナ内でこのコマンドを実行することもできます。

クライアント接続

サーバースタックの実行後、MCP クライアントを IP アドレスまたはドメインとポートに接続できます。簡単な接続方法がない場合は、mcpo コマンドを使って接続することもできます。

N8N

未定

Flowise

未定

Claude、Cursor など

未定

概要

このプロジェクトは、Model Context Protocol(MCP)サーバーを厳選してまとめたもので、Docker および/または Portainer を使って簡単にデプロイできる、AI を活用した包括的なツールとサービスの一式を提供します。公式 MCP Servers リポジトリ、supergateway、および OpenWebUI の mcpo リポジトリ を基盤としており、開発者や AI に関心のある方が、MCP 互換サービスを幅広くすばやく起動できます。

Model Context Protocol とは?

Model Context Protocol(MCP)は、LLM がさまざまなツール、データソース、サービスに安全にアクセスして連携できるようにする、革新的なフレームワークです。AI エージェントが以下を行うための標準的な方法を提供します。

  • さまざまなソースから情報を取得する
  • さまざまなプラットフォームでアクションを実行する
  • 従来の言語モデルを超えて AI の能力を拡張する

含まれる MCP サーバー

この docker-compose コレクションには、以下のサーバーが含まれています。

  • ウェブ検索(SearXNG および Brave)
  • Everything(MCP のテスト用)
  • GitHub 連携
  • 電卓
  • Slack
  • Everart
  • Google Maps
  • ウェブクロール(Fetch および Puppeteer)
  • Sequential Thinking
  • Postgres/ベクトル検索(Supabase、Qwant、Pinecone、Memory)
  • その他…

前提条件

  • Docker
  • Portainer(必須ではありませんが、あると便利です)
  • 各サービスの API トークン/キー(任意。サーバーによって異なります)

Portainer でのインストール

ステップ 1:Portainer の準備
  1. Portainer 環境を開きます。通常は「local」です
  2. 「Stacks」に移動します
  3. 「Add stack」をクリックします
ステップ 2:スタックのデプロイ
  1. スタックに名前を付けます(例:「mcp-server-stack」)
  2. 「Build method」で「Upload a file」または「Web editor」を選択します
  3. このリポジトリの docker-compose.yml をアップロードするか、コピーして貼り付けます
  4. 必要な環境変数を設定します
    • Slack Bot Token
    • GitLab Personal Access Token
    • Google Maps API Key
    • Brave Search API Key
    • など
  5. 「Deploy the stack」をクリックします
ステップ 3:各サーバーの設定
  • サーバーによっては、個別の設定や API トークンが必要です
  • MCP Servers リポジトリにある各サーバーのドキュメントを参照してください

実行

警告

これは、これらの MCP サービスをコンテナ化し、より簡単にデプロイできるようにするための第一歩です。ただし、環境変数の一部や他のサービスとの接続、特にサーバーを追加する場合には、テストと検証が必要です。これらの大半は、少なくとも VPS スタック上で実行して個人的にテストしているため、ベータ版として機能するはずです。また、V2 は V1 よりも良好に動作します。各サーバーは SSE 接続で実行されるため、安全なはずです。ただし、基盤となるシステム、プロキシ、または暗号化の設定にセキュリティ上の不備がある可能性があります。このプロジェクトは、MCP サーバーの機能や安全性を審査するものではなく、サーバーのデプロイと安全なトラフィックを簡単にするためにパッケージ化するものです。MCP サーバーの審査が必要な場合は、MCP Evaluatorをご確認ください。

カスタマイズ

サーバーの追加/削除
  • docker-compose.yml のサービスブロックをコメントアウトするか、削除するだけです
  • 必要な Dockerfile と依存関係が揃っていることを確認してください
環境変数
  • 環境変数とコマンド変数の両方にあるプレースホルダートークンを、実際の API キーなど必要な設定に置き換えます
  • 必要に応じてポートのマッピングをカスタマイズします。デフォルトでは連番です

セキュリティに関する考慮事項

  • API トークンや機密情報は秘密にしてください
  • 可能であれば読み取り専用ボリュームを使用してください
  • サーバーと依存関係を定期的に更新してください

貢献

新しい MCP サーバーには、npx、uv、または pip によるクリーンなインストールコマンドが必要です。追加してほしいサーバーがある場合は、テスト済みで動作が確認できている docker-compose コンテナーのセクションとともに、プルリクエストまたは issue を送信してください。

このプロジェクトへの新しい MCP サーバーの追加
  1. サーバーが MCP プロトコルに準拠していることを確認します
  2. 既知の環境変数と「startup.sh」コマンドをすべて含め、上記の構文に従っていることを確認します
  3. MCP サーバーの GitHub リポジトリなど、明確なドキュメントを用意します
  4. 追加案を添えてプルリクエストまたは issue を送信します

廃止された Docker プロセス

V1 MCP Mealprep は各リポジトリの Github Dockerfile を使用し、docker-compose 経由でコンテナー内で実行していました。これは機能しましたが、比較的安全性に欠ける可能性があり、すべてのクライアントとの接続には対応できませんでした。使用したい MCP サーバーが npx、uv、pip などで利用できず、Dockerfile が意図したとおりに安全に動作することを検証できる場合は、この方法を引き続き使用してもかまいません。サーバーのリポジトリに Dockerfile が必要です。また、「uv.lock」ファイルを使用するものは、この方法でのインストールを妨げるようです。docker-compose-old.yml または次の例を参照して、動作方法を確認してください。

version: '3.8'
services:
  mcp-server-everything: 
    build:
      context: https://github.com/modelcontextprotocol/servers.git#main
      dockerfile: src/everything/Dockerfile
    image: mcp-server:latest
    container_name: mcp-everything-server
    ports:
      - "0.0.0.0:8081:8081"
    environment:
      - NODE_ENV=production
    restart: unless-stopped
    networks:
      - mcp-network

ライセンス

このプロジェクトはオープンソースです。個々の MCP サーバーには、独自のライセンス条件が適用される場合があります。

リソース

免責事項

このコレクションはコミュニティによってメンテナンスされており、Model Context Protocol プロジェクト、OpenWebUI、mcpo、その他のプロジェクトとは、明示的にも黙示的にも公式な提携関係にありません。


コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。