MCP.so
ログイン
サーバー

xk6-mcp

@dgzlopes

Test MCP servers with k6

概要

What is xk6-mcp?

xk6-mcp is a k6 extension for testing Model Context Protocol (MCP) servers. It lets developers load-test MCP servers using k6, providing client support for stdio, SSE, and Streamable HTTP transports, built-in pagination, and automatic RED-style metrics.

How to use xk6-mcp?

Install xk6, then build a k6 binary with the extension: xk6 build --with github.com/dgzlopes/xk6-mcp. Import the module in your script with import mcp from 'k6/x/mcp'; and run the built binary: ./k6 run script.js.

Key features of xk6-mcp

  • Supports stdio, SSE, and Streamable HTTP transports
  • Automatic pagination via *All methods (e.g., listAllTools())
  • Manual pagination for fine-grained control
  • Built-in RED metrics (request duration, count, errors)
  • Tagged metrics per MCP method (e.g., GetPrompt, ListTools)
  • Enables connection, tool, resource, and prompt operations

Use cases of xk6-mcp

  • Load testing MCP server responsiveness and reliability
  • Validating tool, resource, and prompt availability under load
  • Monitoring MCP server error rates and latency in k6 tests

FAQ from xk6-mcp

What about non-stdio transports?

Both SSE and Streamable HTTP are supported — use mcp.SSEClient or mcp.StreamableHTTPClient respectively.

What about pagination?

The extension offers two ways: listAllTools() (and similar) automatically handle pagination, while listTools() requires a cursor argument for manual pagination.

What about metrics?

xk6-mcp automatically tracks RED-style metrics: mcp_request_duration (trend), mcp_request_count (counter), and mcp_request_errors (counter), each tagged with the MCP method name.

Is this officially supported by Grafana Labs?

No, this extension is experimental and not officially supported by Grafana Labs.

タグ

「その他」の他のコンテンツ