
k6 MCP 服务器
概览
用于运行 k6 负载测试的模型上下文协议(MCP)服务器实现。 - 与模型上下文协议框架的简单集成 - 支持自定义测试时长和虚拟用户(VU) - 易用的 k6 负载测试 API - 可通过环境变量配置 - 实时测试输出 在开始之前,请确保你已安装以下设备: - Python 3.12及以上版本 - k6负载测试工具(安装指南)- uv包管理器(安装指南) 3. 设置环境变量(可选):在项目根创建 .env 文件: 1. 创建一个k6测试脚本(例如,test.js): 2. 在你喜欢的MCP客户端(Claude Desktop、Cursor、Windsurf等)中,使用以下规格配置MCP服务器: 3. 现在让LLM运行测试,例如为hello.js运行k6测试。k6 mcp服务器会利用以下任一工具启动测试。
概述(AI 翻译)
用于运行 k6 负载测试的模型上下文协议(MCP)服务器实现。
✨ 特色
- 与模型上下文协议框架的简单集成
- 支持自定义测试时长和虚拟用户(VU)
- 运行 k6 负载测试的易用 API
- 可通过环境变量进行配置
- 实时测试执行输出
🔧 先修条件
在开始之前,请确保你已安装以下设备:
- Python 3.12 或更高版本
- k6 负载测试工具(安装指南)
- uv 包管理器(安装指南)
📦 安装
-
克隆仓库:
-
安装所需的依赖:
-
设置环境变量(可选): 在项目根创建
.env文件:
🚀 开始
-
创建一个k6测试脚本(例如,
test.js): -
在你喜欢的MCP客户端(Claude Desktop、Cursor、Windsurf等)中,使用以下规格配置MCP服务器:
-
现在让LLM运行测试,例如
run k6 test for hello.js。k6 mcp服务器将利用以下任一工具启动测试。
execute_k6_test:运行默认选项测试(30秒时长,10个VU)execute_k6_test_with_options:运行自定义时长和VU的测试
本页由 AI 翻译,技术细节请以原文为准。
README
🚀 ⚡️ k6-mcp-server
A Model Context Protocol (MCP) server implementation for running k6 load tests.
✨ Features
- Simple integration with Model Context Protocol framework
- Support for custom test durations and virtual users (VUs)
- Easy-to-use API for running k6 load tests
- Configurable through environment variables
- Real-time test execution output
🔧 Prerequisites
Before you begin, ensure you have the following installed:
- Python 3.12 or higher
- k6 load testing tool (Installation guide)
- uv package manager (Installation guide)
📦 Installation
- Clone the repository:
git clone https://github.com/qainsights/k6-mcp-server.git
- Install the required dependencies:
uv pip install -r requirements.txt
- Set up environment variables (optional):
Create a
.envfile in the project root:
K6_BIN=/path/to/k6 # Optional: defaults to 'k6' in system PATH
🚀 Getting Started
- Create a k6 test script (e.g.,
test.js):
import http from "k6/http";
import { sleep } from "k6";
export default function () {
http.get("http://test.k6.io");
sleep(1);
}
- Configure the MCP server using the below specs in your favorite MCP client (Claude Desktop, Cursor, Windsurf and more):
{
"mcpServers": {
"k6": {
"command": "/path/to/bin/uv",
"args": [
"--directory",
"/path/to/k6-mcp-server",
"run",
"k6_server.py"
]
}
}
}
- Now ask the LLM to run the test e.g.
run k6 test for hello.js. The k6 mcp server will leverage either one of the below tools to start the test.
execute_k6_test: Run a test with default options (30s duration, 10 VUs)execute_k6_test_with_options: Run a test with custom duration and VUs
📝 API Reference
Execute K6 Test
execute_k6_test(
script_file: str,
duration: str = "30s", # Optional
vus: int = 10 # Optional
)
Execute K6 Test with Custom Options
execute_k6_test_with_options(
script_file: str,
duration: str,
vus: int
)
✨ Use cases
- LLM powered results analysis
- Effective debugging of load tests
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"k6": {
"command": "/path/to/bin/uv",
"args": [
"--directory",
"/path/to/k6-mcp-server",
"run",
"k6_server.py"
]
}
}
}