Skip to content

Proposal: MCP (Model Context Protocol) test profiles #1475

Description

@nigrosimone

MCP servers are increasingly deployed as regular HTTP services using the Streamable HTTP transport, and many are built on the same frameworks HttpArena already ranks (Express, Fastify, Hono, FastAPI, ASP.NET, …).

None of the current profiles captures what an MCP request actually costs:

  • JSON-RPC 2.0 dispatch: routing by method inside the body, id echoing, spec-defined error codes. The JSON profile serializes a payload but never dispatches on it.
  • Session state: an Mcp-Session-Id header is validated on every request.
  • SSE framing on POST responses: text/event-stream responses carrying one or more JSON-RPC messages. No current profile measures streamed response bodies.
gRPC covers binary RPC over HTTP/2. MCP would cover the JSON-RPC-over-HTTP side, which is where much of today's tool-calling traffic lives.

Proposed profiles

Profile Endpoint Response type Measures
mcp POST /mcp application/json JSON-RPC dispatch + session lookup
mcp-sse POST /mcp-sse text/event-stream Same, plus SSE framing (progress + result)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    testsAbout test design, issues with tests etc.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions