[package]
edition = "2024"
rust-version = "1.85"
name = "pf_mcp_protocol"
version = "0.1.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Model Context Protocol (MCP) implementation for PromptFleet - JSON-RPC 2.0 compatible"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/promptfleet/promptfleet-agents"
resolver = "2"
[features]
client = []
default = [
"client",
"server",
"proxy",
]
proxy = []
server = []
sse-client = ["client"]
sse-server = ["server"]
[lib]
name = "mcp_protocol"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[example]]
name = "mcp_basic_server"
path = "examples/mcp_basic_server.rs"
[[example]]
name = "mcp_direct_sse_client"
path = "examples/mcp_direct_sse_client.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.log]
version = "0.4"
[dependencies.protocol_transport_core]
version = "0.1.0"
[dependencies.serde]
version = "1.0"
features = [
"derive",
"derive",
]
[dependencies.serde_json]
version = "1.0.141"
[dependencies.spin-sdk]
version = "5.2"
[dependencies.thiserror]
version = "1.0"
[dependencies.uuid]
version = "1.0"
features = [
"v4",
"v5",
"js",
"v4",
]
[dev-dependencies.axum]
version = "0.7"
[dev-dependencies.tokio]
version = "1.0"
features = [
"macros",
"rt-multi-thread",
]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls-webpki-roots",
]
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
version = "1.0"
features = [
"full",
"rt-multi-thread",
]