Skip to main content

mcp_common/
lib.rs

1//! MCP Common - Shared types and utilities for MCP proxy modules
2//!
3//! This crate provides common functionality shared across mcp-sse-proxy
4//! and mcp-streamable-proxy to avoid code duplication.
5//!
6//! # Feature Flags
7//!
8//! - `telemetry`: 基础 OpenTelemetry 支持
9//! - `otlp`: OTLP exporter 支持(用于 Jaeger 等)
10
11pub mod client_config;
12pub mod config;
13pub mod diagnostic;
14pub mod mirror;
15pub mod process_compat;
16pub mod tool_filter;
17
18#[cfg(feature = "telemetry")]
19pub mod telemetry;
20
21// Re-export main types
22pub use client_config::McpClientConfig;
23pub use config::McpServiceConfig;
24pub use process_compat::check_windows_command;
25pub use process_compat::ensure_runtime_path;
26pub use process_compat::prepare_stdio_env;
27pub use tool_filter::ToolFilter;
28
29// Re-export telemetry types when feature is enabled
30#[cfg(feature = "telemetry")]
31pub use telemetry::{TracingConfig, TracingGuard, create_otel_layer, init_tracing};