模拟服务器mcp
用于与以下对象交互的MCP(模型上下文协议)服务器 詹姆斯·布鲁姆的模拟服务器这使得AI助手能够创建模拟HTTP期望、验证请求、清除状态,并以编程方式管理MockServer实例。
先决条件
您需要一个正在运行的MockServer实例:
# Using Docker (easiest)
docker run -d -p 1080:1080 mockserver/mockserver安装
使用npx(推荐)
npx mockserver-mcp全球安装
npm install -g mockserver-mcp
mockserver-mcp配置
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
MOCKSERVER_HOST | MockServer主机名 | localhost |
MOCKSERVER_PORT | 模拟服务器端口 | 1080 |
MCP客户端配置
添加到您的MCP客户端配置文件中(例如,Claude Desktop、Kiro、Cursor):
{
"mcpServers": {
"mockserver": {
"command": "npx",
"args": ["-y", "mockserver-mcp"],
"env": {
"MOCKSERVER_HOST": "localhost",
"MOCKSERVER_PORT": "1080"
}
}
}
}对于共享团队MockServer,请更改 MOCKSERVER_HOST 发送到您的服务器地址。
可用工具
模拟服务器_创建_期望
在MockServer上创建一个模拟HTTP期望。
参数:
httpRequest(必填):请求匹配条件
- method:HTTP方法(GET、POST、PUT、DELETE等) - path:要匹配的URL路径 - queryStringParameters:查询要匹配的参数 - headers:要匹配的标头 - body:身体匹配器 type (字符串、JSON、REGEX、XPATH、JSON_PATH)和 value
httpResponse:响应配置
- statusCode:HTTP状态代码 - headers:响应标头 - body:响应体(字符串或对象) - delay:响应延迟 timeUnit 和 value
times:匹配多少次(remainingTimes,unlimited)timeToLive:预期寿命(timeUnit,timeToLive)
例子:
{
"httpRequest": {
"method": "GET",
"path": "/api/users"
},
"httpResponse": {
"statusCode": 200,
"body": { "users": [] }
}
}模拟服务器验证
验证MockServer是否收到了符合条件的请求。
参数:
httpRequest(必填):请求匹配条件(与create_expectation相同)times:预期请求计数
- atLeast:最小请求数 - atMost:最大请求数 - exactly:请求的确切数量
例子:
{
"httpRequest": {
"method": "POST",
"path": "/api/orders"
},
"times": {
"atLeast": 1
}
}mockserver_clear
明确的期望和来自MockServer的记录请求。
参数:
httpRequest(可选):请求匹配器以明确特定期望。如果没有提供,则全部清除。
例子:
{
"httpRequest": {
"path": "/api/users"
}
}mockserver_reset
执行MockServer的完全重置,清除所有期望和记录的请求。
参数: 无
模拟服务器请求
从MockServer检索记录的请求。
参数:
httpRequest(可选):请求匹配器,用于过滤记录的请求
例子:
{
"httpRequest": {
"method": "GET"
}
}模拟服务器状态
获取MockServer连接状态和配置。
参数: 无
为什么嘲笑?
API mocking支持早期测试-在后端准备好之前开始构建和测试前端或集成。不再等待。船更快。
需求
- Node.js>=18.0.0
- 正在运行的MockServer实例
链接
- npm:https://www.npmjs.com/package/mockserver-mcp
- github:https://github.com/Akkshay10/MCPClientMock
- MCP注册表:https://registry.modelcontextprotocol.io
许可证
麻省理工学院
