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