Fast Python REST framework with a Rust core, built-in streams, and agent-native interfaces
Oxbrook is a Rust web framework benchmark suite, not an MCP server. The 14 'tools' are HTTP endpoints from example Flask/FastAPI applications used for performance testing (CPU-bound, I/O-bound, streaming, WebSocket). None are registered as MCP tools with schemas or descriptions. Tool definitions are inferred from Python benchmark code (bench/*.py), not from explicit MCP tool registration. Descriptions are generic and lack LLM-optimization. Input schemas are minimal or absent. No error handling guidance. This is a framework/benchmark, not a production MCP server.
Hello world endpoint returning a greeting message
CPU-bound handler that performs 20000 iterations of computation
CPU-bound handler that busy-waits for OXBROOK_SLOW_MS milliseconds
Returns the process CPU seconds
Fast endpoint for imbalance testing
I/O-bound handler that sleeps for OXBROOK_SLOW_MS milliseconds
Search with query parameter and optional limit
Server-Sent Events endpoint for streaming tick events
Not an MCP server. Oxbrook is a Rust web framework with HTTP benchmark endpoints, not a Model Context Protocol implementation. No MCP tool registration, no MCP protocol compliance, no MCP transport.
10 of 14 tools have zero input schema. Endpoints like GET /, GET /cpu, GET /fast, GET /io, GET /sse, GET /cpu (streams), GET /subscribers, WebSocket /echo, GET /work expose no structured input definitions.
Descriptions are generic and under 50 characters for most tools (e.g., 'CPU-bound handler...', 'Fast endpoint...', 'Echo WebSocket endpoint...'). LLMs cannot distinguish when to use similar tools or understand dependencies.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 19 | 2026-07-28+ | v2 |
Returns the count of current topic subscribers
Retrieve user information by user ID
Handler that performs configurable CPU work based on OXBROOK_SWEEP_ITERS
Publish n events to the ticks topic with optional payload size
Create a new user with name, age, and email
Echo WebSocket endpoint that reflects received messages back to sender
No error handling guidance. Tools do not document what happens on failure, whether errors are retryable, or what the LLM should do next.
Tool names do not follow verb_noun convention. Names like 'GET /', 'GET /cpu', 'WebSocket /echo' are HTTP routes, not action-oriented tool names. LLMs cannot infer intent from route paths.