Expand description
MCP (Model Context Protocol) client for wesichain.
Connects to any MCP server via stdio transport and loads its tools into a
wesichain_agent::ToolSet.
§Quick start
ⓘ
use wesichain_agent::ToolSet;
use wesichain_mcp::bridge::ToolSetBuilderMcpExt;
let tools = ToolSet::new()
.add_mcp_server("npx", &["-y", "@modelcontextprotocol/server-filesystem", "."])
.await?
.build()?;Re-exports§
pub use bridge::load_mcp_tools;pub use bridge::McpClient;pub use bridge::McpTool;pub use bridge::ToolSetBuilderMcpExt;pub use error::McpError;pub use http::HttpMcpTransport;pub use protocol::McpResourceContent;pub use protocol::McpResourceSpec;pub use protocol::McpToolSpec;pub use protocol::SamplingMessage;pub use protocol::SamplingRequest;pub use protocol::SamplingResult;pub use stdio::StdioTransport;pub use transport::McpTransport;
Modules§
- bridge
- Bridge between MCP tools and wesichain’s
Tooltrait. - error
- MCP error types.
- http
- HTTP+SSE transport for remote MCP servers.
- protocol
- JSON-RPC 2.0 types + MCP message types (spec 2024-11-05).
- stdio
- Stdio transport — spawns a subprocess and communicates over stdin/stdout using newline-delimited JSON-RPC 2.0 messages.
- transport
- MCP transport abstraction.