Straight to the source.
Call tools over the protocols they already use. HTTP, WebSocket, gRPC, or a local command — go directly from your app to your tool.
Explore the transports ↗Your tools already speak a language.
Now your Rust app speaks it, too.
Discover, search, and call tools over their native protocols.
One elegant client. A lot less glue code.
cargo add rs-utcpUtcpClientKeep your APIs. Keep your infrastructure.
Let one Rust client make the connection.
Call tools over the protocols they already use. HTTP, WebSocket, gRPC, or a local command — go directly from your app to your tool.
Explore the transports ↗Load a UTCP manual or an OpenAPI document. Find the right tool with local search, then call it through one consistent Rust interface.
Meet tool discovery ↗Explicit protocol allow-lists and configurable authentication. Choose which tools your application can discover and call.
See how it’s secured ↗From a simple REST endpoint to a real-time stream.
Pick a protocol. The Rust stays familiar.
One client, twelve transports. Load local JSON manuals with with_manual_path.The full picture ↗
Three steps to your first tool call.
Rust, Tokio, and a little curiosity.
A simple addition to your Cargo.toml.
Your client discovers the available tools.
Get a result. Get on with building.
cargo add rs-utcpSave the quick start manual and local greeting script.
The full guide includes all dependencies and setup steps.
Build something useful. Share what you learn.
Help shape the way Rust connects to tools.