Token导航 LogoToken导航TokenDH.com
MCP Benchmark Runner logo
开发工具stdio官方级别未说明来源级核验

MCP Benchmark Runner

MCP Server

@modelcontextprotocol/inspector

一个通过LLM运行.NET基准测试的MCP服务器,支持返回结果和生成多种格式的报告,适用于性能检查、PR中的性能比较和快速回归测试。

工具数

4

提示词数

0

GitHub Stars

0

资源数

0
C#开发工具性能分析

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

alexbel83

提供方

alexbel83

最后核验

2026/5/17 20:21

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y @modelcontextprotocol/inspector

详细介绍

麦克。BenchmarkRunner

快跑。NET基准测试。\ C#中的MCP(模型上下文协议)服务器,按需执行BenchmarkDotNet并返回结果和工件。使用 MCP检查员Visual Studio中的GitHub Copilot聊天工具.

由维护 Aliaksandr Marozkaamarozka.dev

TL;DR——让你的AI“运行哈希基准测试”,获取Mean/Alloc增量和Markdown/JSON/CSV工件。非常适合演示MCP、PR中的性能检查或快速回归搜索。

______________________________________________________________________

✨ 特性

  • MCP工具

- run_bench(filter?, job?, exporters?, timeoutSec?) –运行基准测试,获得 runId +JSON摘要 - get_results(runId) 解析的JSON摘要(Mean、Alloc/Op等) - list_artifacts(runId) –列出所有文件(JSON/Markdown/CSV/日志) - compare_runs(baseRunId, headRunId) –简单增量(平均值和分配字节/Op的变化百分比)

  • 作业预设: Short, Medium, Long
  • 出口商: json, fulljson, md, csv
  • 客户:MCP检查器(stdio)和Visual Studio(副驾驶聊天工具)

______________________________________________________________________

🗂 项目布局

Mcp.BenchmarkRunner.sln
│
├─ src/
│  ├─ Mcp.BenchmarkRunner.Server/          # MCP server (console)
│  │  ├─ Program.cs                        # host + stdio transport + attribute discovery
│  │  └─ Tools/
│  │     ├─ BenchTools.cs                  # run_bench / get_results / list_artifacts
│  │     └─ CompareTools.cs                # compare_runs
│  │
│  └─ SampleBenchmarks/                    # BenchmarkDotNet executable
│     ├─ Program.cs                        # CLI: --artifacts/--exporters/--job/--filter
│     ├─ Jobs.cs                           # Short/Medium/Long presets
│     └─ HashBench.cs                      # MD5 vs SHA256 demo
│
└─ runs/                                   # output per runId (created at runtime)

流动:检查员/副驾驶→ MCP服务器(stdio)→ 生成 dotnet run 在…上 SampleBenchmarks → BDN写入工件→ 服务器返回JSON/paths。

______________________________________________________________________

🚀 快速启动

先决条件

  • .NET SDK 9.0(或将两个项目都切换到 .NET 8.0)
  • (可选)用于MCP检查器的Node.js(npx)

构建和健全性检查(CLI)

dotnet restore
dotnet build

# Run benchmarks without MCP (sanity)
dotnet run --project src/SampleBenchmarks/SampleBenchmarks.csproj -c Release -- \
  --artifacts runs/manual1 --exporters json,md --job Short --filter *Hash*

# Start the MCP server
dotnet run --project src/Mcp.BenchmarkRunner.Server

文物出现在 runs/.

______________________________________________________________________

🧪 MCP检查员(独立)

启动检查器:

npx -y @modelcontextprotocol/inspector
# or:
npm i -g @modelcontextprotocol/inspector
mcp-inspector

连接(stdio):

  • 命令: dotnet
  • Args: run --project src/Mcp.BenchmarkRunner.Server/Mcp.BenchmarkRunner.Server.csproj

有效载荷示例:

{ "filter": "*Hash*", "job": "Short", "exporters": "json,md" }
{ "BaseRunId": "", "HeadRunId": "" }
Windows npm ENOENT修复程序\ 如果 npx 失败与 %APPDATA%\npm 未找到:\ mkdir "%APPDATA%\npm" && npm config set prefix "%APPDATA%\npm" 并添加 %APPDATA%\npm 到PATH。

______________________________________________________________________

🧰 Visual Studio(副驾驶聊天工具)

选项A-- .mcp.json溶液根 (推荐)

{
  "servers": {
    "benchrunner": {
      "name": "Benchmark Runner",
      "type": "stdio",
      "command": "dotnet",
      "args": [
        "run",
        "--project",
        "src/Mcp.BenchmarkRunner.Server/Mcp.BenchmarkRunner.Server.csproj"
      ]
    }
  }
}

选项B——全局 %USERPROFILE%\.mcp.json (使用绝对路径)

{
  "servers": {
    "benchrunner": {
      "name": "Benchmark Runner",
      "type": "stdio",
      "command": "dotnet",
      "args": [
        "run",
        "--project",
        "C:\\path\\to\\repo\\src\\Mcp.BenchmarkRunner.Server\\Mcp.BenchmarkRunner.Server.csproj"
      ]
    }
  }
}

使用它: *View → GitHub Copilot 聊天助手* → 工具/代理→ 启用 基准跑者 → run:

  • run_bench → grab runId
  • get_results / list_artifacts
  • compare_runs 有两个runId

日志: *View → 输出→ GitHub Copilot*.

______________________________________________________________________

🧩 工具合同

run_bench

{ "filter": "string?", "job": "Short|Medium|Long", "exporters": "json|fulljson|md|csv", "timeoutSec": 600 }

退货: { "runId": "string", "artifactsDir": "path", "summary": { ... } }

get_results

{ "runId": "string" }

退货: 解析的JSON导出器对象或 null.

list_artifacts

{ "runId": "string" }

退货: 下的文件路径列表 runs/.

compare_runs

{ "BaseRunId": "string", "HeadRunId": "string" }

退货: 带有平均值/异基因基/头的行 .

______________________________________________________________________

🛠 故障排除

  • restore failed

- 启用 nuget.org 来源;清除缓存:\ dotnet nuget add source https://api.nuget.org/v3/index.json -n nuget.org\ dotnet nuget locals all --clear - 启用 预发布 (MCP SDK是预览版)或将两个项目切换到 net8.0.

  • 基准测试在CLI中有效,但通过MCP失败

- 通常为a 路径问题 从启动时 bin/…. - 向上走 5个级别AppContext.BaseDirectory 到repo根目录 *或* 自动检测根(查找 .sln/src).

  • dotnet 在VS中找不到

- 添加 C:\\Program Files\\dotnet\\ 转到用户PATH并重新启动Visual Studio。

______________________________________________________________________

🗺 路线图

  • upload_project 工具:zip→ 沙盒→ 运行用户基准测试
  • DisassemblyDiagnoser 热路径asm转储工具
  • 发布为 dotnet new 模板或NuGet工具
  • CI挂钩:立柱 compare_runs PR上的增量

______________________________________________________________________

📎 鸣谢

建造于 Aliaksandr Marozkaamarozka.dev

📄 许可证

麻省理工学院

目录标签

目录标签

C#开发工具性能分析基准测试本地部署.NET工具MCP协议

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@modelcontextprotocol/inspector

工具数量(toolCount,工具数)

4

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP