article
README
🚀 k6-mcp-server
一个模型上下文协议(MCP)服务器实现,用于运行k6负载测试,可简单集成到MCP框架,支持自定义测试参数,还能实时输出测试结果。
🚀 快速开始
- 创建一个k6测试脚本(例如
test.js):
import http from "k6/http";
import { sleep } from "k6";
export default function () {
http.get("http://test.k6.io");
sleep(1);
}
- 使用以下配置在您最喜欢的MCP客户端中配置k6 MCP服务器(例如Claude Desktop、Cursor、Windsurf等):
{
"mcpServers": {
"k6": {
"command": "/Users/naveenkumar/.local/bin/uv",
"args": [
"--directory",
"/Users/naveenkumar/Gits/k6-mcp-server",
"run",
"k6_server.py"
]
}
}
}
- 现在让LLM运行测试,例如
运行 hello.js 的k6测试。k6 MCP服务器将使用以下工具之一启动测试:
execute_k6_test:使用默认选项运行测试(30秒时长,10个VUs)execute_k6_test_with_options:使用自定义时长和VUs运行测试

✨ 主要特性
- 简单集成到模型上下文协议框架中
- 支持自定义测试时长和虚拟用户(VUs)
- 易于使用的API来执行k6负载测试
- 通过环境变量配置
- 实时测试执行输出
🔧 先决条件
在开始之前,请确保安装了以下内容:
📦 安装指南
- 克隆仓库:
git clone https://github.com/yourusername/k6-mcp-server.git
- 安装所需的依赖项:
uv pip install -r requirements.txt
- 设置环境变量(可选):
在项目根目录下创建一个
.env文件:
K6_BIN=/path/to/k6 # 可选:默认为系统PATH中的'k6'
📄 API文档
执行k6测试
execute_k6_test(
script_file: str,
duration: str = "30s", # 可选,默认为"30秒"
vus: int = 10 # 可选,默认为10
)
带自定义选项执行k6测试
execute_k6_test_with_options(
script_file: str,
duration: str,
vus: int
)
🤝 贡献
欢迎贡献!请随意提交Pull Request。
📄 许可证
本项目 licensed under the MIT License,具体见LICENSE文件。
Scan to join WeChat group