Blazemeter Mcp Server

Blazemeter Mcp Server

🚀 BlazeMeter MCP Server

本项目提供了一个模型上下文提供器(MCP)服务器,用于与 BlazeMeter 的 API 集成,实现对性能测试数据的编程式访问和管理功能。该服务器提供了一组工具,供与 MCP 兼容的客户端(如 Claude Desktop 和 Cursor)与 BlazeMeter 资源进行交互。

🚀 快速开始

⚙️ 前提条件

在开始之前,请确保你具备以下条件:

⚠️ 重要提示

如果你使用较低版本的 Node.js 运行,将无法使用 fetch。工具使用 fetch 进行 HTTP 调用。若要解决此问题,你可以将工具修改为使用 node-fetch。确保将 node-fetch 作为依赖项安装,然后在每个工具文件中以 fetch 的形式导入。

📥 安装与设置

1. 安装依赖项 在项目的根目录下运行以下命令:

npm install
  • 在 Linux/macOS (sh) 系统上,使用以下命令检查 Node.js 的路径:
    which node
    
  • 在 Windows (PowerShell) 系统上,使用以下命令检查 Node.js 的路径:
    Get-Command node | Select-Object -ExpandProperty Source
    

若要检查 Node.js 的版本,可运行以下命令:

node --version

若要获取 mcpServer.js 的绝对路径,可按以下操作:

  • 在 Linux/macOS (sh) 系统上
    realpath mcpServer.js
    
  • 在 Windows (PowerShell) 系统上
    Resolve-Path mcpServer.js | Select-Object -ExpandProperty Path
    

👩‍💻 将 MCP 服务器连接到 Claude Desktop 或 Cursor

你可以将 MCP 服务器连接到任何 MCP 客户端。以下是将其连接到 Claude Desktop 和 Cursor 的说明。

Claude Desktop

步骤 1:记录上一步中 Node.js 和 mcpServer.js 的完整路径。 步骤 2:打开 Claude Desktop → 设置开发者编辑配置,添加一个新的 MCP 服务器:

{
"mcpServers": {
"<服务器名称>": {
"command": "",
"args": [""]
}
}
}

重启 Claude Desktop 以使更改生效。确保新的 MCP 已开启,并且旁边有一个绿色圆圈。如果是这样,你就可以开始使用已连接工具的聊天会话了。

Cursor

步骤 1:记录上一步中 Node.js 和 mcpServer.js 的完整路径。 步骤 2:在 Cursor 中,打开命令面板,搜索 "MCP: Add Server",或者前往设置 → MCP 服务器。 步骤 3:添加一个新的 MCP 服务器,配置如下:

  • 命令
  • 参数 步骤 4:保存并启用服务器。Cursor 会显示 MCP 服务器可用,你可以直接从 Cursor 界面使用 BlazeMeter 工具。

⚠️ 重要提示

对于这两个客户端,请确保使用 Node.js v18 及以上版本的绝对路径。

如果你没有提供 Node.js v18 及以上版本的绝对路径,客户端可能会回退到系统上的其他旧版本。在这种情况下,fetch API 将不可用,工具调用将无法正常工作。如果发生这种情况,你可以 a) 安装较新版本的 Node.js,并在命令中指向它;或者 b) 将 node-fetch 作为 fetch 导入到每个工具中,并确保在 package.json 中添加 node-fetch 依赖项。

附加选项

🐳 Docker 部署(生产环境)

对于生产环境部署,你可以使用 Docker: 1. 构建 Docker 镜像

docker build -t <你的服务器名称> .

2. 客户端集成 将 Docker 服务器配置添加到你的 MCP 客户端(Claude Desktop 或 Cursor):

{
"mcpServers": {
"<你的服务器名称>": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file=.env", "<你的服务器名称>"]
}
}
}

请将环境变量(API 密钥等)添加到 .env 文件中。

该项目附带了以下最小化的 Docker 设置:

FROM node:22.12-alpine AS builder

WORKDIR /app
COPY package.json package-lock.json ./
RUN npm install

COPY . .

ENTRYPOINT ["node", "mcpServer.js"]

🌐 服务器发送事件(SSE)

若要运行支持服务器发送事件(SSE)的服务器,请使用 --sse 标志:

node mcpServer.js --sse

🛠️ 其他 CLI 命令

列出工具

使用以下命令列出所有生成工具的描述和参数:

node index.js tools

示例:

可用工具:

工作区:acme-workspace
集合:useful-api
list_all_customers
描述:检索有用事物的列表。
参数:
- magic:所需的魔法力量
- limit:返回结果的数量
[...其他参数...]

🔥 BlazeMeter API 工具

本项目包含与 BlazeMeter API 交互的工具。你必须在 .env 文件中设置以下环境变量:

示例 .env 文件

BASE_URL=https://a.blazemeter.com
BZM_USERNAME=你的 BlazeMeter API 密钥
BZM_PASSWORD=你的 BlazeMeter API 密钥密码
BZM_ACCOUNT_ID=你的 BlazeMeter 账户 ID   # (可选,用于工作区列表)
BZM_WORKSPACE_ID=你的 BlazeMeter 工作区 ID # (可选,用于项目列表)
  • 对于参数可选的工具,如果未提供值,将从 .env 文件中读取。
  • 对于参数必需的工具,你必须在请求中提供该参数。

支持的 BlazeMeter 端点

工具名称 端点及描述 必需参数
get_workspaces /api/v4/workspaces?accountId=...
列出账户的工作区
(可选)accountId
get_projects /api/v4/projects?workspaceId=...
列出工作区的项目
(可选)workspaceId
get_test_runs /api/v4/masters?testId=...
列出测试的运行(主测试)
testId
get_test_run_summary /api/v4/masters/{masterId}/reports/default/summary
获取测试运行的摘要
masterId
get_test_run_aggregate_data /api/v4/masters/{masterId}/reports/aggregatereport/data
聚合报告数据
masterId
get_test_run_errors_data /api/v4/masters/{masterId}/reports/errorsreport/data
错误报告数据
masterId
get_test_run_thresholds /api/v4/masters/{masterId}/reports/thresholds
阈值报告
masterId
get_test_run_timeline_kpis /api/v4/masters/{masterId}/reports/timeline/kpis
时间线关键绩效指标报告
masterId
  • 0 关注
  • 0 收藏,29 浏览
  • system 提出于 2025-10-06 15:15

相似服务问题

相关AI产品