04.18.2025-tracing-for-mcp-client-server-applications.md•1.71 kB
---
description: Available in Phoenix 8.26+
---
# 04.18.2025: Tracing for MCP Client-Server Applications 🔌
{% embed url="https://storage.googleapis.com/arize-phoenix-assets/assets/images/MCP%20tracing.png" %}
We’re excited to announce a powerful capability in the [**OpenInference**](https://github.com/Arize-ai/openinference) OSS library **`openinference-instrumentation-mcp` —** seamless OTEL context propagation for MCP clients and servers.
### **What’s New?**
This release introduces automatic distributed tracing for **Anthropic’s Model Context Protocol (MCP)**. Using OpenTelemetry, you can now:
* **Propagate context** across MCP client-server boundaries
* Generate **end-to-end traces** of your AI system across services and languages
* Gain full visibility into how models access and use external context
The `openinference-instrumentation-mcp` package handles this for you by:
* Creating spans for MCP client operations
* Injecting trace context into MCP requests
* Extracting and continuing the trace context on the server
* Associating the context with OTEL spans on the server side
### **Set up**
1. Instrument both MCP client and server with OpenTelemetry.
2. Add the `openinference-instrumentation-mcp` package.
3. Spans will propagate across services, appearing as a **single connected trace** in Phoenix.
Full example usage is available: 
{% embed url="https://github.com/Arize-ai/phoenix/tree/main/tutorials/mcp/tracing_between_mcp_client_and_server" %}
### **Walkthrough Video**
{% embed url="https://youtu.be/dhK2pWQdGjk?si=J5w9a42z58w6oqjE" %}
### **Acknowledgments**
Big thanks to Adrian Cole and Anuraag Agrawal for their contributions to this feature.