mcpField
D
Dockerized MCP Server Template

Dockerized MCP Server Template

ローカル
github.com/zantis開発ツール577 週間前に更新

Dockerized MCP Server Template について

公式 MCP Python SDK を使った Python 製 MCP サーバーのテンプレートで、Docker または直接実行できます。ステートレスな Streamable HTTP を採用し、LLM アプリ向けのサービス開発に使えます。

主な機能

  1. 01Python MCP サーバーテンプレート
  2. 02Docker コンテナでの実行
  3. 03ステートレスな Streamable HTTP
  4. 04サンプルの add ツール

活用シーン

  1. 01Python MCP サーバーの試作
  2. 02Docker Compose によるサーバー起動

MCP 対応

Streamable HTTP 経由で /mcp に公開する MCP サーバーのテンプレートで、MCP クライアントから呼び出せる add ツールを含みます。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

Dockerized MCP Server Template

このリポジトリでは、Docker コンテナーで実行され、リアルタイム通信に Streamable HTTP を利用する、Model Context Protocol (MCP) を実装した Python サーバーの再利用可能なテンプレートを提供します。Model Context Protocol (MCP) の Python 実装を基盤とするこのテンプレートを使えば、Large Language Models (LLM) を簡単に統合できます。

MCP とは?

Model Context Protocol (MCP) を使うと、LLM アプリケーションにデータや機能を安全かつ標準化された方法で公開するサーバーを構築できます。

このテンプレートでは、ステートレスな Streamable HTTP を利用してリアルタイム通信を行う、本番環境向けの MCP サーバーを Docker コンテナーで実行する方法を紹介します。

プロジェクト構成

dockerized-mcp-server-template/
├── src/
│   ├── Dockerfile
│   ├── requirements.txt
│   └── server.py
├── docker-compose.yml
└── README.md

はじめに

Docker Compose でビルドして実行する
docker-compose up --build

サーバーには次の場所からアクセスできます。

http://localhost:8080/mcp
直接実行する(Docker を使わない場合)

Python を使ってサーバーを直接実行することもできます。まず、依存関係をインストールします。

pip install -r src/requirements.txt

次に、サーバーを実行します。

python src/server.py

サーバーには次の場所からアクセスできます。

http://localhost:8080/mcp

使用例

この例には、シンプルな MCP ツール関数 add が含まれています。

@mcp.tool()
def add(a: int, b: int) -> int:
    """Add two numbers"""
    return a + b

MCP クライアントリクエストを使って、このツールを呼び出すことができます。

技術的な注意事項

このテンプレートでは Streamable HTTP トランスポートを使用します。これは、Python SDK v1.8.0 以降の Model Context Protocol で利用できます(https://github.com/modelcontextprotocol/python-sdk)。

Streamable HTTP を使用する理由

Streamable HTTP は、ステートレスな動作を可能にすることで従来の SSE トランスポートを大幅に改善し、MCP をサーバーレスアーキテクチャや標準的なウェブインフラストラクチャと互換性のあるものにします。この方式では、永続的な接続が不要になるため、リソース効率とコスト効率が向上します。また、開発者にとって実装もよりシンプルです。その結果、機能を損なうことなく、デプロイしやすく、スケーラビリティとリソース効率に優れた MCP サーバーを実現できます。

リソース

コメント

MCP は初めてですか?

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

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