🚀 ⚡️ locust-mcp-server について
locust-mcp-serverは、Locustの負荷テスト機能をMCPクライアントに提供するサーバーです。テスト設定を指定でき、ヘッドレスまたはUIモードで実行し、リアルタイム出力を確認できます。
主な機能
- 01ヘッドレスまたはUIモードでのテスト実行
- 02ユーザー数・生成速度・実行時間の設定
- 03カスタムタスクシナリオの実行
- 04リアルタイム実行出力の確認
- 05HTTPとHTTPSに対応
活用シーン
- 01スクリプトを指定してLocust負荷テストを開始
- 02同時ユーザー数やテスト時間の調整
- 03AIによる結果分析とデバッグ支援
MCP 対応
このMCPサーバーは、互換クライアントにrun_locustツールを公開し、ホスト、実行時間、ユーザー数、生成速度、実行モードを指定したLocustテストを開始できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🚀 ⚡️ locust-mcp-server
Locust の負荷テストを実行するための Model Context Protocol(MCP)サーバー実装です。このサーバーにより、Locust の負荷テスト機能を AI 搭載の開発環境にシームレスに統合できます。
✨ 特長
- Model Context Protocol フレームワークとの簡単な統合
- ヘッドレスモードと UI モードに対応
- テストパラメーター(ユーザー数、スポーンレート、実行時間)を設定可能
- Locust の負荷テストを実行するための使いやすい API
- テスト実行結果をリアルタイムで出力
- HTTP/HTTPS プロトコルに標準対応
- カスタムタスクシナリオに対応

🔧 前提条件
始める前に、以下がインストールされていることを確認してください。
- Python 3.13 以降
- uv パッケージマネージャー(インストールガイド)
📦 インストール
- リポジトリをクローンします。
git clone https://github.com/qainsights/locust-mcp-server.git
- 必要な依存関係をインストールします。
uv pip install -r requirements.txt
- 環境変数を設定します(任意)。
プロジェクトのルートに
.envファイルを作成します。
LOCUST_HOST=http://localhost:8089 # Default host for your tests
LOCUST_USERS=3 # Default number of users
LOCUST_SPAWN_RATE=1 # Default user spawn rate
LOCUST_RUN_TIME=10s # Default test duration
🚀 はじめに
- Locust のテストスクリプトを作成します(例:
hello.py)。
from locust import HttpUser, task, between
class QuickstartUser(HttpUser):
wait_time = between(1, 5)
@task
def hello_world(self):
self.client.get("/hello")
self.client.get("/world")
@task(3)
def view_items(self):
for item_id in range(10):
self.client.get(f"/item?id={item_id}", name="/item")
time.sleep(1)
def on_start(self):
self.client.post("/login", json={"username":"foo", "password":"bar"})
- お好みの MCP クライアント(Claude Desktop、Cursor、Windsurf など)で、以下の仕様を使用して MCP サーバーを設定します。
{
"mcpServers": {
"locust": {
"command": "/Users/naveenkumar/.local/bin/uv",
"args": [
"--directory",
"/Users/naveenkumar/Gits/locust-mcp-server",
"run",
"locust_server.py"
]
}
}
}
- 次に、LLM に
hello.py の locust テストを実行してなどと依頼します。Locust MCP サーバーは、以下のツールを使用してテストを開始します。
run_locust:ヘッドレスモード、ホスト、実行時間、ユーザー数、スポーンレートを設定してテストを実行します
📝 API リファレンス
Locust テストを実行
run_locust(
test_file: str,
headless: bool = True,
host: str = "http://localhost:8089",
runtime: str = "10s",
users: int = 3,
spawn_rate: int = 1
)
パラメーター:
test_file:Locust テストスクリプトへのパスheadless:ヘッドレスモード(True)または UI モード(False)で実行しますhost:負荷テストの対象ホストruntime:テストの実行時間(例:「30s」、「1m」、「5m」)users:シミュレートする同時ユーザー数spawn_rate:ユーザーのスポーンレート
✨ ユースケース
- LLM を活用した結果分析
- LLM の支援による効果的なデバッグ
🤝 コントリビューション
コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。
📄 ライセンス
このプロジェクトは MIT License のもとでライセンスされています。詳細については LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。