mockd

io.mockd由 mockd.io 发布v0.4.6更新于 Oct 24, 2026

Multi-protocol API mock server: HTTP, GraphQL, gRPC, WebSocket, MQTT, SSE, SOAP.

已验证STDIO仅桌面开发者工具安全与监控

概览

AI 生成的概览

mockd 是本地多协议 API 模拟服务器,其内置 MCP 服务器让助手创建模拟接口、管理有状态数据、注入故障并校验请求。

可以做什么
通过一个本地服务器创建、修改和删除 HTTP、gRPC、GraphQL、WebSocket、MQTT、SSE 与 SOAP 模拟接口。管理有状态资源与多步骤流程,使模拟接口表现得像真实的 CRUD API。导入导出 OpenAPI、Postman、HAR、WSDL、WireMock 与 cURL 的规范与录制。应用混沌配置、故障注入与熔断器,并查看请求日志、校验契约。将模拟接口组织到隔离的工作区,并通过云端隧道共享。
适用场景
适用于客户端要对接尚不存在、不稳定或调用需付费的 API 时,希望由助手直接搭建和调整模拟接口。也适合跨多种协议的契约校验与故障注入测试。
运行要求
作为本地进程在用户机器上运行,用 mockd 可执行文件加 mcp 参数启动;该文件以容器镜像、Homebrew、Go 安装或预编译二进制分发。未声明账号、API 密钥或环境变量,可完全离线使用。
安装前请注意
助手可以创建、修改和删除模拟接口、有状态数据与工作区,并可启动监听本地端口的服务器。混沌配置会故意注入错误和延迟。可选的云端隧道会把本地模拟接口通过公开网址暴露,启用前请确认共享内容。

安装

在 SourceWeft 中

  1. 打开 控制台中的 mockd,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[mockd]

One binary. Seven protocols. Zero dependencies.

Mock HTTP, gRPC, GraphQL, WebSocket, MQTT, SSE, and SOAP from a single CLI tool.
Import OpenAPI specs. Build digital twins. Let AI agents create mocks for you.

[CI] [Release] [Stars] [Go] [License]

Website · Docs · Samples · Contributing

[mockd demo]


Quick Start

bash
# Installcurl -sSL https://get.mockd.io | sh
# Start + create a stateful CRUD API in one commandmockd startmockd add http --path /api/users --stateful users
# It works immediatelycurl -X POST localhost:4280/api/users -d '{"name":"Alice","email":"[email protected]"}'# → {"id":"a1b2c3","name":"Alice","email":"[email protected]"}
curl localhost:4280/api/users# → {"data":[{"id":"a1b2c3","name":"Alice","email":"[email protected]"}],"meta":{"total":1}}
More install options
bash
brew install getmockd/tap/mockd                                          # Homebrewdocker run -p 4280:4280 -p 4290:4290 ghcr.io/getmockd/mockd:latest      # Dockergo install github.com/getmockd/mockd/cmd/mockd@latest                    # Go

Pre-built binaries for Linux, macOS, and Windows on the Releases page.

Why mockd?

Every other mock tool makes you choose: pick one protocol, install a runtime, bolt on extensions. mockd doesn't.

mockdWireMockMockoonPrismMockServerBeeceptorjson-server
Single binary, no runtime✅❌ JVM❌ Electron✅❌ JVM❌ SaaS❌ Node
All 9 protocols built-in✅🔌 ExtPartialHTTP onlyHTTP onlyPartialREST only
Chaos profiles + circuit breakers✅⚠️ Cloud❌❌❌❌❌
MCP server✅ local⚠️ Cloud❌❌❌⚠️ Cloud, Team+❌
Free + self-hostable, unlimited✅✅✅✅✅50 req/day✅

🔌 Ext = requires separate extension JAR • ⚠️ Cloud = only in paid/hosted tier

Full capability matrix (deployment, protocols, capabilities, imports/exports, pricing)

Deployment

mockdWireMockMockoonPrismMockServerBeeceptorjson-server
Native single binary✅ Go❌❌✅❌❌❌
Runtime requirednoneJVMElectron/Nodeoptional NodeJVMn/a (SaaS)Node
Docker image✅✅✅ CLI✅✅⚠️ Enterprise❌
Managed SaaS offeringroadmapWireMock CloudMockoon CloudStoplight❌✅❌

Protocol support

mockdWireMock OSSMockoonPrismMockServerBeeceptorjson-server
REST / HTTP✅✅✅✅✅✅✅
gRPC✅🔌 Ext❌❌❌✅❌
GraphQL✅🔌 Ext❌❌❌✅❌
WebSocket✅🔌 Ext (beta)✅❌❌❌❌
MQTT✅❌❌❌❌❌❌
SSE✅❌❌❌❌❌❌
SOAP (WSDL)✅❌Partial❌Partial✅❌
mTLS✅✅Partial❌✅✅❌
OAuth flows✅❌❌❌❌❌❌

Capabilities

mockdWireMock OSSMockoonPrismMockServerBeeceptorjson-server
Stateful CRUD✅❌✅Partial❌✅✅
Multi-step stateful flows✅✅ ScenariosPartial❌Partial✅❌
Fault injection (delay, errors)✅✅✅❌✅✅❌
Chaos profiles✅⚠️ Cloud❌❌❌❌❌
Circuit breakers✅⚠️ Cloud❌❌❌❌❌
Bandwidth throttling✅❌❌❌❌roadmap❌
Admin REST API✅✅CLI only❌✅✅Partial
Built-in web dashboard✅⚠️ Cloud⚠️ Cloud❌✅ read-only✅❌
Native desktop GUI❌❌✅ Electron❌❌❌❌
MCP server✅ local⚠️ Cloud❌❌❌⚠️ Cloud Team+❌
Cloud tunnel sharing✅❌⚠️ Cloud❌❌✅❌

Import / export

mockdWireMock OSSMockoonPrismMockServerBeeceptorjson-server
OpenAPI import✅⚠️ Cloud✅✅✅✅❌
Postman import✅⚠️ Cloud❌✅❌❌❌
HAR import✅❌❌❌❌❌❌
WSDL import✅❌❌❌❌✅❌
cURL import✅❌❌❌❌❌❌
WireMock format import✅native❌❌❌❌❌
Mockoon format import✅❌native❌❌❌❌
HAR export✅✅❌❌✅✅❌

Free tier limits

RequestsMock rulesCost
mockdunlimitedunlimitedfree (Apache 2.0)
WireMock OSSunlimitedunlimitedfree (Apache 2.0)
Mockoon desktop / CLIunlimitedunlimitedfree (MIT)
Prismunlimitedunlimitedfree (Apache 2.0)
MockServerunlimitedunlimitedfree (Apache 2.0)
Beeceptor free tier50 / day / endpoint3$10/mo+ for more
json-serverunlimitedunlimitedfree (MIT)

Legend: ✅ built-in • 🔌 Ext = separate OSS extension • ⚠️ Cloud = only in paid / hosted tier • Partial = limited implementation • roadmap = on the project's stated roadmap, not yet shipped

Note on WireMock imports. The ⚠️ Cloud marks on OpenAPI and Postman import reflect first-party WireMock features. Community converters exist (e.g. openapi-to-wiremock, OpenAPI Generator targets) but are not bundled with the OSS standalone JAR.

Digital Twins

Import a real API spec, bind it to stateful tables, and get a mock that passes the real SDK:

yaml
# mockd.yaml — Stripe digital twinversion: "1.0"imports:  - path: stripe-openapi.yaml    as: stripetables:  - name: customers    idStrategy: prefix    idPrefix: "cus_"    seedData:      - { id: "cus_1", name: "Acme Corp", email: "[email protected]" }extend:  - { mock: stripe.GetCustomers, table: customers, action: list }  - { mock: stripe.PostCustomers, table: customers, action: create }  - { mock: stripe.GetCustomersCustomer, table: customers, action: get }  - { mock: stripe.PostCustomersCustomer, table: customers, action: update }  - { mock: stripe.DeleteCustomersCustomer, table: customers, action: delete }
bash
mockd start -c mockd.yaml --no-authcurl -X POST localhost:4280/v1/customers -d "name=Test&[email protected]"# → {"id":"cus_a1b2c3","object":"customer","name":"Test","email":"[email protected]"}

Validated with real SDKs:

  • Stripe: 49/49 stripe-go SDK tests pass
  • Twilio: 13/13 twilio-go SDK tests pass
  • OpenAI: openai Python SDK verified (models, assistants, chat completions)

See mockd-samples for complete digital twin configs.

AI-Native (MCP)

mockd includes a built-in Model Context Protocol server with 18 tools. AI agents can create mocks, manage state, import specs, and verify contracts without touching the CLI:

json
{  "mcpServers": {    "mockd": { "command": "mockd", "args": ["mcp"] }  }}

Works in Claude Desktop, Cursor, Windsurf, and any MCP-compatible editor. Tools cover mock CRUD, stateful resources, chaos injection, request logs, verification, workspaces, and import/export.

Features

Multi-Protocol Mocking — 7 protocols, unified CLI
ProtocolPortExample
HTTP/HTTPS4280mockd add http --path /api/hello --body '{"msg":"hi"}'
gRPC50051mockd add grpc --proto svc.proto --service Greeter --rpc-method Greet
GraphQL4280mockd add graphql --path /graphql --operation hello
WebSocket4280mockd add websocket --path /ws --echo
MQTT1883mockd add mqtt --topic sensors/temp --payload '{"temp":72}'
SSE4280mockd add http --path /events --sse --sse-event 'data: hello'
SOAP4280mockd add soap --path /soap --operation GetWeather --response '<OK/>'
Import & Export — OpenAPI, Postman, HAR, WireMock, cURL, WSDL
bash
mockd import openapi.yaml           # OpenAPI 3.x / Swagger 2.0mockd import collection.json        # Postman collectionsmockd import recording.har          # HAR filesmockd import wiremock-mapping.json  # WireMock stubsmockd import service.wsdl           # WSDL → SOAP mocksmockd import "curl -X GET https://api.example.com/users"  # cURL commandsmockd export --format yaml > mocks.yaml
Chaos Engineering — latency, errors, circuit breakers
bash
mockd chaos apply flaky       # 30% error ratemockd chaos apply slow-api    # 200-800ms latencymockd chaos apply offline     # 100% 503 errorsmockd chaos disable
Cloud Tunnel — share local mocks instantly
bash
mockd tunnel# → https://a1b2c3d4.tunnel.mockd.io → http://localhost:4280

All 7 protocols multiplexed through a single secure connection on port 443. Works behind NAT and firewalls.

Workspaces — isolated mock environments
bash
mockd workspace create -n "Payment API" --usemockd import stripe-openapi.yamlmockd workspace create -n "Comms API" --usemockd import twilio-openapi.yaml# Mocks, state, and logs are fully isolated per workspace
Proxy Recording — record real traffic, replay as mocks
bash
mockd proxy start --port 8888# Configure your app to use http://localhost:8888 as proxy# Traffic is recorded, then replay with:mockd import recordings/session.json
Web Dashboard — manage mocks visually

Release builds serve a web UI from the admin port (http://localhost:4290). VS Code-style editor, command palette, mock tree with folders, request log viewer, and near-miss debugging.

Mockd Cloud

mockd works fully offline with no account required. For teams that want shared environments:

  • Persistent cloud mocks — deploy mock environments your whole team can hit
  • Team management — shared workspaces with access controls
  • Cloud tunnels — authenticated tunnels with custom domains

Coming soon. Join the waitlist.

Documentation

Full guides, API reference, and config docs at docs.mockd.io.

Contributing

Contributions welcome! See CONTRIBUTING.md for setup.

License

Apache License 2.0 — free for commercial use.

来源:README.md,提交 45c2906

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.4.6最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分