mcpobsRequest access

See which tool failed.
Not just that one did.

Purpose-built tracing for MCP servers: classified failures, live progress on long-running tools, and every downstream call in context.

trace_id 7f3a1c…e92b1 failing span
tools/call search_docs
db.query postgres
tools/call fetch_ticket
http.request api.internal
tools/call update_status
error.typetool_error

Built on the same pipeline you already trust

OpenTelemetryKafkaClickHousePythonTypeScriptDocker

Failures, classified. Not counted.

A generic error rate collapses five different problems into one number. Each of these has a different owner and a different fix.

tool_error

Everything your tool code raised or returned as isError.

unknown_tool

The SDK rejected the call before your handler ran.

invalid_arguments

Schema validation failed against the tool's input.

protocol_error

An MCP-level failure below any single tool.

401 / 403

Auth flow states from the spec, never counted as failures.

Watch it while it runs.

A span exports when it ends, so a ten-minute tool stays silent for ten minutes unless progress reports its own.

tools/call reindex_workspace - running02:41
1,842 / 2,875 documents64%

Your database calls, in context.

One opt-in call finds whatever OpenTelemetry instrumentors you already installed and reports what it touched.

db

Redis, Postgres, MySQL, Mongo, SQLite

System, operation, table, and statement (redacted before storage).

http

httpx, requests, aiohttp

Method, status, host, and body/headers with instrument_httpx().

llm

OpenAI, Anthropic, Bedrock

System, model, and input/output token counts.

messaging

Kafka, RabbitMQ, SQS

Stored and rendered generically, same as everything else.

One line. That's the whole integration.

No middleware to wire, no config file to write first.

  • Failure text is read once, reduced to an enum, then discarded.
  • Tool arguments and results stay off by default.
  • Works the same whether your server runs over stdio or HTTP.
# pip install mcpobs

from mcpobs import instrument

instrument(mcp)  # that is the whole integration

Currently invite-only, while we work directly with early teams.

Tell us about your MCP server and we'll set up your first organisation.

Request access