mcp-stdio-proxy 0.1.15

MCP (Model Context Protocol) proxy server and CLI tool for protocol conversion and remote service access
Documentation
[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]
# MCP protocol - 使用 0.10 版本(不从 workspace 继承,因为有多版本共存)
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 }
# 执行js/ts/python代码,通过 uv/deno 命令方式执行
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