colmugx/mcp/client does not have a README file
pub(all) struct ListPromptsResult {
prompts : Array[PromptDefinition]
next_cursor : String?
} derive(Eq, Debug)pub(all) struct ListResourceTemplatesResult {
resource_templates : Array[ResourceTemplate]
next_cursor : String?
} derive(Eq, Debug)pub(all) struct ListResourcesResult {
resources : Array[ResourceDefinition]
next_cursor : String?
} derive(Eq, Debug)pub(all) struct ListToolsResult {
tools : Array[ToolDefinition]
next_cursor : String?
} derive(Eq, Debug)pub struct MCPClient {
client_name : String
client_version : String
capabilities : ClientCapabilities
transport : AnyTransport
id_counter : RequestIdCounter
server_capabilities : ServerCapabilities?
server_info : ServerInfo?
notification_handlers : NotificationHandlers
subscription_handlers : Map[String, (Json) -> Unit]
sampling_handler : (Json) -> Result[CreateMessageResult, MCPError]?
roots_handler : () -> Result[Array[Root], MCPError]?
elicitation_handler : (Json) -> Result[ElicitationResult, MCPError]?
response_map : Map[Int, Queue[String]]
event_loop_started : Bool
legacy_mode : Bool
backend : ClientBackend
}async fn MCPClient::call_tool(self : MCPClient, name : String, arguments? : String) -> Result[CallToolResult, MCPError]async fn MCPClient::complete(self : MCPClient, ref_type~ : String, ref_name~ : String, argument_name~ : String, argument_value~ : String) -> Result[CompletionResult, MCPError]async fn MCPClient::get_prompt(self : MCPClient, name : String, arguments? : String) -> Result[GetPromptResult, MCPError]async fn MCPClient::list_prompts(self : MCPClient, cursor? : String) -> Result[ListPromptsResult, MCPError]async fn MCPClient::list_resource_templates(self : MCPClient, cursor? : String) -> Result[ListResourceTemplatesResult, MCPError]async fn MCPClient::list_resources(self : MCPClient, cursor? : String) -> Result[ListResourcesResult, MCPError]async fn MCPClient::list_tools(self : MCPClient, cursor? : String) -> Result[ListToolsResult, MCPError]async fn MCPClient::read_resource(self : MCPClient, uri : String) -> Result[ReadResourceResult, MCPError]async fn MCPHost::call_tool(self : MCPHost, qualified_name : String, arguments? : String) -> Result[CallToolResult, MCPError]pub(all) struct NotificationHandlers {
on_tools_changed : () -> Unit?
on_resources_changed : () -> Unit?
on_prompts_changed : () -> Unit?
on_progress : (ProgressNotification) -> Unit?
on_cancelled : (CancelledNotification) -> Unit?
on_resource_updated : (ResourceUpdatedNotification) -> Unit?
on_message : (String, Json?) -> Unit?
}Type-safe MCP SDK in MoonBit with server/client support and dual transport (STDIO/HTTP)
Dependencies