[package]
name = "mcp-stdio-proxy"
version = "0.1.15"
edition = "2024"
authors = ["nuwax-ai"]
description = "MCP (Model Context Protocol) proxy server and CLI tool for protocol conversion and remote service access"
license = "MIT OR Apache-2.0"
repository = "https://github.com/nuwax-ai/mcp-proxy"
keywords = ["mcp", "proxy", "protocol", "sse", "cli"]
categories = ["web-programming", "command-line-utilities", "network-programming"]
readme = "README.md"
exclude = [
"logs/",
"tmp/",
"*.log",
"target/",
"benches/",
]
[dependencies]
rmcp = { version = "0.10", features = [
"server",
"client",
"transport-sse-server",
"transport-sse-client",
"transport-streamable-http-client",
"transport-streamable-http-client-reqwest",
"transport-streamable-http-server",
"transport-child-process",
"transport-io",
"reqwest",
"transport-sse-client-reqwest"
] }
mcp-common = { version = "0.1.3", path = "../mcp-common" }
mcp-streamable-proxy = { version = "0.1.3", path = "../mcp-streamable-proxy" }
mcp-sse-proxy = { version = "0.1.3", path = "../mcp-sse-proxy" }
axum = { workspace = true }
tower = { workspace = true }
tower-http = { workspace = true }
tokio = { workspace = true, features = ["macros", "net", "rt", "rt-multi-thread", "signal", "io-util"] }
tokio-util = { workspace = true }
tracing = { workspace = true }
tracing-subscriber = { workspace = true }
tracing-appender = { workspace = true }
tracing-opentelemetry = { workspace = true }
opentelemetry = { workspace = true }
opentelemetry-jaeger = { workspace = true }
opentelemetry-semantic-conventions = { workspace = true }
opentelemetry_sdk = { workspace = true }
hostname = { workspace = true }
log = { workspace = true }
anyhow = { workspace = true }
thiserror = { workspace = true }
once_cell = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
serde_yaml = { workspace = true }
reqwest = { workspace = true }
http = { workspace = true }
clap = { workspace = true }
uuid = { workspace = true }
dashmap = { workspace = true }
arc-swap = { workspace = true }
futures = { workspace = true }
chrono = { workspace = true }
tokio-stream = { workspace = true }
backtrace = { workspace = true }
tracing-futures = { workspace = true }
rand = { workspace = true }
run_code_rmcp = { workspace = true }
urlencoding = { workspace = true }
base64 = { workspace = true }
async-trait.workspace = true
[[bin]]
name = "mcp-proxy"
path = "src/main.rs"
[[bin]]
name = "test-mcp-server"
path = "src/client/test_mcp_server.rs"
[dev-dependencies]
criterion = "0.6"
env_logger = "0.11"
futures-util = "0.3.31"
[[bench]]
name = "run_code_bench"
harness = false
[[bench]]
name = "run_code_advanced_bench"
harness = false