🚀. Socket Launch Week Day 3:Socket Firewall Now Blocks Malicious VS Code and Open VSX Extensions.Learn more
Sign In

rmcp

Package Overview
Dependencies
Maintainers
1
Versions
46
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rmcp

Source
crates.io
Version
1.4.0
Version published
Weekly downloads
709K
-1.85%
Maintainers
1
Weekly downloads
 
Created
Source
.rustdoc-hidden { display: none; }

rmcp

Crates.io Documentation

The official Rust SDK for the Model Context Protocol. Build MCP servers that expose tools, resources, and prompts to AI assistants — or build clients that connect to them.

For getting started, usage guides, and full MCP feature documentation (resources, prompts, sampling, roots, logging, completions, subscriptions, etc.), see the main README.

Feature Flags

FeatureDescriptionDefault
serverServer functionality and the tool system
clientClient functionality
macros#[tool] / #[prompt] macros (re-exports rmcp-macros)
schemarsJSON Schema generation for tool definitions
authOAuth 2.0 authentication support
elicitationElicitation support

Transport features

FeatureDescription
transport-ioServer-side stdio transport
transport-child-processClient-side stdio transport (spawns a child process)
transport-async-rwGeneric async read/write transport
transport-streamable-http-clientStreamable HTTP client (transport-agnostic)
transport-streamable-http-client-reqwestStreamable HTTP client with default reqwest backend
transport-streamable-http-serverStreamable HTTP server transport

TLS backend options (for HTTP transports)

FeatureDescription
reqwestUses rustls — pure Rust TLS (recommended default)
reqwest-native-tlsUses platform-native TLS (OpenSSL / Secure Transport / SChannel)
reqwest-tls-no-providerUses rustls without a default crypto provider (bring your own)

Transports

The transport layer is pluggable. Two built-in pairs cover the most common cases:

ClientServer
stdioTokioChildProcessstdio
Streamable HTTPStreamableHttpClientTransportStreamableHttpService

Any type that implements the Transport trait can be used. The IntoTransport helper trait provides automatic conversions from:

  • (Sink, Stream) or a combined Sink + Stream
  • (AsyncRead, AsyncWrite) or a combined AsyncRead + AsyncWrite
  • A Worker implementation
  • A Transport implementation directly

License

This project is licensed under the terms specified in the repository's LICENSE file.

FAQs

Package last updated on 10 Apr 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts