# FastRMCP Wiki FastRMCP is a Rust-first Model Context Protocol (MCP) framework inspired by Python’s fastmcp, with a type-safe, macro-driven API to build servers quickly. ## Why FastRMCP - Rust-first ergonomics: `fastrmcp::prelude::*` + `#[tool]`, `#[resource]`, `#[prompt]` macros - Production-ready transports: STDIO, SSE, WebSocket (HTTP/1.1 + HTTP/2) - Batteries included: registry auto-registration, state, lifecycle hooks, middleware, subscriptions - Zero-cost abstractions: async Tokio runtime, serde-based schemas, compile-time checks - CLI scaffolding: `fastrmcp new ` with templates for stdio, SSE, WebSocket, middleware, subscriptions, complete ## Key Features - Tools, resources (with URI templates), and prompts auto-registered via inventory - Context with logging, progress notifications, client/server metadata injection - State container for typed shared data - Built-in middleware (logging, auth, rate limit) + custom middleware trait - Resource subscriptions and server-driven notifications - Web transport helpers with connectionId handling for SSE/WS clients ## Quick Links - [Getting Started](Getting-Started.md) — install, first tool/resource/prompt, run over STDIO - [Tools, Resources, Prompts](Tools-Resources-Prompts.md) — macro usage, schemas, return types - [Transports Guide](Transports-Guide.md) — STDIO, SSE, WebSocket, connectionId tips - [Middleware Cookbook](Middleware-Cookbook.md) — built-ins and custom middleware patterns - [Subscriptions & Notifications](Subscriptions.md) — subscribe/unsubscribe + server updates - [Examples](Examples.md) — walkthroughs of every example project - CLI docs: `fastrmcp-cli/README.md` in the repo - Main README: `README.md` in the repo [Back to Home](Home.md)