Skip to main content
Use a compatible MCP client library to connect your application to IQRush. The remote endpoint speaks Streamable HTTP; it is not a plain REST endpoint.

Connection sequence

Configure the remote URL and the authorization flow described in authentication. Let the client library negotiate the protocol and manage the connection. Discover tools with tools/list, then call a tool with its advertised arguments. The service in this edition uses a session-based MCP implementation. With that protocol family, the client initializes the connection, sends the initialized notification, and retains a returned session identifier. Do not assume that every later MCP protocol revision is supported by this service. For a session-based connection, this is an example tool-call message after initialization:
The transport must accept JSON and event-stream responses. Its session and protocol headers must match the negotiated connection. Prefer a maintained client library over sending isolated messages with curl. See the session-based Streamable HTTP specification.

Read the result at both levels

An MCP result may carry structured data, text content containing JSON, or a tool error. Inspect the outer isError flag and the decoded IQRush payload’s error field. A successful HTTP response alone does not mean the measurement succeeded. The report starter includes read_result.py, a small decoder for MCP tool result objects. It handles a JSON text result as well as structured content and refuses to turn a tool error into data.

Discover instead of guessing

Use tools/list as the runtime contract for parameter names and types. Most measurement tools accept arrays for filters and group_by. Some analytical tools instead accept a JSON-encoded string. In particular, for get_paired_contrast.filters, send the filter array encoded as a string; do not pass a native array to that argument in this edition. Keep the selected project and run in your application’s own request context. An assistant conversation does not make those IDs optional. Include them in every call that requires them. Tool annotations may prompt the host to request confirmation. The declared annotations in this edition are conservative; do not classify a tool’s business behavior solely from its readOnlyHint. The tool references describe the actual operation.

Build a reliable report loop

Retrieve project context once, choose explicit run IDs, check readiness, and make only the measurements needed for the question. Preserve warnings, filters, units, intervals, and the time of the request. Retain full payloads in an access-controlled evidence store; display a deliberate set of fields in the report. Next: Handle responses and units.