[package]
name = "mcp-core"
version = "0.0.81"
edition = "2021"
description = "A Rust library implementing the Modern Context Protocol (MCP)"
license = "MIT"
repository = "https://github.com/stevohuncho/mcp-core"

[dependencies]
async-trait = "0.1.83"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tokio = { version = "1.41.1", features = ["full"] }
thiserror = "2.0.3"
tracing = "0.1.40"
tokio-util = "0.7.12"
jsonrpc-core = "18.0.0"
warp = "0.3.7"
jsonrpc-derive = "18.0.0"
futures = "0.3.31"
uuid = { version = "1.11.0", features = ["v4"] }
url = "2.5.4"
base64 = "0.22.1"
async-stream = "0.3.6"
mime_guess = "2.0.5"
tracing-subscriber = { version = "0.3.18", features = ["env-filter"] }
config = "0.15.7"
clap = { version = "4.5.21", features = ["derive"] }
reqwest = { version = "0.12.9", features = ["json"] }
reqwest-eventsource = "0.6.0"
mime = "0.3.17"
tracing-core = "0.1.33"
async-recursion = "1.1.1"

[[bin]]
name = "server"
path = "bin/server.rs"

[[bin]]
name = "client"
path = "bin/client.rs"

[lib]
name = "mcp_core"
path = "src/lib.rs"

[dev-dependencies]
tempfile = "3.14.0"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
tokio = { version = "1.0", features = ["full", "test-util"] }
