$ rmcp

v1.4.0

Rust SDK for Model Context Protocol

Downloads: 7.3M
Recent: 4.9M
Versions: 43
Updated: April 10, 2026

Latest Update Summary

Crate

Name: rmcp New version: 1.0.0-alpha Release date: 2026-03-03T16:27:29.826083Z

Crate readme

Short description An official Rust Model Context Protocol SDK implementation with tokio async runtime.

Long description This repository contains the following crates: rmcp, the core crate providing the RMCP protocol implementation, and rmcp-macros, a procedural macro crate for generating RMCP tool implementations. It allows servers to expose data identified by URIs, handle typed prompts, and supports subscriptions for resource updates.

Features • tokio async runtime • server feature flag • provides protocol implementation • supports resource subscriptions

Code Examples Import the crate

 rmcp = { version = "0.16.0", features = ["server"] }
// or dev channel
rmcp = { git = "https://github.com/modelcontextprotocol/rust-sdk", branch = "main" }

Start a client

 use rmcp::{ServiceExt, transport::{TokioChildProcess, ConfigureCommandExt}};
use tokio::process::Command;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = ().serve(TokioChildProcess::new(Command::new("npx").configure(|cmd| {
        cmd.arg("-y").arg("@modelcontextprotocol/server-everything");
    }))?).await?;
    Ok(())
}

Build a transport

 use tokio::io::{stdin, stdout};
let transport = (stdin(), stdout());

Send a notification

 context.peer.notify_resource_list_changed().await?;

Set the server's log level

 client.set_level(SetLevelRequestParams {
    level: LoggingLevel::Warning,
    meta: None,
}).await?;

Linkshttps://crates.io/crates/rmcphttps://docs.rs/rmcp/latest/rmcphttps://github.com/modelcontextprotocol/rust-sdk/discussions/716https://modelcontextprotocol.io/specification/2025-11-25

https://docs.rs/rmcp https://api.github.com/repos/modelcontextprotocol/rust-sdk/releases/292622427

Release info

Release version:

Release description

Code Examples

Minor update: 1.3.0 → 1.4.0

$ DOWNLOADS TREND

3.6M7.3M

$ VERSION HISTORY

v1.4.0April 10, 2026
v1.3.0March 26, 2026
v1.2.0March 11, 2026
v1.1.1March 9, 2026
v1.1.0March 4, 2026
v1.0.0March 3, 2026
v0.17.0March 3, 2026
v0.17.0February 27, 2026
v0.16.0February 17, 2026
v0.15.0February 10, 2026

$ LINKS

$ INSTALL

cargo add rmcp

Or add to Cargo.toml: rmcp = "1.4.0"