mcpField
P
Python Sandbox MCP Server

Python Sandbox MCP Server

ローカル
github.com/cloudywu0410AI・エージェント366 週間前に更新

Python Sandbox MCP Server について

Python Sandbox MCP Serverは、隔離されたDockerコンテナ内でLLMにPythonを実行させます。コード実行、出力の取得、グラフ生成が必要なMCPクライアント向けです。

主な機能

  1. 01標準出力を取得するPython実行
  2. 02MatplotlibによるPNG画像の生成
  3. 03Snekbox Dockerによる隔離
  4. 04SSE通信

活用シーン

  1. 01LLMから依頼されたPythonコードの実行
  2. 02Pythonでのグラフ画像の生成
  3. 03取得した出力のクライアントへの返却

MCP 対応

MCPクライアントにPython実行機能を提供し、SSE通信に対応します。Snekbox APIのエンドポイントを設定できます。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MseeP.ai Security Assessment Badge

Python Sandbox MCP Server

LLM が分離された Docker コンテナ内で Python コードを安全に実行できる、セキュアな Python コード実行サーバーです。サーバーは以下をサポートしています。

  • 標準出力を取得する通常の Python コード実行
  • PNG 画像を生成する Matplotlib プロット
  • Snekbox Docker コンテナによる安全なサンドボックス化
  • Server-Sent Events(SSE)を使用したリアルタイム通信

開発

開発を始めるには、以下の手順に従ってください。

ステップ 1:リポジトリをクローンする

リポジトリをフォークしてクローンします。

git clone https://github.com/username/python_sandbox_mcp_server.git

プロジェクトディレクトリに移動します。

cd python_sandbox_mcp_server
ステップ 2:依存関係をインストールする

必要な依存関係をインストールします。

uv add -r requirements.txt
ステップ 3:Python Sandbox をビルドする

Snekbox コンテナイメージをプルします。

docker pull ghcr.io/python-discord/snekbox:latest

セキュリティパラメーターを指定してコンテナを起動します。

docker run -d --ipc=none --privileged -p 8060:8060 ghcr.io/python-discord/snekbox

追加の依存関係をインストールします(任意)。

  • 追加の Python パッケージが必要な場合は、次のようにインストールできます。
docker exec <container_id> /bin/sh -c \
    'PYTHONUSERBASE=/snekbox/user_base /snekbox/python/default/bin/python -m pip install --user <package_name>'
  • <container_id> を実行中の Snekbox コンテナの ID に、<package_name> をインストールするパッケージ名に置き換えてください。
ステップ 4:MCP サーバーの設定を更新する

ローカルビルドを参照するように、MCP サーバーの設定を更新します。

{
  "mcpServers": {
    "python-sandbox-sse": {
      "command": "mcp-proxy",
      "args": [
        "http://localhost:8060/eval"
      ],
      "ssePath": "/eval"
    }
  }
}

設定

サーバーは、以下の環境変数を使用するか、Config クラスを変更して設定できます。

  • MCP_SERVER_NAME:サーバー識別子(デフォルト:「python-sandbox-mcp-sse」)
  • SNEKBOX_URL:Snekbox API エンドポイント(デフォルト:「http://localhost:8060/eval」)
  • TEMP_DIR:一時ファイルを保存するディレクトリ

ライセンス

MIT ライセンス

コメント

MCP は初めてですか?

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

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