Skip to content

HTTP smoke and lightweight load checks

The repository includes a small HTTP smoke script for deployment validation. It is intentionally light: it checks MCP connectivity and repeated tools/list calls without turning normal CI into a public-load test against upstream Blurt blockchain services.

Run against a local server

Start the server:

bash
npm run build
npm start

In another shell:

bash
npm run smoke:http

By default this targets http://localhost:3000/mcp and runs five tools/list iterations.

Run against a hosted endpoint

bash
MCP_URL=https://mcp.example.org/mcp MCP_SMOKE_ITERATIONS=10 npm run smoke:http

Include one representative read

bash
MCP_URL=https://mcp.example.org/mcp MCP_SMOKE_READ=1 npm run smoke:http

This calls get-chain-status once after the tools/list loop. Use it sparingly on public endpoints; it may touch upstream RPC/price dependencies.

Output

The script emits JSON lines, for example:

json
{"event":"tools_list","iteration":1,"tool_count":25,"duration_ms":42}
{"event":"done","url":"http://localhost:3000/mcp","iterations":5,"include_read":false,"total_duration_ms":260}

What this is not

This is not a full benchmark, distributed load test, or SLO proof. Heavy load testing should be run from a controlled staging environment with permission and with upstream RPC impact in mind.