Expand description
§mcp_daemon
mcp_daemon is a comprehensive implementation of the Model Context Protocol (MCP) in Rust.
It provides a robust, async-first approach to building MCP-compatible servers and clients.
§Features
- Full implementation of the MCP specification
- Async support using Tokio
- Multiple transport layers: Stdio, In-Memory, SSE, WebSockets
- Comprehensive error handling and recovery mechanisms
- Support for tools, prompts, resources, completion, sampling, and roots
- Integration with various LLM providers through bridges
§Main Components
client: MCP client implementationserver: MCP server implementationtransport: Various transport layer implementationsprotocol: Core MCP protocol definitionstypes: Common types used throughout the cratecompletable: Implementations for completable itemsregistry: Registry for MCP componentssse: Server-Sent Events implementation
For more detailed information on each component, please refer to their respective module documentation.
Re-exports§
pub use sse::http_server::run_http_server;pub use client::Client;pub use server::Server;
Modules§
- client
- Client implementation for interacting with MCP servers
- completable
- Trait and implementations for completable items in MCP
- protocol
- Core protocol definitions and message types for MCP
- registry
- Registry for managing MCP components and their relationships
- server
- Server implementation for handling MCP requests and responses
- sse
- Server-Sent Events (SSE) implementation for real-time communication
- transport
- Transport layer implementations for different communication protocols Transport layer for the MCP protocol handles the serialization and deserialization of message handles send and receive of messages defines transport layer types
- types
- Common types and structures used throughout the crate