Cargo Features
[dependencies]
rmcp = { version = "0.15.0", default-features = false, features = ["client", "server", "macros", "elicitation", "reqwest", "reqwest-tls-no-provider", "reqwest-native-tls", "server-side-http", "transport-worker", "client-side-sse", "transport-streamable-http-client", "transport-streamable-http-client-reqwest", "transport-async-rw", "transport-io", "transport-child-process", "transport-streamable-http-server", "transport-streamable-http-server-session", "tower", "auth", "schemars", "base64"] }
- default = base64, macros, server
-
These default features are set whenever
rmcpis added withoutsomewhere in the dependency tree.default-features = false - client
-
Enables tokio-stream
Affects
handler::client,rmcp::service… - server default = transport-async-rw
-
schemars:
for auto generate schema
Affects
handler::server,rmcp::service… - macros default
-
Enables pastey and rmcp-macros
rmcp-macros:
macro
- elicitation
-
Enables url
Affects
server::ElicitationError,server::ElicitationSafe… - reqwest
-
Enables rustls-tls of reqwest ^0.12
for HTTP client
- reqwest-tls-no-provider
-
Enables rustls-tls-no-provider of reqwest ^0.12
- reqwest-native-tls
-
Enables native-tls of reqwest ^0.12
- server-side-http transport-streamable-http-server? = tower, uuid
-
Enables axum, bytes, http, http-body, http-body-util, rand ^0.9, sse-stream, and tokio-stream
axum:
for http-server transport
- transport-worker transport-streamable-http-client? transport-streamable-http-server?
-
Enables tokio-stream
Affects
transport::worker… - client-side-sse transport-streamable-http-client?
-
SSE stream parsing utilities (used by streamable HTTP client for SSE-formatted responses)
Enables http and sse-stream
Affects
common::client_side_sse… - transport-streamable-http-client transport…http-client-reqwest? = client-side-sse, transport-worker
-
Streamable HTTP client
Affects
transport::streamable_http_client… - transport-streamable-http-client-reqwest = transport-streamable-http-client
-
Enables reqwest ^0.12
- transport-async-rw server transport-child-process? transport-io? transport…http-server-session?
-
Enables io-util of tokio, codec of tokio-util
Affects
transport::async_rw… - transport-io = transport-async-rw
-
tokio:
stdin, stdout, stderr
Affects
transport::io… - transport-child-process = transport-async-rw
-
Enables process of tokio and process-wrap
for child process transport
Affects
transport::child_process… - transport-streamable-http-server = server-side-http, transport…http-server-session, transport-worker
-
Affects
common::server_side_http,streamable_http_server::tower… - transport-streamable-http-server-session transport-streamable-http-server? = transport-async-rw
-
Enables tokio-stream
Affects
transport::streamable_http_server… - tower server-side-http?
-
Enables tower-service
For tower compatibility
- auth
-
Enables oauth2, reqwest ^0.12, and url
oauth2:
oauth2 support
Affects
common::auth,transport::auth… - schemars
-
Enables schemars
Features from optional dependencies
In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- base64 default
-
Enables base64
for image encoding
- uuid server-side-http?