Token导航 LogoToken导航TokenDH.com
MCP Simulator logo
运维云端未说明官方级别未说明来源级核验

MCP Simulator

MCP Server

模拟多个虚拟MCP服务器在一个端口上运行,用于负载测试MCP客户端。

工具数

0

提示词数

0

GitHub Stars

2

资源数

0
GoHTTP传输云端部署

安装说明

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

作者 / 组织

ErnestK

提供方

ErnestK

最后核验

2026/5/17 20:23

快速接入

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

详细介绍

MCP模拟器

使用以下工具在单个端口上模拟N个虚拟MCP服务器 可流式传输的HTTP 运输。每台服务器都维护一组随机的工具,并定期对其进行修改,通过SSE通知连接的客户端。

为负载测试而构建的MCP客户端,可与数千台服务器保持持久连接。

快速开始

# Run with defaults (1000 servers, port 8080)
go run ./cmd/simulator/

# Custom configuration
go run ./cmd/simulator/ \
  --servers 1000 \
  --port 9090 \
  --min-tools 3 \
  --max-tools 10 \
  --min-mutation-interval 5s \
  --max-mutation-interval 60s

# Build and run binary
go build -o mcp-simulator ./cmd/simulator/
./mcp-simulator --servers 10000 --port 9090

旗帜

标志默认值描述
--port8080HTTP服务器端口
--servers1000虚拟MCP服务器数量
--min-tools3init时每台服务器的最低工具数
--max-tools10init时每台服务器的最大工具数
--min-mutation-interval5s工具突变之间的最短时间
--max-mutation-interval60s工具突变之间的最长时间

API

每个虚拟服务器都公开一个可流式传输的HTTP端点:

POST /server/{id}/mcp

支持的JSON-RPC方法

方法描述响应
initializeMCP握手服务器功能
notifications/initialized客户端就绪信号202已接受
tools/list列出当前工具带inputSchema的工具数组

常规JSON响应

curl -X POST http://localhost:9090/server/0/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":"1","method":"tools/list","params":{}}'

带有通知的SSE流

添加 Accept: text/event-stream 以SSE事件的形式接收响应,然后 notifications/tools/list_changed 服务器工具更改时的事件:

curl -N -X POST http://localhost:9090/server/0/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: text/event-stream" \
  -d '{"jsonrpc":"2.0","id":"1","method":"tools/list","params":{}}'

建筑

cmd/simulator/main.go              Entry point, CLI flags, graceful shutdown
internal/jsonrpc/schema.go         JSON-RPC 2.0 request/response/notification structs
internal/tools/tools.go            Random tool generation and mutation
internal/server/config.go          Server configuration
internal/server/registry.go        Virtual server registry, HTTP routing
internal/server/virtual_server.go  VirtualServer state, pub/sub, mutation loop
internal/server/handler.go         HTTP handler, JSON-RPC dispatch, SSE streaming
  • 每台服务器上有一个goroutine运行一个变异循环(以随机间隔添加/删除/更新随机工具)
  • 突变广播 notifications/tools/list_changed 面向所有SSE用户
  • 零外部依赖关系——仅限标准库

目录标签

目录标签

GoHTTP传输云端部署服务器模拟负载测试MCP协议JSON-RPC

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP