Rust SDK MCP Server
Rust development for MCP servers with full async protocol implementation.
Data last scanned today · Reviewed today
Overview
This SDK provides the foundational crates for building Model Context Protocol servers and clients in Rust. It includes the core rmcp protocol implementation and a procedural macro crate to streamline tool definition, leveraging the tokio async runtime for performance.
Our verdict
With a security score of 53/100, this project is classified as high-risk. While it benefits from a large community of 100 contributors and zero direct dependencies, the license is currently marked as NOASSERTION and critical security aspects like OAuth and read-only mode have not yet been editorially reviewed. It is suitable for developers building Rust-based MCP implementations who are comfortable managing the security implications of third-party, community-maintained code.
- Zero direct dependencies reduce the supply chain surface area.
- Supports the latest MCP stable specifications as of 2026-07-28.
- Includes procedural macros for automated tool implementation.
- Maintained by an active community with 3,758 GitHub stars.
- The project license status is currently set to NOASSERTION.
- Crucial features like OAuth support remain unreviewed.
- The codebase has not yet undergone an editorial security review.
Tools
| Tool | Description | Risk |
|---|---|---|
| add | Add two numbers | low |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf | ||||
| ChatGPT |
Frequently asked questions
›Which MCP specification versions are supported?
This SDK implements the stable MCP 2026-07-28 specification and maintains full compatibility with the 2025-11-25 release and earlier versions.
›What runtime and dependencies are required?
The SDK requires the tokio async runtime and serde for serialization. For JSON Schema 2020-12 generation, the schemars crate is also used.
›How do I upgrade from previous versions?
If you are migrating to version 3.x, you should consult the migration guide provided in the repository for details on breaking changes and upgrade instructions.
›Can I explicitly choose how a client initializes?
Yes, you can use ClientLifecycleMode to select between the legacy initialize lifecycle, a server/discover lifecycle, or an auto-probing mode that falls back to legacy versions.
›What components are included in the SDK?
The repository provides two primary crates: rmcp for the core protocol implementation and rmcp-macros for generating procedural macro-based tool implementations.
Changelog
- Fixrmcp-v3.1.0
2026-07-31
- Newrmcp-macros-v3.1.0
2026-07-31
- Fixrmcp-v3.0.1
2026-07-29
- Improvedrmcp-macros-v3.0.1
2026-07-29
- Breakingrmcp-v3.0.0-beta.5
2026-07-28
- Fixrmcp-v3.0.0-beta.4
2026-07-28
- Breakingrmcp-v3.0.0
2026-07-28
- Improvedrmcp-macros-v3.0.0-beta.5
2026-07-28
- Breakingrmcp-macros-v3.0.0-beta.4
2026-07-28
- Improvedrmcp-macros-v3.0.0
2026-07-28
Badge
Maintain this server? Add the live badge to your README.